Java 有人能详细解释一下下面的代码吗?
这是我见过的第一个代码。我很好奇,当最后一行代码只使用ch[I]-“a”+“a”编写时,它是如何将从a到z的所有字符都变成大写的 该行: 由于大写字母与其小写形式之间存在常量差异,因此将ch[i]设置为其关联的大写字母 对于通信方式,线路可重新书写为:Java 有人能详细解释一下下面的代码吗?,java,Java,这是我见过的第一个代码。我很好奇,当最后一行代码只使用ch[I]-“a”+“a”编写时,它是如何将从a到z的所有字符都变成大写的 该行: 由于大写字母与其小写形式之间存在常量差异,因此将ch[i]设置为其关联的大写字母 对于通信方式,线路可重新书写为: 通过添加此常量差,该行将生成小写字母的大写字符。您认为它的作用是什么?在简单的“a”-“z”字符范围内,“a”和“a”之间的差异与任何小写字母与其大写等效字母之间的差异相同。这还假设使用的字母所需大小写仅为字母。Java使用字符集的UTF-16字
通过添加此常量差,该行将生成小写字母的大写字符。您认为它的作用是什么?在简单的“a”-“z”字符范围内,“a”和“a”之间的差异与任何小写字母与其大写等效字母之间的差异相同。这还假设使用的字母所需大小写仅为字母。Java使用字符集的UTF-16字符编码。与ASCII的任何相似之处都无关紧要。
if (ch[i] >= 'a' && ch[i] <= 'z') {
// Convert into Upper-case
ch[i] = (char)(ch[i] - 'a' + 'A');
}
ch[i] = (char)(ch[i] - 'a' + 'A');
ch[i] = (char)(ch[i] + ('A' - 'a'));