编译错误的原因是
我正在尝试运行一个计算利息后余额的程序。我很容易让它运行:
public class bigjavach1p7balprob{
public static void main(String[] args){
double balance = 10000.0;
int year = 0;
while (balance < 20000){
year += 1;
double interest = balance * .05;
balance = balance + interest;
System.out.println("year " + year + ": " + balance);
}
}
}
但我想先将余额作为int,然后在添加利息后将其转换为double。我有:
import java.util.*;
public class bigjavach1p7balprob{
public static void main(String[] args){
int balance = 10000;
int year = 0;
while (balance < 20000){
year += 1;
double interest = (double)balance * .05;
balance = Integer.parseInt(balance) + interest;
System.out.println("year " + year + ": " + balance);
}
}
}
这不是在编译或运行。
Integer.parseInt()
接收了String
而不是int
。
如果您想将balance
更改为整数,您可以将其强制转换为int
(即使它是double
):
balance = (int) (balance + interest)
但实际上您无法更改变量类型。