java - 将项目从类变量添加到列表
问题描述
我创建了一个名为 Test 的类(名称和姓氏变量)加上 getter 和 setter,然后我创建了一个带有 Test 类型的 List。我使用 set 方法设置变量值,然后尝试将klass.setName(nminput)
和添加klass.setSurname(surnminput);
到列表中,但即使使用循环也只添加一个值。无论如何要从类变量中将项目添加到列表中吗?
Scanner input = new Scanner(System.in);
Test klass = new Test("name", "surname");
List < Test > list = new ArrayList < > ();
for (int i = 0; i < 3; i++) {
String nminput = input.next();
String surnminput = input.next();
klass.setName(nminput);
klass.setSurname(surnminput);
list.add(klass);
i++;
}
System.out.println(list);
解决方案
您不想一次又一次地更改同一个 Test 对象(称为 Klass)的值,而是希望在循环中创建多个 Test 对象。
Scanner input = new Scanner(System.in);
List<Test> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
String nminput = input.next();
String surnminput = input.next();
Test klass = new Test(nminput, surnminput);
list.add(klass);
i++;
}
System.out.println(list);
推荐阅读
- javascript - 将 HTML 输出或 span 标签内的数据发送到 Google 表格
- css - 如何更改 sass 输出目录?
- reactjs - 如何关闭 React.js PWA 以应用更新?
- c# - 如何从组合框中永久删除文本选择突出显示?
- javascript - 如何在 FlatList ReactNative/React 中显示状态?
- asp.net - 我想通过更改选项卡来计算两个日期之间的差异
- azure-devops - Chocolatey 启动在 Azure Pipelines 上需要不可预测的时间(有时是几分钟)
- python - 如何从python中的字符串中删除文件夹路径
- kubernetes - 在 kubernetes 中重新部署具有 CrashLoopBackOff 状态的 statefulset
- javascript - Laravel,javascript添加行表类选择不起作用