Tôi có bản đồ Map<Type, Long> countByType
và tôi muốn có một danh sách đã sắp xếp các từ (tối thiểu đến tối đa) bằng các giá trị tương ứng của chúng. Thử của tôi là:Bản đồ luồng Java 8 vào danh sách các phím được sắp xếp theo giá trị
countByType.entrySet().stream().sorted().collect(Collectors.toList());
tuy nhiên điều này chỉ cho tôi danh sách các loại, làm cách nào để có danh sách loại, mà không làm mất thứ tự?
... hoặc '.sorted (Map.Entry.comparingByValue())' –
Sau chaining 'sorted' làm thế nào tôi có thể nhận được dòng trở lại một bản đồ? Về mặt kỹ thuật, tôi biết tôi không thể hoàn nguyên nó về bản đồ vì các bộ của nó không được đặt hàng. Nhưng tôi muốn in bản đồ như thế này '.forEach ((k, v) -> System.out.println (k + ":" + v) 'Làm cách nào tôi có thể đạt được điều này bằng cách sử dụng luồng đó? – dabadaba
@dabadaba sau '.sorted (...)' bạn có một dòng các mục, vì vậy bạn có thể nối thêm '.forEach (e -> System.out.println (e.getKey() +": "+ e.getValue())); ' – Jesper