正在回答
3回答
你好!Unicode是包括ASCII码值的,比ASCII码值表示的字符更多。具体Unicode的值是多少需要去查看Unicode编码表,可以在网络上搜索查看,一般情况下我们不需要查看,只要知道comparetTo()方法的返回值为0表示字符串相等,不为0表示不相等就可以了。
关于比较的返回值,是他们Unicode编码值的差值,比如s1为"abc",s2为"bcd",因为第一个字符就不相等,那么返回值就是a和b的Unicode编码的差值,即a-b的值。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
好帮手慕珊
2019-06-21 18:03:21
你好!看一下下面的代码,s1和s2进行比较时,是把"abc"和"bcd"进行比较,这两个字符串比较时,是字符串中的每个字符依次进行比较,也就是先比较a和b,它们的比较依据字典顺序,也就是Unicode编码的字符集中的顺序。比如a在字符集中的顺序比b靠前,也可以理解为a比b小,所以返回值是负数。如果第一个字母相等,那么就继续比较后面的字母。
同样如果返回值是0,表示两个字符串相等,比如s2也为"abc"时,n的值就是0。同理,如果s2.compareTo(s1);因为s2的值比s1大,返回值是正数。因此,我们可以通过返回值来判断两个字符串是否相等。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星