我遇到这个问题,我的代码在最新版本的java上运行良好但在我的大学计算机上运行不正确,因为它们使用的是较旧的Java API(不是那么旧但不是最新版本)。这是代码和我的任务:
'编写一个程序,将输入数字n和文本字符串文件名作为输入,并将n行写入文件,其中每行的格式为:i:sqrt(i)sqrt(i)sqrt(i)。第一列的范围是1..n,而第一个平方根是一位小数,第二列是两位小数,第三列是三位小数。'
do
{
enteredNum = JOptionPane.showInputDialog(null, "Please enter a positive"
+ " integer","enter number",1);
int number = Integer.parseInt(enteredNum); //Enter number and convert to integer
if (number < 0){
break;
}
counter = 2;
isPrime = true;
while(isPrime && (counter < number)){
if((number%counter)== 0){
isPrime = false;
JOptionPane.showMessageDialog(null, "Your entered number, "+number+" is not prime."
+ "\nIts prime decomposition is "+counter+" X "+(number/counter)+".",
"Prime number", 1);
break;
}
else {
counter = counter + 1;
JOptionPane.showMessageDialog(null, number+"is a prime number", "Prime number", 1);
break;
}
}
我不确定如何修改代码以补充我认为的旧版本1.6的代码。我在try语句中遇到错误。感谢
答案 0 :(得分:0)
try (BufferedWriter writer = new BufferedWriter(new FileWriter(path)))
这是尝试1.8中的资源。 更改它以便它在旧版本中工作。
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(path)
}
同时添加一个catch或finally块。
但是对于版本问题,请尝试使用资源