Java for循环和类定义

时间:2015-09-25 07:59:06

标签: java class loops definition mutators

嘿,我非常喜欢java,所以请耐心等待我:)

我有对象v1,v2,v3,每个对象都包含足球运动员统计数据

的详细信息
     int LessThan25 = 0;
     for (int i = 0; i < topscorer.size(); i++)
     {
         while (v**[i]**.getGoals() < 25)
         {
             LessThan25++;
         }
     }

我的问题是如何使这个循环工作?我希望能够在for循环中使用for循环中的整数来链接到我的类定义。 (粗体部分)

感谢帮助:)

5 个答案:

答案 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可以提高后台的性能。