中易网

java里关于判断字符串长度的一个问题

答案:4  悬赏:20  
解决时间 2021-02-18 04:40
代码内容大概是这样的:
System.out.println("请输入姓名:");
Scanner input = new Scanner(System.in);
String stuName = input.nextLine();
System.out.println(stuName.length());//输出1
if(stuName.length() == 0);
{
System.out.println(stuName.length());//输出2
stuName = "缺";
System.out.println(stuName.length());//输出3
}
System.out.println(stuName.length());//输出4

为什么这段代码执行的结果会是:
请输入姓名:
hehe (我在控制台输入的)
4 (这时候字符串长度是4没错啊)
4 (可为什么判断长度为0的if语句居然通过了)
1 (把字符串内容变成"缺")
1 (同上)
最佳答案
你的if(stuName.length() == 0);{ System.out.println(stuName.length());//输出2 stuName = "缺"; System.out.println(stuName.length());//输出3}

其中if(stuName.length() == 0);此处多了一个分号!!!!看到没?
全部回答
帅哥你注意到你if后面的分号没,你分表示你这语句执行完了。而你后面的在一个块里面所以会执行
if(stuName.length() == 0); 这句话相当于为空的话 ,什么也不执行。 下面大括号的代码无论如何都能执行。
下面是string类的substring方法的简介: substring方法 该方法的作用是取字符串中的“子串”,所谓“子串”即字符串中的一部分。例如“23”是字符串“123”的子串。 字符串“123”的子串一共有6个:”1”、”2”、”3”、”12”、”23”、”123”。而”32”不是字符串”123”的子串。 例如: string s = “test”; string s1 = s.substring(2); 则该代码的作用是取字符串s中索引值为2(包括)以后的所有字符作为子串,则字符串s1的值是”st”。 如果数字的值和字符串的长度相同,则返回空字符串。例如: string s = “test”; string s1 = s.substring(4); 则字符串s1的值是””。 如果需要取字符串内部的一部分,则可以使用带2个参数的substring方法,例如: string s = “teststring”; string s1 = s.substring(2,5); 则该代码的作用是取字符串s中从索引值2(包括)开始,到索引值5(不包括)的部分作为子串,则字符串s1的值是”sts”。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
急!! 求诗歌朗诵稿 有关面对挫折 笑对人生
警察的综合管理类。
五彩艺术地址有知道的么?有点事想过去
我女朋友在电厂上班、请问电厂的待遇好吗 ?
一脸孤疑的意思
沈阳第116中学在哪
求秋元麻友花简介,知道的兄弟告诉我,谢谢!
中通快递(开远公司)地址在什么地方,我要处理
男朋友哪方面不行怎么办
724*健康平台保健品保真吗
小雨在比例尺是一比二百五十万的地图上量得两
怎么查看vgm文件
Microsoft office excel遇到问题需要关闭,我
蜜汁叉烧怎么做如何
亲情、友情爱情的定义是什么?
推荐资讯
云鼎鼎牛肉拉面地址有知道的么?有点事想过去
停车场(胥塘春晓南)地址在什么地方,我要处理
一口鲜水果店在哪里啊,我有事要去这个地方
联想m.2固态硬盘谁家制造的
每次和朋友一起出去吃饭她总是会开玩笑说你请
大话西游3白骨怎么加点?
李记特色冒菜德源老店在哪里啊,我有事要去这
7·23动车追尾事故,话说有多少人被活埋了
创艺宝贝艺术团地址在什么地方,想过去办事
外地人在上海上了外地牌还能上回上海牌吗
我和分手后的白羊女友,最后一次谈话,她让我
暑假英文词组除了summer holiday 还有什么
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?