您的位置:首页 > 编程语言 > Java开发

java数组元素重复次数最大值

2016-01-10 11:30 351 查看
package lianxi;

import java.util.HashSet;
import java.util.Set;

public class Demo8
{

/**
* @file Demo8.java
* @author 變脸
* @datetime 2016-1-10 上午11:04:37
*
*/
public static void main(String[] args)
{
Object[] obj1   = {"aa","bb","cc","dd","aa","dd","ee","dd","ff","c","dd","rr","aa","aa"};
//把数组放进set,去除重复
Set<Object> set = new HashSet();
for(Object o:obj1)
{
set.add(o);
}
//把set里数据放入新的数组obj2[]
Object[] obj2 = set.toArray();

//再做一个数组,存放obj2数组的个数
int [] counts = new int[obj2.length];

//定义数组中元素出现最大次数k
int k = 0;
//双重循环,对比obj1 obj2
for(int i=0;i<obj2.length;i++)
{
int count=0;
for(int j=0;j<obj1.length;j++)
{
if(obj2[i]==obj1[j])
{
count++;
}
}
//如果次数大于最大次数k,则count赋值给k
if(count>k)
k=count;
//次数存入counts[]
counts[i]=count;
}
System.out.println("最大次数是"+k);

//最大次数的数可能不止一个,我们用counts[]里面和最大次数相同值的下标,去取obj2[]里面的元素,得到最大次数元素
for(int i=0;i<counts.length;i++)
{
if(counts[i]==k){
System.out.println("出现次数最大的数为:"+obj2[i]);
}
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: