पर नहीं डाला जा सकता है मैं किसी उत्पाद के एपीआई से वेक्टर प्राप्त कर रहा हूं।[java.lang.String; java.lang.String
Vector<?> dataVector = dataAPI.getReturnVector();
वेक्टर स्ट्रिंग्स मूल्य के रूप में शामिल होने की अपेक्षा की जाती है। मैं वेक्टर के आकार को 2 के रूप में प्रिंट करने में सक्षम हूं। लेकिन किसी कारण से मैं मूल्यों को फिर से भरने और मुद्रित करने में सक्षम नहीं हूं।
मैंने कोशिश की
Iterator<?> iter = dataVector.iterator();
while(iter.hasNext()) {
System.out.println(iter.next());
}
मैं हमेशा हो रही अंत एक
[java.lang.String; cannot be cast to java.lang.String
मैं
iter.next().getClass().getName()
का इस्तेमाल किया और यह पता चला केवल java.lang.String
किया जाना है।
मैं थोड़ा googled और http://prideafrica.blogspot.com/2007/01/javalangclasscastexception.html
मैं String[]
के रूप में जेनरिक सेट करने की कोशिश की पर एक ऐसी ही समस्या का पता चला, लेकिन एक ही त्रुटि के साथ समाप्त हो गया।
यदि वेक्टर में java.lang.String
है, तो मुझे यह कास्ट अपवाद क्यों मिलता है? मैं वास्तविक मूल्य कैसे मुद्रित कर सकता हूं?
कृपया अपने सुझाव प्रदान करें।
वह अर्धविराम कहां से आया? –
क्या त्रुटि संदेश शायद '[java.lang.String;' जैसे खुले ब्रेस के साथ शुरू हुआ था? यह एक स्ट्रिंग सरणी का आंतरिक नाम होगा। –
ओह हाँ, यह एक खुली ब्रेस के साथ शुरू हुआ [। इसे याद करने के लिए खेद है। मुझे नहीं पता था कि इससे कोई फर्क पड़ता है। – jobinbasani