关boolean 变量

chenhonghong 2008-04-03 11:15:33
定义一个变量 boolean end;
这个end 有没有默认值? 还是默认为true?
...全文
159 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
kugou1314 2008-05-01
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 key_hua 的回复:]
引用 3 楼 rypgood 的回复:
得看你是在什么情况
如果你的end是类成员变量,那么默认为false
如果是方法里面的局部变量,那么它没有默认值,得自己设置
[/Quote]
枫叶rain 2008-04-04
  • 打赏
  • 举报
回复
看你把boolean放在什么地方了
如下正确的代码
public class Bool {

boolean x;

public void aa() {
if (x) {
System.out.println("true");
} else {
System.out.println("false");
}
}

/**
* @param args
*/
public static void main(String[] args) {
Bool b = new Bool();
b.aa();

}

}

默认值是false
key_hua 2008-04-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 rypgood 的回复:]
得看你是在什么情况
如果你的end是类成员变量,那么默认为false
如果是方法里面的局部变量,那么它没有默认值,得自己设置
[/Quote]
chenhonghong 2008-04-04
  • 打赏
  • 举报
回复
奇怪 在jbuilder中我调试的结果end默认为true 怎么回事啊 难到我有什么地方理解错了
public void num(int i){
String s = null;
s=String.valueOf(i);
if(end){
resultField.setText("0");
end=false;

}
if((resultField.getText()).equals("0")){
resultField.setText(s);

}
else{
str = resultField.getText() + s;
resultField.setText(str);

}
anqini 2008-04-04
  • 打赏
  • 举报
回复
得看是什么变量的,假如说是成员变量,你实例化的时候给它初始化,并给它附默认值false,
假如说是局部变量,那是用前必须给它附值,不然编译出错
isk_java 2008-04-04
  • 打赏
  • 举报
回复
三楼正解!
studyinginjava 2008-04-04
  • 打赏
  • 举报
回复
如果是类成员则可以不事先声明,他默认的是false,如果是在一个方法里定义的成员,则必须先要初始化后才能使用
chensjmail 2008-04-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 rypgood 的回复:]
得看你是在什么情况
如果你的end是类成员变量,那么默认为false
如果是方法里面的局部变量,那么它没有默认值,得自己设置
[/Quote]
kingssq 2008-04-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 rypgood 的回复:]
得看你是在什么情况
如果你的end是类成员变量,那么默认为false
如果是方法里面的局部变量,那么它没有默认值,得自己设置
[/Quote]
anyonetff 2008-04-03
  • 打赏
  • 举报
回复
如果用Boolean对象来定义,那么他是null!
如果是用boolean关键字,那么他是false!

其实,boolean,int,double这样的关键字,在编译后都会映射到java.lang中的那些对象,但是它们都不能为null,这就是特殊性。
rypgood 2008-04-03
  • 打赏
  • 举报
回复
得看你是在什么情况
如果你的end是类成员变量,那么默认为false
如果是方法里面的局部变量,那么它没有默认值,得自己设置
chenhonghong 2008-04-03
  • 打赏
  • 举报
回复
谢谢
happyzhy2004 2008-04-03
  • 打赏
  • 举报
回复
编个小程序测试一下:

public class test
{
public static void main(String args[]) {
Boolean end;
if (end == true)
{
System.out.println("Yes");
} else {
System.out.println("No");
}
}
};

编译时出错,提示“可能尚未初始化变量end”。
因此这个end是没有默认值的。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧