Java while循环变量从外部访问

Java while循环变量从外部访问,java,variables,Java,Variables,如何从外部访问while循环中的变量?在循环外部声明变量。a)不要。这是个坏主意 public String doIt() { StringBuilder builder = new StringBuilder(); for (int i = 0; i < 100; i++) { builder.append("ponies "); } return builder.toString(); } (b) 在循环之外定义它 int x; whi

如何从外部访问while循环中的变量?

在循环外部声明变量。

a)不要。这是个坏主意

public String doIt() {
    StringBuilder builder = new StringBuilder();
    for (int i = 0; i < 100; i++) {
        builder.append("ponies ");
    }
    return builder.toString();
}
(b) 在循环之外定义它

int x;
while(something){
    x = somethingElse;
}

始终在有意义的范围内声明变量。如果要在循环内部和外部引用变量,则必须在循环外部声明该变量

public String doIt() {
    StringBuilder builder = new StringBuilder();
    for (int i = 0; i < 100; i++) {
        builder.append("ponies ");
    }
    return builder.toString();
}
公共字符串doIt(){
StringBuilder=新的StringBuilder();
对于(int i=0;i<100;i++){
建造商。附加(“小马”);
}
返回builder.toString();
}

缩小变量的范围,使其仅在需要时可见,这是一个很好的做法。

Re(a):建议删除答案中的该部分。这是一件非常合理的事情。就像编程中几乎所有的东西一样,它也可以被滥用,但不一定是错的。在命令式语言中,这就是如何使用循环构造来构建状态。我同意这有时是必要的。