日期:2014-05-20  浏览次数:20634 次

有个java小程序,不懂里面的代码,麻烦哪位大虾指教
有时间就把全部代码解释一下,没时间就解释里面标记的那段,谢谢了

这是程序的全部:
import java.util.Random;

public class Test1
{
public static void main(String[] args)
{
int[] count = new int[41];

Random random = new Random();

for(int i = 0; i < 50; i++)
{
int number = random.nextInt(41) + 10;// [10, 50]

System.out.println(number);

count[number - 10]++;
}

for(int i = 0; i < count.length; i++)
{
if(0 == count[i])
{
continue;
}

System.out.println((10 + i) + "出现次数:" + count[i]);
}//这段代码不懂,能不能详细解释一下

int max = count[0];

for(int i = 0; i < count.length; i++)
{
if(max < count[i])
{
max = count[i];
}
}

System.out.println("出现的最大次数为:" + max + "次");

for(int i = 0; i < count.length; i++)
{
if(max == count[i])
{
System.out.println(i + 10);
}
}
}
}


------解决方案--------------------
Java code

for(int i = 0; i < count.length; i++)
{
   if(0 == count[i])
   {
      continue;    
   }

   System.out.println((10 + i) + "出现次数:" + count[i]);
}
count数组利用下标表示[10,50]之间的数字,利用值表示数字出现的次数,然后这段代码是遍历整个数组,如果(10+下标)出现过,则打印出其出现的次数,否则继续找出下一个出现的数字

------解决方案--------------------
人家免费给你解答,都得不到你的肯定?

楼主把贴结了吧,好给人家以肯定的表示啊。
------解决方案--------------------
探讨
人家免费给你解答,都得不到你的肯定?

楼主把贴结了吧,好给人家以肯定的表示啊。