有没有办法搜索某个名称并将其显示为arraylist? (比如从hashmap获取密钥)
列表格式为
姓名:得分-age
{A: 100 - 15, A: 200 - 16, B: 75 -11}
我想做的是,只获取A的数据并显示它。
List<Score> scores = new ArrayList<>();
scores.add(new Score("A", 100, 15));
scores.add(new Score("A", 200, 16));
scores.add(new Score("B", 75, 11));
答案 0 :(得分:2)
我认为对于ArrayList
,您需要遍历您的列表并找到相应的score element
并显示它。
List<Score> scores = new ArrayList<>();
for(Score score : scores) {
if (score.getName().equals("A")) {
...
}
}
答案 1 :(得分:1)
循环通过您的列表,我希望您在Score类中拥有属性的getter。调用getName()并检查名称是否等于输入名称。
List<Score> scores = new ArrayList<>();
for(Score s: scores){
if("yourinputstr".equals(s.getName())){
System.out.println(s);//you'd have to override toString in your score class to show name, age and score
}
}
答案 2 :(得分:1)
假设您的Score类是
public class Score
{
public String str1;
public int num1;
public int num2;
}
然后你可以这样做
for(Score scr : scores)
{
if(scr.str1.equals("A"))
{
//do some job
}
}
答案 3 :(得分:1)
您可以做到这一点:如果在您的Score课程中有任何返回学生姓名的功能
List<Score> scores = new ArrayList<>();
for(Score score: scores){
if(scores .getName().equals("A")){
System.out.println(score.getName() +score.getScore() + "-" + score.getAge());
}
}