Java 中的字元遞增
瀏覽人數:591最近更新:
1. 概述
在本教程中,我們將學習如何在 Java 中產生從「A」到「Z」的字元序列。我們將透過遞增 ASCII 值來完成此操作。
我們將使用for
迴圈和 Java 8 Stream API 中的IntStream
產生字元序列。
2.使用for
循環
我們將使用標準for
循環創建從“ A
”到“ Z
”的大寫字母列表:
@Test
void whenUsingForLoop_thenGenerateCharacters(){
List<Character> allCapitalCharacters = Arrays.asList('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
List<Character> characters = new ArrayList<>();
for (char character = 'A'; character <= 'Z'; character++) {
characters.add(character);
}
Assertions.assertEquals(alphabets, allCapitalCharacters);
}
每個字母在 ASCII 系統中都有一個獨特的編號。例如,“A”表示為 65,“B”表示為 66,“Z”表示為 90。
在上面的範例中,我們首先在for loop
中遞增每個字母的編號。然後,我們將其轉換為相應的 ASCII 字母。
最後,透過使用Assertions
類別的assertEquals()
方法,我們檢查產生的列表是否與所有大寫字元的預期列表相符。
3.使用Java 8 IntStream
使用 Java 8 IntStream
,我們可以產生從“A”到“Z”的所有大寫字母的序列:
@Test
void whenUsingStreams_thenGenerateCharacters() {
List<Character> allCapitalCharacters = Arrays.asList('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
List<Character> characters = IntStream.rangeClosed('A', 'Z')
.mapToObj(c -> (char) c)
.collect(Collectors.toList());
Assertions.assertEquals(characters, allCapitalCharacters);
}
在上面的範例中,使用 Java 8 中的IntStream
,我們產生從「A」到「Z」的字符,ASCII 值範圍為 65 到 90。
最初,我們將這些值映射到字符,然後將它們收集到一個列表中。
最後,我們使用Assertions
類別中的assertEquals()
方法來驗證產生的列表是否與所有大寫字母的預期列表一致。
4。結論
在這篇短文中,我們探討如何使用 Stream API 和for
迴圈來遞增字元的 ASCII 值並列印其對應的值。
與往常一樣,範例的原始程式碼可在 GitHub 上取得。
本作品係原創或者翻譯,採用《署名-非商業性使用-禁止演繹4.0國際》許可協議