Language مبتدئ

يعمل عامل الماسة الآن مع الفئات المجهولة أيضاً.

✕ Java 7/8
Map<String, List<String>> map =
    new HashMap<String, List<String>>();
// anonymous class: no diamond
Predicate<String> p =
    new Predicate<String>() {
        public boolean test(String s) {..}
    };
✓ Java 9+
Map<String, List<String>> map =
    new HashMap<>();
// Java 9: diamond with anonymous classes
Predicate<String> p =
    new Predicate<>() {
        public boolean test(String s) {..}
    };
هل ترى مشكلة في هذا الكود؟ أخبرنا.
📏

قواعد متّسقة

الماسة تعمل في كل مكان — المُنشئات والفئات المجهولة على حدٍّ سواء.

🧹

تكرار أقل

وسائط النوع مُصرَّح بها مرة على اليسار، لا تُكرَّر أبداً.

🔧

مبدأ عدم التكرار

المترجم يعرف النوع بالفعل — لماذا تكتبه مرتين؟

الأسلوب القديم
تكرار وسائط النوع
الأسلوب الحديث
الماسة <>
منذ JDK
9
الصعوبة
مبتدئ
عامل الماسة مع الفئات المجهولة
متاح

الماسة مع الفئات المجهولة منذ JDK 9 (سبتمبر 2017).

قدّم Java 7 المعامل <> لكنه لم يعمل مع الفئات الداخلية المجهولة. أصلح Java 9 هذا فأصبح لا حاجة لتكرار وسائط النوع على الجانب الأيمن.

مشاركة 𝕏 🦋 in