Làm cách nào để chuyển đổi một số Map<K, V>
thành danh sách List<K> keys
, List<V> values
, sao cho đơn đặt hàng trong keys
và values
khớp? Tôi chỉ có thể tìm thấy Set<K> Map#keySet()
và Collection<V> Map#values()
mà tôi có thể chuyển đổi vào danh sách sử dụng:Làm thế nào để chuyển đổi một Bản đồ <K, V> thành hai danh sách trong khi vẫn giữ trật tự?
List<String> keys = new ArrayList<String>(map.keySet());
List<String> values = new ArrayList<String>(map.values());
nhưng tôi lo lắng rằng thứ tự sẽ là ngẫu nhiên.
Có đúng là tôi phải chuyển đổi thủ công chúng hoặc có lối tắt ở đâu đó không?
Cập nhật: Do các câu trả lời tôi đã có thể tìm thêm thông tin hữu ích mà tôi muốn chia sẻ với bạn, ngẫu nhiên dùng google: How to efficiently iterate over each Entry in a Map?
Tôi nghĩ ArrayList giữ gìn trật tự trong đó chúng ta chèn. –
@AchintyaJha vâng, có. Tuy nhiên, là bộ được trả lại bởi bản đồ đã ra lệnh? –
+1 vì không giả định rằng hai bộ sưu tập (khóa và giá trị) sẽ có cùng thứ tự. – yshavit