for (int i = 0; i < 18; i++) {
  line = file.readLine();
  String[] word = line.split(";");

  appartment[i] = new Appartment();
  appartment[i].floor= Integer.parseInt(word[0]);
  appartment[i].name = word[1];
  appartment[i].money= Double.parseDouble(word[2]);
  appartment[i].owner= word[3];
}


有人可以告诉我为什么这不起作用吗?我正在读取文件。我正在尝试将钱从字符串转换为两倍,但是它说

possible loss of precision.
required: int
found: double


我需要加倍,以便所有者帐户也可以转为负数。

最佳答案

-似乎appartment是类型为Appartment的数组,其中名为money的Appartement对象字段为int类型。

-但是您要将其值赋为double类型,因此需要从double到int的显式转换,

例如:

appartment[i].money= (int) Double.parseDouble(word[2]);

09-30 12:55