【发布时间】:2016-08-30 14:57:56
【问题描述】:
我有一个程序可以接收乐队和专辑的文件列表。我需要确定每个乐队制作的专辑数量,然后按降序打印出乐队列表和他们制作的专辑数量。我环顾四周,看到它使用映射和集合完成。我想知道如何在没有任何一个的情况下做到这一点。这是我目前所拥有的:
public static void processFile(String filename)
{
String bandname = "";
String[][] data = read_spreadsheet(filename);
//takes the file and converts it to a 2d array
ArrayList<String> bands = new ArrayList<String>();
for(int rows = 0; rows < data.length; rows++)
{
bands.add(data[rows][0]);
}
for(int i = 0; i<bands.size()-1;i++)
{
int albumcount = 0;
for(int j = i+1; j<bands.size();j++)
{
if(bands.get(i).equals(bands.get(j)))
{
albumcount++;
}
}
}
}
输入示例:
band1 -album
band2 -album
band1 -album
band3 -album
band1 -album
band2 -album
输出示例:
band1: 3
band2: 2
band3: 1
【问题讨论】:
标签: java for-loop arraylist count duplicates