Java 调用长度和列表中列表的特定项
请查看我要描述的场景的图像 我想在列表中有一个列表,并知道该列表(内部)的大小以及如何从该列表中调用特定数据。 --还请包括如何将Java 调用长度和列表中列表的特定项,java,arrays,list,Java,Arrays,List,请查看我要描述的场景的图像 我想在列表中有一个列表,并知道该列表(内部)的大小以及如何从该列表中调用特定数据。 --还请包括如何将hobbyList添加到candidateList 假设我想为第二个候选对象调用hobbyList的大小,类似于候选列表(1).hobbyList.length()?或者.size() 如果我想说第二个候选人的第三个爱好的价值呢 候选名单(1)和霍布斯名单(2) 我不知道我是否已经清楚我想要什么,所以请不要犹豫问我 谢谢!:) 我不确定我是否完全理解你的问题 假设你
hobbyList
添加到candidateList
假设我想为第二个候选对象调用hobbyList的大小,类似于候选列表(1).hobbyList.length()
?或者.size()
如果我想说第二个候选人的第三个爱好的价值呢
候选名单(1)和霍布斯名单(2)
我不知道我是否已经清楚我想要什么,所以请不要犹豫问我
谢谢!:) 我不确定我是否完全理解你的问题 假设你有一个班级候选人和一个班级爱好:
public class Candidate {
public final List<Hobby> hobbyList = new ArrayList<>();
...
}
public class Hobby {
...
}
第二名候选人的兴趣列表中的第三个兴趣是:
candidateList.get(1).hobbyList.get(2)
要向第二个候选人添加爱好,您可以执行以下操作:
candidateList.get(1).hobbyList.add(hobby);
现在,我喜欢封装类的字段,至少在可以修改字段时是这样,因此我将hobbyList设置为私有,并添加一些方法:
public class Candidate {
private final List<Hobby> hobbyList = new ArrayList<>();
public int getHobbyCount() {
return hobbyList.size();
}
public Hobby getHobby(int i) {
return hobbyList.get(i);
}
public List<Hobby> getHobbies() {
return new ArrayList<>(hobbyList);
}
public void addHobby(Hobby hobby) {
hobbyList.add(hobby);
}
public void removeHobby(Hobby hobby) {
hobbyList.remove(hobby);
}
public void removeAllHobbies() {
hobbyList.clear();
}
...
}
等等。我不确定我是否完全理解你的问题 假设你有一个班级候选人和一个班级爱好:
public class Candidate {
public final List<Hobby> hobbyList = new ArrayList<>();
...
}
public class Hobby {
...
}
第二名候选人的兴趣列表中的第三个兴趣是:
candidateList.get(1).hobbyList.get(2)
要向第二个候选人添加爱好,您可以执行以下操作:
candidateList.get(1).hobbyList.add(hobby);
现在,我喜欢封装类的字段,至少在可以修改字段时是这样,因此我将hobbyList设置为私有,并添加一些方法:
public class Candidate {
private final List<Hobby> hobbyList = new ArrayList<>();
public int getHobbyCount() {
return hobbyList.size();
}
public Hobby getHobby(int i) {
return hobbyList.get(i);
}
public List<Hobby> getHobbies() {
return new ArrayList<>(hobbyList);
}
public void addHobby(Hobby hobby) {
hobbyList.add(hobby);
}
public void removeHobby(Hobby hobby) {
hobbyList.remove(hobby);
}
public void removeAllHobbies() {
hobbyList.clear();
}
...
}
等等。爱好课程
public class Hobby {
private int id;
private String hobby;
public Hobby(int id, String hobby) {
this.id = id;
this.hobby = hobby;
}
// Getters and setters
}
import java.util.List;
public class Candidate {
private int id;
private String candidateName;
private List<Hobby> hobbies;
public Candidate(int id, String candidateName, List<Hobby> hobbies) {
this.id = id;
this.candidateName = candidateName;
this.hobbies = hobbies;
}
// Getters and setters
}
候选人班级
public class Hobby {
private int id;
private String hobby;
public Hobby(int id, String hobby) {
this.id = id;
this.hobby = hobby;
}
// Getters and setters
}
import java.util.List;
public class Candidate {
private int id;
private String candidateName;
private List<Hobby> hobbies;
public Candidate(int id, String candidateName, List<Hobby> hobbies) {
this.id = id;
this.candidateName = candidateName;
this.hobbies = hobbies;
}
// Getters and setters
}
import java.util.List;
公开课候选人{
私有int-id;
私有字符串候选名称;
私人爱好清单;
公共候选人(int-id、String-candidateName、列出爱好){
this.id=id;
this.candidateName=candidateName;
这个。爱好=爱好;
}
//接球手和接球手
}
MainClassDemo具有main方法
import java.util.ArrayList;
import java.util.List;
public class MainClassDemo {
public static void main(String[] args) {
Hobby c1Hb1 = new Hobby(1, "Cricket");
Hobby c1Hb2 = new Hobby(2, "Hockey");
Hobby c1Hb3 = new Hobby(3, "Football");
List<Hobby> hobbies1 = new ArrayList<Hobby>();
hobbies1.add(c1Hb1);
hobbies1.add(c1Hb2);
hobbies1.add(c1Hb3);
Candidate candidate1 = new Candidate(1, "Ankit", hobbies1);
Hobby c2Hb1 = new Hobby(4, "FB");
Hobby c2Hb2 = new Hobby(5, "TW");
Hobby c2Hb3 = new Hobby(6, "INSTA");
Hobby c2Hb4 = new Hobby(6, "Pininterest");
Hobby c2Hb5 = new Hobby(6, "Quara");
List<Hobby> hobbies2 = new ArrayList<Hobby>();
hobbies2.add(c2Hb1);
hobbies2.add(c2Hb2);
hobbies2.add(c2Hb3);
hobbies2.add(c2Hb4);
hobbies2.add(c2Hb5);
Candidate candidate2 = new Candidate(2, "Bhumi", hobbies2);
List<Candidate> candidateList = new ArrayList<Candidate>();
candidateList.add(candidate1);
candidateList.add(candidate2);
System.out.println("No of Candidates:->" + candidateList.size());
System.out.println("Hobby list size for the 1st Candidate:->" + candidateList.get(0).getHobbies().size());
System.out.println("Hobby list size for the 2nd Candidate:->" + candidateList.get(1).getHobbies().size());
System.out.println("1st Hobby of 1st Candidate:->" + candidateList.get(0).getHobbies().get(0).getHobby());
System.out.println("3rd Hobby of 2nd Candidate:->" + candidateList.get(1).getHobbies().get(2).getHobby());
}
}
import java.util.ArrayList;
导入java.util.List;
公共类MainClassDemo{
公共静态void main(字符串[]args){
嗜好c1Hb1=新嗜好(1,“板球”);
嗜好c1Hb2=新嗜好(2,“曲棍球”);
嗜好c1Hb3=新嗜好(3,“足球”);
List hobbies1=新建ArrayList();
业余爱好1.增加(c1Hb1);
业余爱好1.增加(c1Hb2);
爱好1.添加(c1Hb3);
候选人候选人1=新候选人(1,“安基特”,霍布斯1);
嗜好c2Hb1=新嗜好(4,“FB”);
嗜好c2Hb2=新嗜好(5,“TW”);
嗜好c2Hb3=新嗜好(6,“INSTA”);
嗜好c2Hb4=新嗜好(6,“兴趣”);
嗜好c2Hb5=新嗜好(6,“夸拉”);
List hobbies2=新建ArrayList();
业余爱好2.增加(c2Hb1);
业余爱好2.增加(c2Hb2);
业余爱好2.增加(c2Hb3);
业余爱好2.增加(c2Hb4);
业余爱好2.增加(c2Hb5);
候选人候选人2=新候选人(2,“普密斯”,霍布斯2);
List candidateList=新建ArrayList();
候选名单。添加(候选名单1);
候选名单。添加(候选名单2);
System.out.println(“候选数量:->”+candidateList.size());
System.out.println(“第一个候选人的爱好列表大小:->”+candidateList.get(0.getHobiods().size());
System.out.println(“第二个候选人的爱好列表大小:->”+candidateList.get(1.getHabiods().size());
System.out.println(“第一个候选人的第一个爱好:->”+candidateList.get(0.getHobiods().get(0.getHobiody());
System.out.println(“第二个候选人的第三个爱好:->”+candidateList.get(1.getHobiods().get(2.getHobiody());
}
}
输出
候选人数:->2人
第一个候选人的爱好列表大小:->3第二名候选人的爱好列表大小:->5
第一名候选人的第一个爱好:->板球
第二名候选人的第三个爱好:->INSTA爱好课程
public class Hobby {
private int id;
private String hobby;
public Hobby(int id, String hobby) {
this.id = id;
this.hobby = hobby;
}
// Getters and setters
}
import java.util.List;
public class Candidate {
private int id;
private String candidateName;
private List<Hobby> hobbies;
public Candidate(int id, String candidateName, List<Hobby> hobbies) {
this.id = id;
this.candidateName = candidateName;
this.hobbies = hobbies;
}
// Getters and setters
}
候选人班级
public class Hobby {
private int id;
private String hobby;
public Hobby(int id, String hobby) {
this.id = id;
this.hobby = hobby;
}
// Getters and setters
}
import java.util.List;
public class Candidate {
private int id;
private String candidateName;
private List<Hobby> hobbies;
public Candidate(int id, String candidateName, List<Hobby> hobbies) {
this.id = id;
this.candidateName = candidateName;
this.hobbies = hobbies;
}
// Getters and setters
}
import java.util.List;
公开课候选人{
私有int-id;
私有字符串候选名称;
私人爱好清单;
公共候选人(int-id、String-candidateName、列出爱好){
this.id=id;
this.candidateName=candidateName;
这个。爱好=爱好;
}
//接球手和接球手
}
MainClassDemo具有main方法
import java.util.ArrayList;
import java.util.List;
public class MainClassDemo {
public static void main(String[] args) {
Hobby c1Hb1 = new Hobby(1, "Cricket");
Hobby c1Hb2 = new Hobby(2, "Hockey");
Hobby c1Hb3 = new Hobby(3, "Football");
List<Hobby> hobbies1 = new ArrayList<Hobby>();
hobbies1.add(c1Hb1);
hobbies1.add(c1Hb2);
hobbies1.add(c1Hb3);
Candidate candidate1 = new Candidate(1, "Ankit", hobbies1);
Hobby c2Hb1 = new Hobby(4, "FB");
Hobby c2Hb2 = new Hobby(5, "TW");
Hobby c2Hb3 = new Hobby(6, "INSTA");
Hobby c2Hb4 = new Hobby(6, "Pininterest");
Hobby c2Hb5 = new Hobby(6, "Quara");
List<Hobby> hobbies2 = new ArrayList<Hobby>();
hobbies2.add(c2Hb1);
hobbies2.add(c2Hb2);
hobbies2.add(c2Hb3);
hobbies2.add(c2Hb4);
hobbies2.add(c2Hb5);
Candidate candidate2 = new Candidate(2, "Bhumi", hobbies2);
List<Candidate> candidateList = new ArrayList<Candidate>();
candidateList.add(candidate1);
candidateList.add(candidate2);
System.out.println("No of Candidates:->" + candidateList.size());
System.out.println("Hobby list size for the 1st Candidate:->" + candidateList.get(0).getHobbies().size());
System.out.println("Hobby list size for the 2nd Candidate:->" + candidateList.get(1).getHobbies().size());
System.out.println("1st Hobby of 1st Candidate:->" + candidateList.get(0).getHobbies().get(0).getHobby());
System.out.println("3rd Hobby of 2nd Candidate:->" + candidateList.get(1).getHobbies().get(2).getHobby());
}
}
import java.util.ArrayList;
导入java.util.List;
公共类MainClassDemo{
公共静态void main(字符串[]args){
嗜好c1Hb1=新嗜好(1,“板球”);
嗜好c1Hb2=新嗜好(2,“曲棍球”);
嗜好c1Hb3=新嗜好(3,“足球”);
List hobbies1=新建ArrayList();
业余爱好1.增加(c1Hb1);
业余爱好1.增加(c1Hb2);
爱好1.添加(c1Hb3);
候选人候选人1=新候选人(1,“安基特”,霍布斯1);
嗜好c2Hb1=新嗜好(4,“FB”);
嗜好c2Hb2=新嗜好(5,“TW”);
嗜好c2Hb3=新嗜好(6,“INSTA”);
嗜好c2Hb4=新嗜好(6,“兴趣”);
嗜好c2Hb5=新嗜好(6,“夸拉”);
List hobbies2=新建ArrayList();
业余爱好2.增加(c2Hb1);
业余爱好2.增加(c2Hb2);
业余爱好2.增加(c2Hb3);
业余爱好2.增加(c2Hb4);
业余爱好2.增加(c2Hb5);
候选人候选人2=新候选人(2,“普密斯”,霍布斯2);
List candidateList=新建ArrayList();
候选名单。添加(候选名单1);
候选名单。添加(候选名单2);
System.out.println(“候选数量:->”+candidateList.size());
System.out.println(“第一个候选人的爱好列表大小:->”+candidateList.get(0.getHobiods().size());
System.out.println(“第二个候选人的爱好列表大小:->”+candidateList.get(1.getHabiods().size());
System.out.println(“第一个候选人的第一个爱好:->”+candidateList.get(0.getHobiods().get(0.getHobiody());