# Kotlin 程序：检查字符是否为字母

> 原文： [https://www.programiz.com/kotlin-programming/examples/alphabet](https://www.programiz.com/kotlin-programming/examples/alphabet)

#### 在此程序中，您将学习检查给定字符是否为字母。 这是在 Kotlin 中使用`if else`语句或`when`表达式完成的。

## 示例 1：使用`if`来检查字母

```kt
fun main(args: Array<String>) {

    val c = '*'

    if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z')
        println("$c is an alphabet.")
    else
        println("$c is not an alphabet.")
}
```

运行该程序时，输出为：

```kt
* is not an alphabet.
```

与 Java 一样，在 Kotlin 中，`char`变量存储字符的 ASCII 值（0 到 127 之间的数字）而不是字符本身。

小写字母的 ASCII 值从 97 到 122。大写字母的 ASCII 值从 65 到 90。

这就是原因，我们在`'a'`（97）与`'z'`（122）之间比较变量`c`。 同样，我们进行相同的操作以检查`'A'`（65）至`'Z'`（90）之间的大写字母。

以下是该程序的等效 Java 代码：[检查字符是否为字母的 Java 程序](/java-programming/examples/alphabet)

* * *

您可以使用*范围*代替比较来解决此问题。

## 示例 2：使用`if else`和范围来检查字母

```kt
fun main(args: Array<String>) {

    val c = 'a'

    if (c in 'a'..'z' || c in 'A'..'Z')
        println("$c is an alphabet.")
    else
        println("$c is not an alphabet.")
}
```

运行该程序时，输出为：

```kt
a is an alphabet.
```

* * *

您甚至可以使用`when`表达式来代替问题。

## 示例：使用`when`检查字母

```kt
fun main(args: Array<String>) {

    val c = 'C'

    when {
        (c in 'a'..'z' || c in 'A'..'Z') -> println("$c is an alphabet.")
        else -> println("$c is not an alphabet.")
    }
}
```

运行该程序时，输出为：

```kt
C is an alphabet.
```