पर जोड़ी (int, double) जोड़ी नहीं जोड़ सकता है, मैं अभी जावा प्रोजेक्ट पर काम कर रहा हूं, और मेरे पास एक क्लास है जिसे मैंने डिस्ट्यूक्यूयू कहा है। यह के हस्ताक्षर सेहैश मैप <इंटीजर, डबल>
public class DistanceQueue<Integer> extends PriorityQueue<Integer>
दिया जाता है इस वर्ग में, वहाँ एक विधि
public boolean add(int v)
जो एक HashMap बुलाया दूरी में है कि करने के लिए कुंजी-मान पेयर (V, Double.MAX_VALUE) कहते है कक्षा DistanceQueue। हालांकि, ऐड (पूर्णांक v), जब मैं टाइप
distances.put(v, Double.MAX_VALUE);
मैं निम्नलिखित त्रुटि मिलती है के अंदर:
DistanceQueue.java:98: error: no suitable method found for put(int,double)
distances.put(v, Double.MAX_VALUE);
^
method HashMap.put(Integer,Double) is not applicable
(actual argument int cannot be converted to Integer by method invocation conversion)
where Integer is a type-variable:
Integer extends Object declared in class ShortestPaths.DistanceQueue
1 error
क्या किसी को पता है कि क्यों मैं इस त्रुटि मिल रहा है? मैंने सोचा कि जावा स्वचालित रूप से आपके लिए int और Integer के बीच परिवर्तित हो गया है। क्या कोई आसान तरीका है कि मैं इसे ठीक कर सकता हूं?
धन्यवाद!
'distances' क्या है? –
दूरी एक हैश मैप है। यह हैश मैप <इंटीजर, डबल> दूरी = नया हैश मैप <इंटीजर, डबल>() – Ryan
मैंने निश्चित रूप से पहले इस प्रश्न के डुप्लिकेट को देखा है लेकिन वे खोजना वाकई मुश्किल हैं क्योंकि उनके पास यादृच्छिक समस्या विवरण हैं जो वास्तविक समस्या का संकेत नहीं देते हैं। – 5gon12eder