سؤال

انا اكتب:

public interface Map <Key, Value> cells;

يشكو Eclipse ويقول "{متوقع".

public interface Map <Key, Value> cells{};

ثم أكتب ما سبق في Eclipse ويشكو من "خطأ بناء الجملة على" الخلايا "الرمزية ، وحذف هذا الرمز المميز".

ماذا على الأرض يجب أن أفعل؟ Google ليست صديقي هنا لأنني لا أستطيع العثور على قصاصات التعليمات البرمجية لوضع بناء جملة هذا.

هل كانت مفيدة؟

المحلول

هل تحاول إعلان متغير عضو اسمه cells؟ إذا كان الأمر كذلك ، فإن طريقة القيام بذلك هي:

public class Foo {

   // ...

   public Map<Type1, Type2> cells;

   // ...

}

إذا كنت تحاول إعلان متغير ضمن طريقة ما ، فقم بذلك:

public class Foo {

    // ...

    public void myMethod() {
        // ...

        Map<Type1, Type2> cells;

        // ...
    }

    // ...
}

تعديل: يبدو أنك مرتبك Map <Key, Value>, ، لذلك سأحاول شرح.

Key هو عنصر نائب لنوع البيانات Map سوف يستخدم الكائن لمجموعة من المفاتيح. بصورة مماثلة، Value هو عنصر نائب لنوع البيانات الذي ستستخدمه لمجموعة من القيم. مزيج صالح سيكون ، على سبيل المثال ، Map <String, Integer>. هذا يعني أن ال Map سيقوم الكائن بتخطيط مجموعة من String الكائنات لمجموعة من Integer أشياء.

نصائح أخرى

ربما تقصد

public Map<Key, Value> cells;

ال interface الكلمة الرئيسية تستخدم ل حدد واجهة. implements يستخدم عند إعلان أ class هذا ينفذ أ interface.

ماذا تحاول أن تفعل ؟ تحديد نوع جديد أو تحديد عضو في نوع الخريطة؟

إذا كنت تحدد عضوًا ، فلن تحتاج إلى الكلمة الرئيسية للواجهة قبل ذلك. تحتاج فقط إلى واجهة إذا كنت تحدد نوعًا جديدًا.

انت تريد:

public Map<Key,Value> cells;

لإنشاء متغير يسمى خلايا من نوع الخريطة.

public interface Map<Key,Value> cells;

يعلن (بشكل غير صحيح) واجهة محددة من قبل المستخدم تسمى MAP - ربما لا ما تحاول القيام به.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top