想请教,若是局部变量一开始宣告时未初始化,
但在for循环中有给予该变量初始化值,循环时也有赋值给该变量,且在循环中也可以打印出该变量,为何出循环后又会跳出该变量未初始化的编译错误讯息呢?
在for循环内不是已初始化并赋值给该变量了吗?
如下例:
public static void main(String args[]){
int arr[]={40,30,20};
int min;
for(int i=0;i<arr.length;i++)
{
min=arr[i];
for(int j=i+1;j<arr.length;j++)
{
if(arr[j]< min)
{
min=arr[j];
}
}
System.out.println(min); //在for循环中min值打印的出来
}
System.out.println(min); //但若在此打印则会显示min未初始化的编译错误
再麻烦各位神人解惑了!