【发布时间】:2019-03-30 13:31:33
【问题描述】:
我有一个格式为 province;capital 的数组。
provArray = new String[] { "Alberta;Edmonton", "British Columbia;Victoria", "Manitoba;Winnipeg", "New Brunswick:Fredericton",
"Newfoundland and Labrador;St.John's", "Nova Scotia;Halifax", "Ontario;Toronto", "Prince Edward Island;Charlottetown",
"Quebec;Quebec City", "Saskatchewan;Regina", "Northwest Territories;Yellowknife", "Nunavut;Iqaluit", "Yukon;Whitehorse",
"Alabama;Montgomery", "Alaska;Juneau", "Arizona;Phoenix", "Arkansas;Little Rock", "California;Sacramento", "Colorado;Denver",
"Connecticut;Hartford"};
然后我有一个将省份与首都分开的 for 循环(在“;”之前和之后)。然而由于某种原因,我得到了错误,java.lang.ArrayIndexOutOfBoundsException: length=1; index=1。
for(int k = 0; k < bonusArray.length; k++){
String[] split = bonusArray[k].split(";");
String prov = split[0];
String cap = split[1];
if(prov.equals(answer)){
bonusAnswer = cap;
}
}
我该如何解决这个错误?
编辑:已修复,我不小心将 : 而不是 ; 用于我的数组项之一。
【问题讨论】:
-
请考虑这不是存储这些数据的最佳方式:定义一个类
Province,它将名称和大写存储为单独的字段,您可以像new Province("Alberta", "Edmonton")一样初始化它。
标签: java arrays android-studio indexoutofboundsexception