快速提问。有没有办法让这成为可能?
int array [] = new int [
(try {
Integer.parseInt (/*get string input here*/);
}
catch (NumberFormatException e){
//error handling here
)
];
答案 0 :(得分:0)
这不是合法的语法。尝试这样的事情:
int number;
try
{
number = Integer.parseInt (/*get string input here*/);
}
catch (NumberFormatException e)
{
//error handling here
}
int array [] = new int [2];
array[0] = number;
这有点冗长,但我猜是欢迎使用Java。
答案 1 :(得分:0)
就像Brian说的那样..你需要在数组初始化之上移动你的try / catch块。
int i;
try{
string myString = "1";
i = Integer.parseInt(myString)l
} catch(NumberFormatException e){
//handle
}
int array [] = new int[3];
答案 2 :(得分:0)
见下文......
int myArray[] = new int[10];
String tempString = "1";
try {
for (int i=0;i<=9;i++) {
tempString += i;
myArray[i]=Integer.parseInt(tempString);
}
} catch (NumberFormatException nfe) {
// print error
} catch (Exception e) {
// print error
}