我似乎無法弄清楚,爲什麼我可以將浮動轉換爲int執行以下操作:轉換浮動,以詮釋差異
float a = 3;
int b = (int)a;
,但是當我嘗試以下方法:
public class MyTestCode{
public static int Add(Object a, Object b){
int c = (int)a;
int d = (int)b;
return c + d;
}
}
.. .it給出以下錯誤:
*Exception in thread "main" java.lang.ClassCastException: java.lang.Float cannot be cast to java.lang.Integer
at myTestCode.MyTestCode.Add(MyTestCode.java:15)
at ch02.ex01.Ch02Ex01.main(Ch02Ex01.java:25)
Java Result: 1*
爲什麼我可以在一個示例中將float從int轉換爲int,而不是另一個?
java.lang.Float不能轉換爲java.lang.Integer的部分不清楚。 'java.lang.Float'!= float' –
這很有道理,但爲什麼它會將我的float轉換爲Float?我將它初始化爲float並將其輸入到方法中,因此並不期望它將其轉換爲Float。 –