如何在这段代码中将int改为double



我正在尝试运行一个计算利息后余额的程序。我很容易让它运行:

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)

但实际上您无法更改变量类型。

最新更新