嘿,我非常喜欢java,所以请耐心等待我:)
我有对象v1,v2,v3,每个对象都包含足球运动员统计数据
的详细信息 int LessThan25 = 0;
for (int i = 0; i < topscorer.size(); i++)
{
while (v**[i]**.getGoals() < 25)
{
LessThan25++;
}
}
我的问题是如何使这个循环工作?我希望能够在for循环中使用for循环中的整数来链接到我的类定义。 (粗体部分)
感谢帮助:)
答案 0 :(得分:0)
使用&#39;如果&#39;条件而不是&#39;虽然&#39;,我认为这就是你所期待的。
答案 1 :(得分:0)
使用增强的for
循环 - 如果使用Java 5+,这是一个更好的习语
变量名称应按惯例开始小写。
for(Player player : players) {
if(player.getGoals < 25)
lowerThan25Goals++;
}
答案 2 :(得分:0)
我明白你的意思,你可以这样做来访问每个 topScorer对象:
for(int x=0; x<topScorer.size(); x++) //iterate through all elements in topScorer
if(topScorer.get(x).getGoals() < 25)
lessThan25++;
访问 ArrayList 中元素的语法是:
list.get(x) where x is the element you wanted to access (starts from 0)
当然,增强的for循环(每个循环的 也有效):
for(Scorer s : topScorer) //Scorer is the object type in your list
if(s.getGoals() < 25)
lessThan25++;
答案 3 :(得分:0)
user3437460 的答案是您正在寻找的
for(Scorer s : topScorer)
if(s.getGoals() < 25)
lessThan25++;
播放器的一个例子本来不错, 某事。喜欢
球员cRonaldo =新球员(年龄,体型,平均目标,(总)目标);
玩家lMessi =新玩家(年龄,大小,平均目标,(总)目标);
请看看你的while循环
while (topScorer[i].getGoals() < 25)
{
LessThan25++;
}
这是一个无限循环。如果你达到topScorer又名v [i] 低于&#39; 25&#39;目标,你永远不会停止,你的计数器 LessThan25 突破你的ALU限制;) (小写变量!)
可能是错误,或者您提供的代码丢失。 所以,只为了你,成为新的&#39;要知道Java。
答案 4 :(得分:0)
如果您使用的是Java 8,则可以使用Stream API 仅在一行代码中轻松解决此问题:
long lessThan25 = topScorer.stream()
.filter(element -> element.getGoals() < 25).count();
此外,使用Streams,JVM可以提高后台的性能。