我正在創建一個程序,在其中我從 .txt 文件中讀取 50 個州及其首都。然后我運行一個 while 循環并將每個狀態存儲在一個 ArrayList 中,并將每個大寫字母存儲在另一個 ArrayList 中。我將這兩個 ArrayList 轉換為常規數組,然后運行 for 循環將每個狀態存儲為映射中的鍵,并將每個大寫存儲為映射中的值。我的問題是,當我使用 map.get() 方法返回特定狀態的首都時,它只是返回“null”,我不確定為什么會這樣。這是我的代碼:import java.util.*;import java.io.File;import java.io.FileNotFoundException;public class ChapterOneBasics { public static void main(String[] args) throws FileNotFoundException { Map<String, String> usCapitals = new HashMap<String, String>(); ArrayList<String> aList = new ArrayList<>(); ArrayList<String> bList = new ArrayList<>(); int x = 0; File file = new File("C:\\Private\\Private\\Private\\capitals.txt"); Scanner sc = new Scanner(file); while(sc.hasNextLine()) { if(x % 2 == 0) { aList.add(sc.nextLine()); } else bList.add(sc.nextLine()); x++;} String[] usStates = aList.toArray(new String[aList.size()]); String[] uSCapitals = bList.toArray(new String[bList.size()]); for(int y = 0; y < uSCapitals.length; y++) { usCapitals.put(usStates[y], uSCapitals[y]); } System.out.println(usCapitals.get("Montana")); }}如您所見,我已將每個州以字符串格式存儲到 Map 中,但是每當我調用一個州來查找首都時,我都會將其作為輸出:null我不確定是什么問題。
Java map.get() 方法返回 null
慕婉清6462132
2021-05-31 13:54:56