为了账号安全,请及时绑定邮箱和手机立即绑定

我有问题请教大神

https://img1.sycdn.imooc.com//5bfd4c6c000181c609330908.jpg

为什么输入American不能出来答案


正在回答

6 回答

打印一下s.nextLine()试试?  估计为null,if语句没进去

0 回复 有任何疑惑可以回复我~

这个问题很有意思,先说正解。

不要用两个if,用一个if...else...语句就对了

题主错误的原因是第一个if里的s.nextline()这个方法取刚输入的值,取到American判断和Chinese不符,第二个if再取值的时候其实你还没有重新输入任何值,所以第二个s.nextline()取不到值了。

1 回复 有任何疑惑可以回复我~

没有speak()方法吧

0 回复 有任何疑惑可以回复我~

加一行代码

String x=s.nextLine();

在System.out,println("请输出不同国家的人(如Chinese)")下面,把下面s.nextLine都用x替代

0 回复 有任何疑惑可以回复我~

输入语句要放在子对象方法里面实现,不能放在调用函数方法上

0 回复 有任何疑惑可以回复我~

1.speak()没有课执行的方法体
2.控制台输出可能带有空格 s.trim().length()   trim()去两端空格

0 回复 有任何疑惑可以回复我~
#1

慕勒2701546

s.trim().equals("")
2018-11-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530553    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

我有问题请教大神

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信