我想從沒有字符'a'作為最后一個字母的陣列串列中回傳名稱,我試圖回圈并從每個名稱中找到最后一個字母。
List<String> names = new ArrayList<>();
names.addAll(Arrays.asList("Tomek", "Ania", "Krzys", "Tomek"));
String last = names.get(names.size());
int lastLetter = last.length() - 1;
for (String word : names) {
if (lastLetter != 'a' ) {
System.out.println(names);
}
}
}
uj5u.com熱心網友回復:
List<String> toReturn = new ArrayList<>();
for (String word : names) {
char lastLetter = word.toLowerCase().charAt(word.length() - 1);
if (lastLetter != 'a') {
toReturn.add(word);
}
}
return toReturn;
uj5u.com熱心網友回復:
如果您使用的是 Java 8 及更高版本,則可以使用流來過濾名稱,如下所示。
List<String> names = Arrays.asList("Tomek", "Ania", "Krzys", "Tomek");
List<String> updated = names.stream()
.filter(s -> s.charAt(s.length() - 1) != 'a')
.collect(Collectors.toList());
updated.forEach(System.out::println);
在上面的代碼中names.stream(),將陣列轉換為流,filter()并將根據字串的最后一個字符的 preticate 過濾流,'a'然后collect將使用過濾后的串列創建一個新串列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/435902.html
