Java 显示符合特定标准的数组中的特定项
我在从数组中提取特定项并显示它们(如果它们是符合特定条件的项)时遇到问题 在某些上下文中,我有一个名为Person的数组,该数组使用excel文件填充。数组中的每个项都有多个属性,例如firstName、lastName和favoriteColor。我需要能够在控制台上打印出所有喜欢绿色的人 到目前为止,我已经有了它,所以它将显示每个人,但我正在努力减少它,只显示绿色作为他们最喜欢的颜色的人。我认为引起问题的区域看起来是这样的Java 显示符合特定标准的数组中的特定项,java,arrays,Java,Arrays,我在从数组中提取特定项并显示它们(如果它们是符合特定条件的项)时遇到问题 在某些上下文中,我有一个名为Person的数组,该数组使用excel文件填充。数组中的每个项都有多个属性,例如firstName、lastName和favoriteColor。我需要能够在控制台上打印出所有喜欢绿色的人 到目前为止,我已经有了它,所以它将显示每个人,但我正在努力减少它,只显示绿色作为他们最喜欢的颜色的人。我认为引起问题的区域看起来是这样的 for (final Person person : people)
for (final Person person : people) {
//System.out.println(person);
for (favoriteColor == "Green");
System.out.println(person);
}
我知道我最喜欢的颜色=“绿色”线有问题。我不太习惯Java,所以这让我有点困惑。你们当中有人对此有什么见解吗
谢谢您需要在for循环中运行if条件来过滤数据。你应该这样做:
for (Person person : people) {
if(person.getFavoriteColor().equalsIgnoreCase("Green")){
System.out.println(person.getFirstName());
}
}
您可以添加多个if条件。我不确定这是否是您想要的条件 当有如下数据结构时
String [][] personArray = {
{"Sam", "Horden", "Green"},
{"Sam2", "Horden2", "Red"},
{"Sam3", "Horden3", "Brown"},
{"Sam4", "Horden4", "Blue"},
{"Sam5", "Horden5", "Green"},
{"Sam6", "Horden6", "Green"},
};
您可以像下面这样使用for循环
for(String [] person : personArray){
for(String color : person) {
if(color == "Green")
System.out.println(person[0]);
}
} //out put will be sam, sam5, sam6
你的
是做什么的(favoriteColor==“绿色”)代码>是吗?为什么?啊,谢谢。这就是我做错的地方。非常感谢你。