You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java如何基于用户输入创建LinkedList 已有输入代码求实现指引

实现思路

  • 入门阶段直接在现有main方法内创建LinkedList即可,不需要额外开辟作用域,等后续熟悉方法封装、面向对象逻辑后再拆分功能模块也不迟。
  • 你当前已经拿到3条用户输入的字符串,可以直接存入LinkedList<String>完成基础的列表创建需求;如果后续需要单独调用设备名称、成本、收益三个属性,再拆分输入内容封装为自定义类存入列表即可。

基础实现代码(直接存输入字符串)

直接在你现有代码的打印输出部分之前补充LinkedList创建逻辑即可,补全后的完整代码如下:

import java.util.LinkedList;
import java.util.Scanner;

public class Main {
  public static void main (String[]args) {
    Scanner scan = new Scanner (System.in);

    System.out.println ("Enter first name of equipment, cost and gain:");
    String equipment1 = scan.nextLine ();

    System.out.println ("Enter second name of equipment, cost and gain:");
    String equipment2 = scan.nextLine ();

    System.out.println ("Enter third name of equipment, cost and gain:");
    String equipment3 = scan.nextLine ();

    // 新增LinkedList创建逻辑
    LinkedList<String> equipmentList = new LinkedList<>();
    equipmentList.add(equipment1);
    equipmentList.add(equipment2);
    equipmentList.add(equipment3);

    System.out.println ("You have entered:");
    // 也可以直接遍历LinkedList打印,不用单独打印三个变量
    for (String equipment : equipmentList) {
        System.out.println(equipment);
    }
    scan.close();
  }
}

进阶实现(拆分字段存自定义对象)

如果你的输入是用空格分隔的格式,比如电钻 150 300,可以拆分后存入自定义类,更方便后续逻辑处理:

  1. 首先在Main类同级定义Equipment实体类
class Equipment {
    String name;
    int cost;
    int gain;

    public Equipment(String name, int cost, int gain) {
        this.name = name;
        this.cost = cost;
        this.gain = gain;
    }

    // 重写toString方法方便打印
    @Override
    public String toString() {
        return name + " 成本:" + cost + " 收益:" + gain;
    }
}
  1. 改造main方法里的列表添加逻辑
// 把原来的String类型LinkedList换成Equipment类型
LinkedList<Equipment> equipmentList = new LinkedList<>();
// 拆分每一条输入
String[] info1 = equipment1.split(" ");
equipmentList.add(new Equipment(info1[0], Integer.parseInt(info1[1]), Integer.parseInt(info1[2])));
String[] info2 = equipment2.split(" ");
equipmentList.add(new Equipment(info2[0], Integer.parseInt(info2[1]), Integer.parseInt(info2[2])));
String[] info3 = equipment3.split(" ");
equipmentList.add(new Equipment(info3[0], Integer.parseInt(info3[1]), Integer.parseInt(info3[2])));

遍历打印的逻辑不需要修改,重写的toString方法会自动按指定格式输出内容。

内容的提问来源于stack exchange,提问作者Stephanie R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 17:06:03