如果我将变量初始化为一种类型(即int),然后在循环中将其类型强制转换为另一种类型(即double),则该变量会永久保留该类型,还是局部于我所在的位置将变量转换为新类型?
到目前为止,我已阅读的所有材料都描述了类型转换的作用,但并不能完全回答我的问题。因此,在下面的代码中,当我在计算平均值时键入强制转换和计数器时,总和和计数器是否仅为该计算而转换为双精度类型,然后又恢复为整数类型?
int sum = 0;
int counter = 0;
double average = 0;
System.out.println("Type numbers:");
while (true) {
int userInput = Integer.parseInt(reader.nextLine());
if (userInput == -1) {
System.out.println("Thank you and see you later!");
break;
} else {
sum += userInput;
counter++;
average = (double)sum/(double)counter;
}
}