Set<String> keys = mappings.keySet();
String[] keyArray = (String[]) keys.toArray();
String hashmapDetails = "";
for(int p=0; p < keyArray.length; p++){
String[] details = keyArray[p].split("/");
hashmapDetails += details[1];
hashmapDetails += mappings.get(keyArray[p]);
if (p != keyArray.length -1){
hashmapDetails += ";";
}
}
Xin lỗi vì sự thiếu hiểu biết của tôi nhưng tôi đang cố gắng khám phá việc sử dụng hashmaps. Tôi hiểu rằng toArray() trả về một đối tượng []. Tuy nhiên, không thể gõ nó vào một String []? Như bạn có thể thấy trong các mã, sau đó, tôi cần phải đi qua một mảng và làm một số tách và thao tác String khác.chuyển đổi Object [] từ một keyset hashmap thành String []?
Bằng cách này, tôi đã nhận ra lỗi:
java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.String[]
Bất kỳ hướng dẫn về làm thế nào tôi nên giải quyết vấn đề này được đánh giá rất nhiều. Cảm ơn!
Cảm ơn sự giúp đỡ của bạn! Giải pháp đầu tiên với phiên bản chung của toArray là đủ tốt cho tôi, cảm ơn bạn! =) – lyk
Phiên bản 'toArray (new String [0])' chắc chắn là con đường để đi. Nó súc tích và thể hiện chính xác những gì bạn đang làm. – NRitH
@NRitH có thể nhưng nó tạo ra một đối tượng không cần thiết vì vậy tôi thích phiên bản "có kích thước". – assylias