方法1: イテレーションを使用する方法 TreeMapのキーと値のセットを取得し、2番目の要素を取得します。その後、その要素のキーを取得します。
import java.util.*;
public class Main {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1, "Apple");
treeMap.put(2, "Banana");
treeMap.put(3, "Orange");
Iterator<Map.Entry<Integer, String>> iterator = treeMap.entrySet().iterator();
// 2番目の要素に移動
Map.Entry<Integer, String> secondEntry = null;
if (iterator.hasNext()) {
iterator.next(); // 1番目の要素をスキップ
if (iterator.hasNext()) {
secondEntry = iterator.next(); // 2番目の要素を取得
}
}
if (secondEntry != null) {
int secondKey = secondEntry.getKey();
System.out.println("2番目の要素のキー: " + secondKey);
}
}
}
方法2: インデックスを使用する方法 TreeMapのキーのセットを取得し、2番目の要素を取得します。その後、その要素のキーを取得します。
import java.util.*;
public class Main {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1, "Apple");
treeMap.put(2, "Banana");
treeMap.put(3, "Orange");
Set<Integer> keySet = treeMap.keySet();
List<Integer> keyList = new ArrayList<>(keySet);
if (keyList.size() >= 2) {
int secondKey = keyList.get(1); // 2番目の要素のキーを取得
System.out.println("2番目の要素のキー: " + secondKey);
}
}
}
方法3: Stream APIを使用する方法 TreeMapのエントリーセットをストリームとして取得し、2番目の要素を取得してからそのキーを取得します。
import java.util.*;
public class Main {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1, "Apple");
treeMap.put(2, "Banana");
treeMap.put(3, "Orange");
Optional<Integer> secondKeyOptional = treeMap.entrySet().stream()
.skip(1) // 1番目の要素をスキップ
.map(Map.Entry::getKey)
.findFirst();
if (secondKeyOptional.isPresent()) {
int secondKey = secondKeyOptional.get();
System.out.println("2番目の要素のキー: " + secondKey);
}
}
}
上記のコード例を使用することで、JavaでTreeMapの2番目の要素のキーを取得することができます。