【java蓝桥杯大赛基础题】字符串的字典序比较

 编程实现两个字符串s1和s2的字典序比较。(保证每一个字符串不是另一个的前缀,且长度在100以内)。若s1和s2相等,输出0;若它们不相等,则指出其第一个不同字符的ASCII码的差值:如果s1>s2,则差值为正;如果s1<s2,则差值为负。

样例输入

java basic

样例输出

8

对于初学者来说可能并不理解对字符串s1和s2的字典序比较,我们今天就来说说什么是字典序比较?

字典序比较就是基于字符串中各个字符的 Unicode 值。

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode给每个字符提供了一个唯一的数字,不论是什么平台、不论是什么程序、不论是什么语言。Unicode是为了解决传统字符编码方案的局限而产生的,为每种语言中的每个字符都设定了统一唯一的二进制编码,以实现跨语言、跨平台进行文本转换、处理的要求。


Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。目前的Unicode字符分为17组编排,0x0000 至 0x10FFFF,每组称为平面(Plane),而每平面拥有65536个码位,共1114112个。然而目前只用了少数平面。UTF-8、UTF-16、UTF-32都是将数字转换到程序数据的编码方案。

可以使用String类的compareTo方法进行处理

s1和s2进行相比,当s1比s2大时,输出一个正整数;当s1比s2小的时候输出一个负整数;s1和s2相等时输出0。字符串里面很多内容(例如:数字、字母、符号)都可以进行比较。

本题的代码如下:

import java.util.Scanner; public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub          Scanner sc=new Scanner(System.in);
         String s1=new String(sc.next());
         String s2=new String(sc.next());
         System.out.println(s1.compareTo(s2));
    }
}


#java#
全部评论
java基础题了解大全
1 回复 分享
发布于 2022-08-27 13:35 河南

相关推荐

把实习生当正职使昨天第一天就加班,晚上连口饭都没吃上,以后日子咋过,我不想干了
码农索隆:实习不怕忙,就怕干的活重复且没难度,要干就干那种有深度有难度的任务,这样才能快速的提升
实习吐槽大会
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-30 18:19
个个985的硕士闭着眼睛都有15k以上的月薪,天天嚷嚷着研究生白度读了,天天嚷嚷着反向读研了........
MMMJC:不读研22本科出去的基本都拿28k呢,你不能用25的研究生和25的本科生比然后说没反向读研,而是25研和22本比呀
点赞 评论 收藏
分享
每晚夜里独自颤抖:你cet6就cet6,cet4就cet4,你写个cet证书等是什么意思。专业技能快赶上项目行数,你做的这2个项目哪里能提现你有这么多技能呢
点赞 评论 收藏
分享
06-19 19:06
门头沟学院 Java
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务