当我尝试在循环或if声明之外使用变量“ encryptionKey”时,会引发编译错误“找不到符号”。
else if (inputPlainResultArray.length == 4 || inputPlainResultArray.length == 9 || inputPlainResultArray.length == 16)
{
char[] encryptionKey = inputPlainResultArray;
System.out.print("Encryption Key: ");
System.out.print(encryptionKey);
System.out.println();
System.out.println();
System.out.println();
System.exit(0);
}
}
}
最佳答案
因为它是局部变量,所以您不能在声明它的作用域之外访问它。
您应该看一下on which types of variables exists in Java
在您的特定情况下,您可以使用实例变量,因此可以在方法外声明char[] encryptionKey
:
public class YourClass{
char[] encryptionKey;
// other methods, fields, etc.
}
并且您将可以在此类的任何位置使用此变量,或在方法内声明
else-if
范围之外的位:char[] encryptionKey = null;
if (...){}
else if (...){
char[] encryptionKey = inputPlainResultArray;
}
因此它对于此特定方法内的所有实体都是可见的。
关于java - 如何在循环之外使用此变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32201523/