回答
您可以將結果只分配給長:
long result = intval2 - intval1;
對不起,不起作用 –
爲什麼 - 你得到什麼錯誤? –
「它不工作」這並沒有告訴我們任何事情。你能舉一個例子,說明它何時無法工作,你期望什麼以及你得到了什麼? –
int val1=10;
int val2=6;
long val3 = (long) val1 - val2;
如果你有大的整數,則可以使用兩個Integer.longValue()
,簡單地減去這些值。
你可以做
long difference = (long) i1 - i2;
,如果你需要的絕對差值
long difference = Math.abs((long) i1 - i2);
例如
int i1 = 2000000000;
int i2 = -2000000000;
long difference = Math.abs((long) i1 - i2);
System.out.printf("%,d%n", difference);
打印
4,000,000,000
您可能需要轉換爲long
的原因是爲了避免溢出。兩個int值之間最大的區別是最大值和最小值之間,但如果你做
System.out.println(Integer.MAX_VALUE - Integer.MIN_VALUE);
打印
-1
由於溢出,而有投你
System.out.println((long) Integer.MAX_VALUE - Integer.MIN_VALUE);
打印
4294967295
public Long difference(Integer i1, Integer i2){
return new Long(i1-i2);
}
當'int'或'long'更合適時,我不會使用'Integer'或'Long'。 –
顯然這是火箭科學。如果i1和i2是整數或整數:
return i1-i2;
需要Java 1.5+。但沒有演員或轉換。
很難,即不可能,相信你甚至嘗試過任何東西。
- 1. 如何將jQuery日期值轉換爲長整型值?
- 2. java將長整型值轉換爲char序列
- 3. 如何將變量的值轉換爲模型中的int值?
- 4. 如何將字節數組轉換爲兩個長整型值?
- 5. 如何將int轉換爲枚舉值?
- 6. 如何將varchar列值轉換爲int?
- 7. 如何將列表值轉換爲int
- 8. 如何將枚舉值轉換爲int?
- 9. 如何在objectiveC中將NSUInteger值轉換爲int值?
- 10. 將NSArray值轉換爲int
- 11. 將ByteArrayOutputStream轉換爲int值
- 12. 將TextField值轉換爲Int
- 13. 如何在Java中將對象類型轉換爲int類型?
- 14. 如何decemial值轉換爲十六進制int值,在Java
- 15. 如何將int []類型轉換爲int?[]
- 16. 將長整型轉換爲整數
- 17. 長或int值轉換爲64位
- 18. 如何將NSString轉換爲長值?
- 19. 如何將對象轉換爲轉換器中的int值?
- 20. 如何將IP4和IP6地址轉換爲C中的長整型值?
- 21. 將int轉換爲int值的字符
- 22. DB2將長整型值轉換爲時間戳
- 23. Java中如何將double轉換爲int?
- 24. 如何將字符串值轉換(或轉換)爲整數值?
- 25. java - 無法將整數轉換爲int
- 26. 將整數(長整數)轉換爲jsp中的雙精度值
- 27. 如何將system.data.dataRow值轉換爲整數
- 28. 如何將std :: wstring轉換爲數值類型(int,long,float)?
- 29. 將varchar值「」....「'轉換爲數據類型int時轉換失敗
- 30. 將varchar值轉換爲數據類型時轉換失敗int
你的標題和問題相互矛盾。 –
你可以自由地從長返回方法返回一個int。你爲什麼不試試呢?如果最明顯的事情失敗了,那麼請張貼失敗的代碼。 –
您的問題標題與描述相矛盾。 如果你的描述是正確的 - 那麼看看@juergen d的答案,這是正確的。 如果您需要別的東西,請務必正確編輯問題 – peshkira