java - 有没有办法将 ArrayList 的特定元素复制到另一个空/不同的 ArrayList 中?
问题描述
-EDITED-我正在学习Java考试,在从文件中读取信息后,我必须创建N个学生对象。并从键盘创建活动列表。对于每个学生,我必须检查所有活动,如果我找到具有相同学生姓氏的活动,我必须复制学生对象。
This are the class that I have created.
public class Student{
**String Surname;**
int Age;
ArrayList<Activity> list;
}
public class Activity{
**String Surname;**
String ActName;
int hour;
}
假设从文件中读取了 2 个学生。
学生 1罗西,21 岁
学生 2 福尔摩斯,25
并假设我已经进入了 3 个活动
罗西数学 10 小时
福尔摩斯英语 20小时
福尔摩斯故事 12 小时
复制相应活动后我的最终输出:
Student1 Rossi,21 岁,{数学 10 小时}
Student2 Holmens,25 岁,{英语 20 小时,故事 12 小时}
--- 编辑 --- 我找到了绕过问题的方法,我读取文件检查姓氏是否与我的对象相同,如果为 true,我将对象添加到列表中,如果为 false,则继续读取文件。没有理由保存在列表中并从中提取。无论如何感谢您的回答
解决方案
有没有办法将 ArrayList 的特定元素复制到另一个空/不同的 ArrayList 中?
您可以通过迭代列表并测试每个元素来找到列表的元素;例如
for (ElementType element: list) { if (/* some test on 'element' */) { ... } }
要测试两个字符串值是否相等,请使用
equals
方法;例如if (str1.equals(str2)) { ... }
要将元素添加到列表中,请使用
add
方法;例如list.add(element);
这不是复制对象,但如果您阅读问题,可能不会要求您将对象复制到列表中。
推荐阅读
- c# - ServiceStack: Showing both auth and authenticate paths
- r - 在 Centos 中为 Amazon EC2 安排 R Cron
- git - 带有并发更改的 Git pull --mirror
- powershell - Powershell running command after script
- function - Azure Functions v2 引发异常 System.AccessViolationException
- java - Vertx - InfluxDB metrics keeping connection open
- r - Delete a text in a row of a column if it doesn't start with date in R
- windows - Python 中 Google App Engine 的 dev_appserver.py 中出现 EOFError 错误
- c# - 在文本文件中搜索一个单词,然后打印它存在的行
- python - Spyder 2 编辑器中模块的语法亮点