这段代码在java中是什么意思

j9per5c4  于 2021-06-30  发布在  Java
关注(0)|答案(4)|浏览(404)

这个问题在这里已经有答案了

(尖括号)在java中是什么意思(6个答案)
7年前关门了。
随机码:

// Getting All Contacts
public List<Contact> getAllContacts() {
    List<Contact> contactList = new ArrayList<Contact>();
    // Select All Query
    String selectQuery = "SELECT  * FROM " + TABLE_CONTACTS;

    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery(selectQuery, null);

    // looping through all rows and adding to list
    if (cursor.moveToFirst()) {
        do {
            Contact contact = new Contact();
            contact.setID(Integer.parseInt(cursor.getString(0)));
            contact.setName(cursor.getString(1));
            contact.setPhoneNumber(cursor.getString(2));
            // Adding contact to list
            contactList.add(contact);
        } while (cursor.moveToNext());
    }

    // return contact list
    return contactList;
}

看看上面写着什么

public List<Contact> getAllContacts() {

所以我想问,为什么它需要类“contact”内标签旁边的列表?有人能帮我吗?
我甚至试着用google搜索java中标签的用法,但什么也找不到。

rta7y2nd

rta7y2nd1#

不需要上课 Contact 返回类型的内部。事实上,在旧版本的java(jdk5之前)中,这是编写方法的唯一方法。

public List getAllContacts() {...}

问题是您不知道列表包含什么类型的类,泛型允许您指定这个类型。所以通过使用 <> 在本例中,可以指定列表包含的类 Contact .

public List<Contact> getAllContacts() {...}

通过使返回类显式化,它允许编译器执行类强制转换检查,并允许您编写更易于调试的代码,因为您知道该列表中的内容。

jbose2ul

jbose2ul2#

这就是所谓的“泛型”。在这段代码中,它的意思是“类型联系人列表”,这里有一个问题得到了很好的回答:java泛型:list,list,list<?>

c6ubokkw

c6ubokkw3#

它被称为泛型,从JDK5开始引入。java List 已泛化为允许开发人员指定类型(称为参数化类型)。这基本上可以翻译为“联系人列表”。您可以添加 Contact 进入列表并检索 Contact 从名单上。
遵循oracle网站上关于泛型的教程。

svgewumm

svgewumm4#

它不是一个标记,而是创建一个特定于适当类型的泛型类型的示例。 List<> 是一个通用列表;它可以包含任何东西。 List<Contact> 是一个列表,其中列表中的元素是 Contact 班级。
看到了吗http://docs.oracle.com/javase/tutorial/extra/generics/intro.html

相关问题