Java 从静态初始值设定项返回
可能重复:Java 从静态初始值设定项返回,java,Java,可能重复: 有没有一种方法可以退出Java中的静态初始化器,类似下面的代码(不编译): ps:是的,我知道,这个例子毫无意义,I==0在这一点上总是错误的,但这不是重点 一种快速而肮脏的方法是,将错误地用于循环,并将其break语句用于流控制: static { int i = 0; for(;;) { if(i == 0) break; // more code // more conditio
有没有一种方法可以退出Java中的静态初始化器,类似下面的代码(不编译):
ps:是的,我知道,这个例子毫无意义,
I==0
在这一点上总是错误的,但这不是重点 一种快速而肮脏的方法是,将错误地用于循环,并将其break
语句用于流控制:
static
{
int i = 0;
for(;;)
{
if(i == 0)
break;
// more code
// more conditions
// don't forget the final break
break;
}
}
改用System.exit(0)
。@Eng.Fouad我不想退出,只需继续执行代码的其余部分-重复部分回答了为什么不可能,谢谢。然后,在实例块上使用一个标签并打破该标签static{label:{if(i==0)break label;i=0}
@Eng.Fouad这是一个难看的hack,但它确实有效!使用标签更干净:)。。我想+1这个答案,但今天剩下的时间我的票数都快用完了:):-)这就是为什么我说得又快又脏^^
static
{
int i = 0;
for(;;)
{
if(i == 0)
break;
// more code
// more conditions
// don't forget the final break
break;
}
}