Java语言比较字符串大小的规则是什么,为什么10比2还要大?是不是Java语言出现了漏洞?
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
Java语言比较字符串大小的规则是什么,为什么10比2还要大?
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
关注
纠正一下,不是 Java 语言的漏洞,应该是楼主理解错误了:System.out.println("10".compareTo("2")); 返回的是 -1 ,字符串 “10” 是比 字符串“2”小的。原理请看 String 类的 compareTo 源码:
public int compareTo(String anotherString) { int len1 = value.length; int len2 = anotherString.value.length; int lim = Math.min(len1, len2); char v1[] = value; char v2[] = anotherString.value; int k = 0; while (k < lim) { char c1 = v1[k]; char c2 = v2[k]; if (c1 != c2) { return c1 - c2; } k++; } return len1 - len2; }
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2018-10-09 19:12回答 8 已采纳 ``` String time1 = "12:21"; String time2 = "07:18"; System.out.println(time1.compareTo(time2));
- 2019-10-10 00:52回答 2 已采纳 基于什么需求要比较字符串中所有数字的大小呢? 试试换种思路,直接将数值存储到 List 中,用 Collections 集合工具的 sort 排序完成。
- 2020-06-20 07:33回答 1 已采纳 直接考虑用字符串的替换 replace \\n 换成 \n 就可以了吧。
- 2021-07-22 03:25m明月Java3的博客 按字典规则比较字符串大小描述格式样例题解及注释 描述 按照字典规则比较两个英文字符串的大小,基本规则如下: (1)字符串左对齐比较 (2)字母无大小写对应关系时忽略大小写,比如’B’不仅大于’A’,也大于’a...
- 2019-01-07 23:35回答 4 已采纳 首先,你是要在输入完成所有字符串后显示还是边输入边显示 输入完成显示:不会就先百度找下String.split()方法,字符串转数组 边输入边显示:监听输入内容含有"|",截取字符串显示 文
- 2021-01-11 14:01回答 1 已采纳 redis中用int来修饰len字段,int为4个字节,也就是32位,那么最大能表示2^32次方。所以2^32/8/1024/1024=512m
- 回答 5 已采纳 如果你的字段‘import_date_day’是string类型,那么比较应该是按照string比的,但是该字段的format可以支持类似于日期的比较,因为年在前,月在当中,日在最后。这样按照字符串比
- 2021-03-15 16:57找寻生命的意义的博客 一、简介字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串。创建字符串最简单的方式如下:String greeting = "Hello world!";在代码中遇到字符串常量时,这里的值是"Hello...
- 2015-10-31 02:24回答 1 已采纳 汇编语言 输入字符串并输出所有非字母字符的前后导字符----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!
- 2018-09-11 23:03回答 3 已采纳 typeof 变量 会显示对应的类型 https://blog.csdn.net/z18842589113/article/details/53315910
- 2020-05-18 05:09回答 9 已采纳 只保留文字是指汉字么,那就可以遍历字符串,判断每个字符如果是汉字就追加,不是汉字就掠过,然后组成新的结果就可以了哦。
- 2022-05-14 03:19元代码Pro的博客 Java中的字符串类型 String StringBuilder和StringBuffer String与StringBuffer或StringBuilder的使用场景 String当中的常用方法 与String当中的字符内容有关的方法 与String内容比较有关的 介绍3个特殊方法 ...
- 2021-04-20 09:48编程小蓝的博客 因为字符串大小比较是对各字符的编码值逐个进行比较,"1"<"2",所以"10"<"2"。 不过这不是本文想要达到的目标,本篇文章会用一行代码,让文本中出现的(任意多组)数字序号可以按照数字顺序进行排序。 目录...
- 2024-04-19 16:44超酷的站长的博客 2、java中定义一个字符串数组方式如下:String[] str={AAA,BBB,CCC};string类型和其他基本类型相似,创建数组时,有上述两种方式。3、最好要有 config Tool 负责写配置文件。其他说明:定义一个公开类,在里面加...
- 2022-07-28 07:19秋之叶落殇的博客 在Java中定义一个字符串最简单的方法是用双引号把它包围起来。这种用双引号括起来的一串...1.直接定义字符串直接定义字符串是指使用双引号表示字符串中的内容,例如"HelloJava"、"Java编程"等。或者注意2.{............
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司