【发布时间】:2014-04-17 13:11:09
【问题描述】:
我正在尝试弄清楚如何编写此方法以避免堆栈堆积在异常中递归调用该方法?
这是我的指示的措辞:
读取一个数字,使用异常处理程序确保它是一个 int 数字,然后添加到 ArrayList 对象 aryList。
这是我的尝试:
public void createOriginalAryList() {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter a number: ");
try {
int number = keyboard.nextInt();
aryList.add(number);
while(keyboard.hasNextInt()) {
System.out.println("Enter a number: ");
number = keyboard.nextInt();
aryList.add(number);
}
} catch(InputMismatchException ime) {
System.out.println("Invalid number submitted! Try again.");
createOriginalAryList();
}
System.out.println(aryList);
}
非常感谢任何建议!
【问题讨论】:
-
不要对非递归问题使用递归。它不是循环的替代品。
-
好建议!谢谢@EJP
标签: java recursion stack callstack code-organization