मेरे पास एक map<String, Object>
और int[]
की एक सरणी है जिसमें मानचित्र कुंजियां शामिल हैं। क्या लूप का उपयोग किए बिना चाबियों को int में बदलने का एक अच्छा और छोटा तरीका है?
myArray = myMap.keySet().toArray(new int[5]);
मैं Java 8
का उपयोग करता हूं। धन्यवाद!
1
dardy
6 अक्टूबर 2016, 11:25
2 जवाब
सबसे बढ़िया उत्तर
मान लें कि आपकी सभी String
कुंजियों को पूर्णांक के रूप में सुरक्षित रूप से पार्स किया जा सकता है:
int[] keys = myMap.keySet().stream().mapToInt(Integer::parseInt).toArray();
keySet()
एकSet<String>
देता है।stream()
एकStream<String>
देता है।mapToInt()
प्रत्येकString
परInteger.parseInt()
लगाकर उसStream<String>
को एकIntStream
में मैप करता है।toArray()
,IntStream
के सभी तत्वों की एक सरणी देता है।
7
Eran
6 अक्टूबर 2016, 11:27
myMap.keySet().toArray(); // returns an array of keys
myMap.values().toArray(); // returns an array of values
ध्यान दें! ध्यान दिया जाना चाहिए कि दोनों सरणियों का क्रम समान नहीं हो सकता है।
0
thomas.adamjak
6 अक्टूबर 2016, 11:37
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
java
जावा एक उच्च स्तरीय प्रोग्रामिंग भाषा है। इस टैग का उपयोग तब करें जब आपको भाषा का उपयोग करने या समझने में समस्या हो। इस टैग का उपयोग शायद ही कभी किया जाता है और इसका उपयोग अक्सर [वसंत], [वसंत-बूट], [जकार्ता-ई], [Android], [javafx], [हडूप], [श्रेणी] और [मावेन] के साथ किया जाता है।