碰到关于Java字符比较问题。。T_T

来源:百度知道 编辑:UC知道 时间:2024/06/20 09:59:18
在C语言里,标志符是ASCII编码的,
每个字符都有一个整型的ASCII值,所以字符能够进行比较
但是Java是Unicode编码,而且字符是占16位。。
我想问的是:要判断一个字符是不是字母要怎么写。
比如C语言里是这么写:
if ((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))
我在JCreator里这么写,它会报错说运算符&&不能应用于 boolean,char
那么在Java里是怎么样的?

说一下 是可以这么写的 它比较的同样的ASCII 这么写是对的 除非你在程序中有别的错误 我看你的if 语句 括号就不对 是中文的 看我下面写的 只是改了个括号而以
char ch = 'c';
if ((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z')) {
System.out.println("yes");
}

JAVA中那样写应该可以的!
我写了一个可以运行,没有错误提示!
class use{
void out(){
char ch = 'd';
if ((ch>='a'&&ch<='z')||(ch>='A'&& ch <= 'Z')){
System.out.println(ch);
}
}
}
public class x{
public static void main (String agrs[]){
use b= new use();
b.out();

}
}

对,思路没有错,应该是括号的问题

可以用正则表达式
if(ch.matches("[a-zA-Z]"))