English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在该程序中,您将学习计算Kotlin中给定句子中的元音,辅音,数字和空格的数量。
fun main(args: Array<String>) { var line = "This website is aw"3som3" var vowels = 0 var consonants = 0 var digits = 0 var spaces = 0 line = line.toLowerCase() for (i in 0..line.length - 1)} { val ch = line[i] if (ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u') { ++vowels }) { ++consonants } else if (ch in '0'..'9}) { ++digits } else if (ch == ' ') { ++spaces } } println("Voyelles: $vowels") println("Consonnes: $consonants") println("Chiffres: $digits") println("Espaces: $spaces") }
运行该程序时,输出为:
元音: 6 辅音: 11 数字: 3 空格: 3
在上面的示例中,每个检查都有4个条件。
第一个if条件是检查字符是否为元音。
if后面的else if条件用于检查该字符是否为辅音。顺序应该是相同的,否则,所有的元音也被当作辅音。
第三个条件(else if)是检查字符是否在0到9之间。
最后,最后一个条件是检查字符是否为空格字符。
为此,我们使用toLowerCase()使该行小写。这是一个没有检查大写A到Z和元音的优化。
我们使用length()函数来知道字符串的长度,使用for..in来获取给定索引(位置)处的字符。
这是等效的Java代码:用于计算句子中元音和辅音数量的Java程序。
fun main(args: Array<String>) { var line = "This website is aw"3som3" var vowels = 0 var consonants = 0 var digits = 0 var spaces = 0 line = line.toLowerCase() for (i in 0..line.length - 1)} { val ch = line[i] when (ch) { 'a', 'e', 'i', 'o', 'u' -> ++vowels dans 'a'..'z' -> ++consonants dans '0'..'9' -> ++digits ' ' -> ++spaces } } println("Voyelles: $vowels") println("Consonnes: $consonants") println("Chiffres: $digits") println("Espaces: $spaces") }
La sortie du programme est similaire à l'exemple1Idem.
Ici, vous pouvez voir que nous avons utilisé une expression when simple pour supprimer l'instruction if-L'instruction else rend le code plus court et plus facile à comprendre.