Java String/Char charAt()比较

Kci*_*its 7 java comparison char charat

我已经看到了您可以使用该charAt()方法进行的各种比较.

但是,我真的不能理解其中的一些.

String str = "asdf";
str.charAt(0) == '-'; // What does it mean when it's equal to '-'?


char c = '3';
if (c < '9') // How are char variables compared with the `<` operator?
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

Pet*_*rey 13

//当它等于' - '时意味着什么?

每个字母和符号都是一个字符.您可以查看String的第一个字符并检查匹配项.

在这种情况下,您将获得第一个字符并查看它是否为减号.这个减号(char) 45见下文

// char变量与<运算符的比较如何?

在Java中,所有字符实际上都是16位无符号数.每个字符都有一个基于unicode的数字.例如'9'是字符(char) 57 此比较适用于任何小于9例如空格的代码的字符.

在此输入图像描述

您的字符串的第一个字符是'a'它是(char) 97如此(char) 97 < (char) 57是假的.