Java中,Pair和Map都是常見的數(shù)據(jù)結(jié)構(gòu),但它們有很大的區(qū)別。
Pair
Pair<T1, T2> pair = new Pair<>(value1, value2);
Pair表示的是兩個(gè)值的有序序列,可以將其視為數(shù)組,但它不僅可以存儲(chǔ)兩個(gè)值,也可以避免使用數(shù)組引用。
例如,可以使用Pair來存儲(chǔ)單詞和其在文本中出現(xiàn)的次數(shù)。下面是一個(gè)簡(jiǎn)單的例子:
Pair<String, Integer> wordCount = new Pair<>("hello", 5);
System.out.println(wordCount.getKey()); // 輸出 hello
System.out.println(wordCount.getValue()); // 輸出 5
Map
Map<K, V> map = new HashMap<>();
Map跟Pair不同,它是一種鍵值對(duì)映射,就像字典一樣。
例如,可以使用Map來存儲(chǔ)單詞和其在文本中出現(xiàn)的次數(shù)。
Map<String, Integer> wordCountMap = new HashMap<>();
wordCountMap.put("hello", 5);
System.out.println(wordCountMap.get("hello")); // 輸出 5
總而言之,Pair通常用于表示有限有序值的集合,而Map用于表示鍵值對(duì)的無序集合。