Map<String, ?> test = ImmutableMap.builder().build();
क्यों संकलित करने में विफल रहता है, लेकिन Map<String, ?> test = ImmutableMap.<String, Object>builder().build();
ठीक काम करता है?ImmutableMap.builder()। Build() सही प्रकार पैरामीटर क्यों नहीं चुनता है?
पहले कोड sniplet विफल रहता है के साथ:
error: incompatible types
Map<String, ?> test = ImmutableMap.builder().build();
^
required: Map<String,?>
found: ImmutableMap<Object,Object>
मेरा मानना है कि यह काम करने के लिए अमरूद कमिटर मतलब है।
क्या यह कुछ ऐसा है जो भाषा में तय किया जा सकता है? यानी, क्या हम ओरेकल के साथ एक बग रिपोर्ट दर्ज कर सकते हैं? – Gili
नहीं ... संभावना है, मुझे डर है। यदि उन्होंने जावा 7 में हीरा ऑपरेटर के साथ संवर्द्धित प्रकार अनुमान में शामिल नहीं किया है, तो मुझे संदेह है कि वे इसे बिल्कुल भी शामिल कर सकते हैं। शायद कुछ अजीब किनारे के मामले हैं जो कुछ कारणों से प्रबंधित करना असंभव होगा, लेकिन मुझे विशिष्टताओं के बारे में निश्चित नहीं है। –
@Gili: मुझे पता है कि जावा 8 के लिए टाइप अनुमान को बेहतर बनाने के लिए कुछ काम चल रहा है ... यह _may_ कुछ ऐसा है जो बेहतर नियमों के साथ अनुमान लगाया जा सकता है, मुझे यकीन नहीं है। – ColinD