इस चर्चा पर एक प्रश्न का पालन की तरह है:जावा 7 डायमंड ऑपरेशन विधि कॉल में
Why doesn't the diamond operator work within a addAll() call in Java 7?
जावा ट्यूटोरियल से,
http://docs.oracle.com/javase/tutorial/java/generics/gentypeinference.html
ध्यान दें कि हीरा अक्सर विधि कॉल में काम करता है; हालांकि, अधिक स्पष्टता के लिए, यह सुझाव दिया जाता है कि आप मुख्य रूप से एक चर को प्रारंभ करने के लिए हीरा का उपयोग करते हैं जहां इसे
तो, मैं पहली पंक्ति के बारे में थोड़ा उलझन में हूं। जब विधि कॉल में हीरा कार्य करता है?
एक कैसे हीरा ऑपरेटर काम करता है यहां पाया जा सकता के बारे में अधिक विवरण के सा?
और इस से, मैं निम्नलिखित है, जो ठीक काम करता है की कोशिश की है:
दें मेरे पास है:
private static class Box<T>{
public Box(T t){}
}
static void f(Box<Integer> box){}
निम्नलिखित की तरह एक फोन ठीक संकलित:
f(new Box<>(new Integer(10)));
उपरोक्त f()
की विधि कॉल में कन्स्ट्रक्टर का आविष्कार करने में पैरामीटर टाइप करें कन्स्ट्रक्टर (यानी Integer
) के तर्क से अनुमानित है।
तो यह क्या मतलब है जब ट्यूटोरियल कहते
ध्यान दें कि हीरे अक्सर विधि में काम करता है कॉल
यदि नहीं, तो तरह पर्याप्त किसी को भी एक उदाहरण प्रदान करने के लिए कर सकते हैं जहां हीरे काम करता है विधि कॉल में?
@ गुरंग इसका एक टाइपो है। कट और पेस्ट का खराब मामला :( –