A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© jiangweibin2573 中级黑马   /  2014-8-9 21:57  /  2409 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在以前学习中,总有这么个概念。非0就是真,0就是假,那我的程序出错在那里?java不支持这种写法吗?

  1.         public static void main(String[] args) {
  2.                 int x = 1;
  3.                 while(1){
  4.                         System.out.println("hello world");
  5.                 }
  6.                 boolean y = true;
  7.                 while(y){
  8.                         System.out.println("hello java");
  9.                 }
  10.         }
复制代码

12 个回复

正序浏览
月夜小楠 发表于 2014-8-9 22:24
java中boolean类型只有true和false,不能像C语言那样while(0)或while(1),这样编译通不过的。 ...

正解{:2_40:}
回复 使用道具 举报
试试把while(1)改成while(x==1),因为while(1)不能判断1是真还是假,而while(x==1)可以。另外这是个无限循环 会一直输出 hello world
回复 使用道具 举报
C中才能用吧
回复 使用道具 举报
boolean类型只有true和false,这样编译通不过的,所以while里错误
回复 使用道具 举报
JAVA中  只有boolean类型是 true  or   false
回复 使用道具 举报
while后面的括号里只能是boolean表达式,或Boolean变量,
回复 使用道具 举报
JAVA没有说是1就是true的规定。请使用true与false判断
回复 使用道具 举报
while循环的条件必须是布尔类型的,而x是int类型,所以便于错误。将while(1)改为while(1 = 1)就可以了。1就是真,0就是假。这个概念是在数据库中用到的概念。
回复 使用道具 举报
额,while语句里面的必须是条件表达式,条件表达式的结果只能是true或者false,不能写其他的
回复 使用道具 举报
你这是C的风格,JAVA没有说是1就是true的规定。请使用true与false判断

评分

参与人数 1黑马币 +5 收起 理由
fantacyleo + 5 正解。学Java必须改掉C的一些习惯..

查看全部评分

回复 使用道具 举报
java中boolean类型只有true和false,不能像C语言那样while(0)或while(1),这样编译通不过的。

评分

参与人数 1黑马币 +5 收起 理由
fantacyleo + 5 正解。学Java必须改掉C的一些习惯.

查看全部评分

回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马