Я не могу понять, что здесь не так. мой код должен проверять, сколько раз указывается состояние c в CSV-файле с 1 столбцом. Я думаю, что он печатает адрес, в котором он сохранен, но я не знаю, как это исправить. Он также должен печатать все состояния, но это не так.
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
public class csvtxt
{
public static void main(String a[])
{
StringBuilder sb = new StringBuilder();
String strLine = "";
List<String> list = new ArrayList<String>();
try
{
BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\dbb38\\Downloads\\customers_export_1111 - customers_export_1.csv"));
while (strLine != null)
{
strLine = br.readLine();
if (strLine==null)
break;
sb.append(strLine);
sb.append(System.lineSeparator());
list.add(strLine);
}
String[] state = new String[]{"Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut", "Delaware", "Florida", "Georgia", "Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", "Michigan", "Minnesota", "Mississippi", "Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", "New Jersey", "New Mexico", "New York", "North Carolina", "North Dakota", "Ohio", "Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah", "Vermont", "Virginia", "Washington", "West Virginia", "Wisconsin", "Wyoming"};
String[] state1 = new String[]{"Alabama1", "Alaska1", "Arizona1", "Arkansas1", "California1", "Colorado1", "Connecticut1", "Delaware1", "Florida1", "Georgia1", "Hawaii1", "Idaho1", "Illinois1", "Indiana1", "Iowa1", "Kansas1", "Kentucky1", "Louisiana1", "Maine1", "Maryland1", "Massachusetts1", "Michigan1", "Minnesota1", "Mississippi1", "Missouri1", "Montana1", "Nebraska1", "Nevada1", "New Hampshire1", "New Jersey1", "New Mexico1", "New York1", "North Carolina1", "North Dakota1", "Ohio1", "Oklahoma1", "Oregon1", "Pennsylvania1", "Rhode Island1", "South Carolina1", "South Dakota1", "Tennessee1", "Texas1", "Utah1", "Vermont1", "Virginia1", "Washington1", "West Virginia1", "Wisconsin1", "Wyoming1"};
int[] stateCounts = new int[state.length];
for (int i = 0; i < list.size(); i++)
{
String wordToSearchFor = state[i];
for (String state2 : list)
{
if (state2.equals(wordToSearchFor))
{
stateCounts[i]++;
}
}
System.out.println(state[i] + "=" + "["+ stateCounts +"]");
}
//
//System.out.println(Arrays.toString(list.toArray()));
br.close();
}
catch (FileNotFoundException e)
{
System.err.println("File not found");
}
catch (IOException e)
{
System.err.println("Unable to read the file.");
}
}
}
И это вывод. Как я уже говорил ранее, я думаю, что это адреса памяти, но я не знаю, как это исправить
Alabama=[[I@1db9742]
Alaska=[[I@1db9742]
Arizona=[[I@1db9742]
Arkansas=[[I@1db9742]
California=[[I@1db9742]
Colorado=[[I@1db9742]
Connecticut=[[I@1db9742]
Delaware=[[I@1db9742]
Florida=[[I@1db9742]
Georgia=[[I@1db9742]
Hawaii=[[I@1db9742]
Idaho=[[I@1db9742]
Illinois=[[I@1db9742]
Indiana=[[I@1db9742]
Iowa=[[I@1db9742]
Kansas=[[I@1db9742]
Kentucky=[[I@1db9742]
Louisiana=[[I@1db9742]
Maine=[[I@1db9742]
Maryland=[[I@1db9742]
Massachusetts=[[I@1db9742]
Michigan=[[I@1db9742]
Minnesota=[[I@1db9742]
Mississippi=[[I@1db9742]
Missouri=[[I@1db9742]
Montana=[[I@1db9742]
Nebraska=[[I@1db9742]
Nevada=[[I@1db9742]
New Hampshire=[[I@1db9742]
New Jersey=[[I@1db9742]
New Mexico=[[I@1db9742]
New York=[[I@1db9742]
North Carolina=[[I@1db9742]
North Dakota=[[I@1db9742]
Ohio=[[I@1db9742]