public class GetMax
{
public static void main(String[] args)
{
int[] source = {1,3,6,7,7,7,9,9,9,6,5,5,3,1,1};
int[] count = new int[source.length];
for(int i = 0;i < source.length;i++)
{
count[source[i]]++;
}
int max = count[0];
int sub = 0;
for(int i = 0;i < count.length;i++)
{
if(count[i] >= max)
{
max = count[i];
sub = i;
}
}
System.out.println("下标是: " + sub + "出现次数是: " + count[sub]);
}
}昨天看的一个帖子,不过有句话我没看懂
count[source[i]]++;
请问这句是什么意思,如果i=0,我是这么理解的
count[source[0]]++;变成count[1]=count[1]+1;
肯定是不对的,刚学java,希望高手指点
首先必须需要source中的每个值<source.length。
count[source[i]]++做的是取出source中的值并使用该值定位count数组中的数据+1,使用count数组记录
source中的值出现次数。source[i]类似于Map中的key,而count[source[i]]就是Map中的value.