Je sais que c'est simple, mais je n'ai pas trouvé de liste de symboles et de leur signification sur le site Web des développeurs Android. Je veux juste savoir ce que c'est? symbole signifie, en général, en Java; et si sa signification change selon le cas.

Par exemple, si la signification change si elle est utilisée dans (AdapterView Parent, View view, int position, long id), par opposition à une autre utilisation; Je n'imaginerais pas que ce soit le cas, mais je me suis dit que je demanderais au cas où.

Merci!

1
Nathan 24 févr. 2021 à 05:52

1 réponse

Meilleure réponse

C'est un joker. est identique à - tout type. La façon dont les caractères génériques sont généralement utilisés est (toute classe qui étend Foo) ou (toute classe qui est un supertype de Foo)

Voici un exemple d'utilisation de :

Considérez la méthode suivante, printList:

public static void printList(List<Object> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}

Le but de printList est d'imprimer une liste de n'importe quel type, mais il ne parvient pas à atteindre cet objectif - il n'imprime qu'une liste d'instances Object; il ne peut pas imprimer Liste, Liste, Liste, etc., car ce ne sont pas des sous-types de Liste. Pour écrire une méthode générique printList, utilisez List :

public static void printList(List<?> list) {
for (Object elem: list)
System.out.print(elem + " ");
System.out.println();
}

Parce que pour tout type concret A, List est un sous-type de List , Vous pouvez utiliser printList pour imprimer une liste de n'importe quel type:

List<Integer> li = Arrays.asList(1, 2, 3);
List<String> ls = Arrays.asList("one", "two", "three");
printList(li);
printList(ls);

Consultez ceci pour plus d'informations: Caractères génériques (Les didacticiels Java ™> Apprentissage du langage Java > Génériques (mis à jour))

5
shirley 24 févr. 2021 à 02:57