关于String赋值问题

如图都没有给String赋值,为什么第一个可以不给String赋值,而另一个没有赋值就报错?到底什么时候适合给String赋值?

55f9feb300014f7004100307.jpg

55f9feb30001ec6603710339.jpg


zongge
浏览 1435回答 1
1回答

无动于衷

报错不是因为String xx没有赋值!而是你switch语句有些问题!语法上是没有问题的,但这里有一个逻辑问题。一开始你的String xx没有赋值,最后你System.out.println(xx),那么这之间你必须给xx赋值,否则会报错,对吧。那么看一下你中间部分的switch语句。如果这里的today不是"一",是"八",因为你没有给today任何限制,虽然你设计时想的是一个星期只有七天。那么,并没有这种case,你写的 xx=? 一条都没有执行就会跳出switch语句。那就导致xx没有赋值,System.out.println(xx)就会报错。也就是说,java认为存在xx没有赋值的情况,逻辑上有错误,就会报错。解决的办法是:        在最后一个break后面加上:default:xx="输入日期不合理";        让所有的情况,xx都会得到赋值。这样就可以了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java