Supposons que vous ayez un List<String> strings
dont vous voulez le premier élément.
Il existe plusieurs façons de le faire :
Java (pré-8) :
String firstElement = null;
if (!strings.isEmpty() && strings.size() > 0) {
firstElement = strings.get(0);
}
Java 8 :
Optional<String> firstElement = strings.stream().findFirst();
Goyave
String firstElement = Iterables.getFirst(strings, null);
Apache commons (4+)
String firstElement = (String) IteratorUtils.get(strings, 0);
Apache commons (avant 4)
String firstElement = (String) CollectionUtils.get(strings, 0);
Suivi par ou encapsulé dans les contrôles appropriés ou les blocs try-catch.
Kotlin :
Dans Kotlin, les deux Tableaux et la plupart des Collections (par exemple : Liste) ont un first
de la méthode. Votre code ressemblerait donc à quelque chose comme ceci
pour une liste :
val stringsList: List<String?> = listOf("a", "b", null)
val first: String? = stringsList.first()
pour un tableau :
val stringArray: Array<String?> = arrayOf("a", "b", null)
val first: String? = stringArray.first()
Suivi par ou encapsulé dans les contrôles appropriés ou les blocs try-catch.
Kotlin comprend également des moyens plus sûrs de le faire pour kotlin.collections
par exemple firstOrNull o getOrElse ou getOrDefault lors de l'utilisation de JRE8
6 votes
L'ensemble n'a pas de premier élément. Pour List : list.get(0) ;
0 votes
Lequel avez-vous, une liste ou un ensemble ? Les ensembles ne sont pas nécessairement dans un ordre particulier...
2 votes
Certains ensembles sont ordonnés, comme
TreeSet
.3 votes
Aussi, un ensemble avec exactement un élément a un "premier" élément.
0 votes
Essayez
CollectionUtils.get(Object,index)
de apache commons bibliothèque. Référence aquí