計算陣列中相同元素的個數,以及陣列總的元素數(重複元素算一個)
陣列需要排序
ArrayList<String> list = new ArrayList<String>();
list.add("0");
list.add("0");
list.add("1");
list.add("1");
list.add("1");
list.add("2");
int flag = 0;
String record;
int count = 0;
record = list.get(0).toString();// 將第0個元素先放入record中
List<String> num = new ArrayList<String>();
int size = list.size();
for (int i = 0; i < size; i++)
{
if (!list.get(i).equals(record))
{
num.add(record + "相同的個數是:" + count);
// 將新出現的不同元素賦給record
record = list.get(i);
// count重置為1,開始重新計數
count = 1;
flag++;
}
//記錄相同數的數量
else
{
count++;
}
// 記錄最後一個
if (i == size - 1)
{
num.add(record + "相同的個數是:" + count);
flag++;
}
}
System.out.println("元素個數:" + flag + "");
for (int j = 0; j < num.size(); j++)
{
System.out.println(num.get(j));
}