Java 找不到现有变量的符号 publicstaticvoidmain(字符串[]args){ int[]数组={4,5,7,1,5,4}; 对于(int j=0;jmin){ min=数组[j]; } } 系统输出打印(分钟); } }
你能告诉我为什么找不到敏吗 Min正在for循环中声明。如果您将声明移到外面,它应该可以正常工作 例如:Java 找不到现有变量的符号 publicstaticvoidmain(字符串[]args){ int[]数组={4,5,7,1,5,4}; 对于(int j=0;jmin){ min=数组[j]; } } 系统输出打印(分钟); } },java,Java,你能告诉我为什么找不到敏吗 Min正在for循环中声明。如果您将声明移到外面,它应该可以正常工作 例如: public static void main(String[] args) { int [] array= {4,5,7,1,5,4}; for(int j=0;j<array.length;j++) { int min; min=array[0]; if(array[j]&g
public static void main(String[] args) {
int [] array= {4,5,7,1,5,4};
for(int j=0;j<array.length;j++) {
int min;
min=array[0];
if(array[j]>min) {
min=array[j];
}
}
System.out.print(min);
}
}
publicstaticvoidmain(字符串[]args){
int[]数组={4,5,7,1,5,4};
int min=数组[0];
对于(int j=0;jmin){
min=数组[j];
}
}
系统输出打印(分钟);
}
}
min
已在for循环中声明
删除intmin编码>并将以下内容置于for循环之外:
public static void main(String[] args) {
int [] array= {4,5,7,1,5,4};
int min=array[0];
for(int j=0;j<array.length;j++) {
if(array[j]>min) {
min=array[j];
}
}
System.out.print(min);
}
}
因为它是一个局部变量,所以必须初始化它
同时移动min=array[0]代码>也在for循环外部。因为min变量的作用域在for块内部。您需要在循环外部声明min
(因为作用域):
int[]数组={4,5,7,1,5,4};
int min=数组[0];//在循环外初始化min。
for(int j=0;jMin是for循环的局部值
int [] array= {4,5,7,1,5,4};
int min = array[0];// initialize min outside the loop.
for(int j=0;j<array.length;j++) {
//min=array[0]; If you leave this here, you will 'reset' min each time
if(array[j] < min) { // use "<" so that min will be the minimum
min=array[j];
}
}
System.out.print(min);
int[]数组={4,5,7,1,5,4};
int min=数组[0];
对于(int j=0;jmin){
min=数组[j];
}
}
系统输出打印(分钟);
如果(数组[j]只是将min
移出for循环没有帮助,那么它不应该是吗?每次都会覆盖min
。同时将min=array[0];
移出for循环。您试图从声明它的不同范围访问min
您正在为
-循环的中声明它:
int [] array= {4,5,7,1,5,4};
int min = array[0];
for(int j=0;j<array.length;j++) {
if(array[j]>min) {
min=array[j];
}
}
System.out.print(min);
我让你的代码在语法上更加甜美
另外,您的代码中是否存在逻辑错误?您调用变量min
,但您正在将大于min
的数字分配给min。听起来您在寻找最大值,而不是最小值?这可能有效,也可能无效。您正在将min
重置为数组[0]
每次迭代。是的,在我看到所有可能有效或可能无效的新答案后,刚刚修复了这个问题。您正在将min
重置为array[0]
每次迭代。这可能有效,也可能无效。您仍在将min
重置为array[0]
每次迭代。为了更全面地理解此处给出的答案,您应该了解所谓的“变量范围”。我相信您的教科书有很好的解释。您也可以使用谷歌了解更多信息。
int [] array= {4,5,7,1,5,4};
int min = array[0];
for(int j=0;j<array.length;j++) {
if(array[j]>min) {
min=array[j];
}
}
System.out.print(min);
for(int j=0; j < array.length; j++) {
int min;
min=array[0];
if(array[j]>min) {
min=array[j];
}
} // min can't be used after this.
int min = array[0];
for (int i : array) {
if (i > min) {
min = i;
}
}
System.out.println("The min is: " + min);