java中怎么比较两个字符串

char a;比如; 我想if(a.equals("你"||"好"))为什么不行?
2025-03-29 00:44:55
推荐回答(4个)
回答1:

char a是字符型

“你“||”好”是字符串(String)的类型。单引号 '你'  ‘好’ 这才是字符型

equals是String比较内容是否一致的常用方法

基本数据类型比较是否相等应该用 ==


例子

char a = '你';
if(a == '你'){
    ....
}

 


如果想把char变成String。

最简单的方式

                char a = '你';
                //让字符类型链接一个字符串类型,自动转换为字符串String
String b = a+"";
System.out.println(b);
if(b.equals("你"||"好")){
    ....
}

 复杂的方式一  利用字符串的方法来实现

        String  str1 = String.valueOf('你');

复杂的方式二  利用char的包装类型Character的方法来实现

        String   str2 = Character.toString('你');

回答2:

equals方法只能比较相同类型的对象。你可以试试这样:
char a;
if(a.equals('你'||'好'))
或者
String a;
if(a.equals("你"||"好"))

回答3:

~~ toString函数重载

回答4:

String a;
if(a.equals("你")||a.equals("好"))