私は
HashMap<String, Integer>.
すべてのキー、つまり文字列を文字列配列に抽出したいと考えています。次に、この String 配列をソートして使用したいと思います。
残念ながら、文字列配列はソートされておらず、必要な出力が生成されていません。
現在の出力は -
one,
two,
zero,
必要な出力は -
zero,
one,
two,
コードは以下のとおりです -
import java.util.Arrays;
import java.util.HashMap;
import java.util.Set;
public class HashMapKeySorter {
public static String[] convert(HashMap<String, Integer> codes){
Set set = codes.keySet();
Object[] object = set.toArray();
String[] allKeys = new String[object.length];
for(int i = 0; i < object.length; i++){
allKeys[i] = (String) object[i];
}
Arrays.sort(allKeys);
return allKeys;
}
public static void main(String[]args){
HashMap<String, Integer> hm = new HashMap<String, Integer>();
hm.put("zero", 0);
hm.put("one", 1);
hm.put("two", 2);
String[] allKeys = convert(hm);
showStringArray(allKeys);
}
public static void showStringArray(String[] allKeys){
for(int i = 0; i < allKeys.length; i++){
System.out.println(allKeys[i] + ", ");
}
}
}