문제가 있습니다. 사실 나는 일부 코드에서 일하고 그 코드는 파이썬으로 작성된지만 자바에서 동일한 문제를 싶습니다. 나는 모든 것을 가지고 있지만 컬렉션에 어떤 문제가오고있다.사전에 값을 java의 값에 따라 감소 순서로 저장 하시겠습니까?
나 자바 딕셔너리에 값을 저장하고있다 :
Dictionary<String, Integer> dc=new Hashtable<String, Integer>();
String s[]={"red", "blue", "red", "green", "blue", "blue"};
for(String t: s){
if(dc.get(t)==null)
dc.put(t, 1);
else
dc.put(t, dc.get(t)+1);
}
출력 :
{blue=3, green=1, red=2}
내가 좋아 원한다
{blue=3, red=2, green=1}
을하지만 내가 원하는 출력되지 나는 파이썬처럼주고 싶다 :
cnt = Counter()
>>> for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:
... cnt[word] += 1
>>> cnt
Counter({'blue': 3, 'red': 2, 'green': 1})
어느 것이 나에게 어떤 생각을 줄 수 있습니까?
사전이 순서를 유지한다고 생각하지 않습니다. – thefourtheye
SortedList 또는 SortedDictionary 일 수 있습니다. 그러나리스트 나 배열이 이것을 할 것입니다. 원하는 순서로 채우면됩니다. –