91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中將float轉換為long或int的方法有哪些

發布時間:2020-08-20 15:03:35 來源:億速云 閱讀:388 作者:小新 欄目:編程語言

這篇文章主要介紹了Java中將float轉換為long或int的方法有哪些,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

在Java中,有三種方法可以將float轉換為long或int,但我們只關注long數據類型部分。

將float數據類型轉換為long值的第一種方法是將auto-box float原語轉換為float對象并調用longValue()方法。

這是一種更結構化的方法,因為其他方法只是簡單地將float轉換為long或int以去掉小數點。

也可以按照以下提示編寫Java程序,通過將long方法替換為對應的int方法,將float轉換為int。

另外,還可以使用Math.round()然后將其轉換回long數據類型。

第二種方法是最簡單的,如果只是去掉小數點后的數字,但如果需要四舍五入,那么第三種方法是最好的將float數據類型轉換為long。

在本文中,將學習在Java中執行float到long轉換的三種方法。

在Java中將float轉換為long的3種方法

方案一- Casting

Java支持類型轉換,它是將一種數據類型轉換為另一種數據類型的,但只能將較高的值轉換為較低的值。由于float的范圍比long長,因此可以使用類型轉換將其轉換為long,如下所示:

float number = 444.33f; 
long aValue = (long) number; // 444

它不會做任何事情,只是丟棄小數點后的值,因此將在fromFloat變量中得到3的值 。

如果想把float轉換成 int,那么你應該把float轉換成整型數,而不是轉換成long型數,這是最簡單的轉換方法。

解決方案2 - Float.longValue

將float轉換為long的另一種方法是首先將float值自動裝入Float包裝對象,然后調用Float.longValue() 方法。此方法在內部將浮點值轉換為long,如上圖和下面的代碼所示:

public long longValue(){
 return(long)value;
}

以下是如何使用此方法進行轉換:

Float PIE = 3.14f; 
long fromFloat = PIE.longValue();

當你具有Float對象而不是float原始值時,此方法更合適。

解決方案3 - Math.round和Casting

有時轉換并不像丟棄小數點后的內容那樣簡單。可能需要先進行舍入,然后再進行轉換。如果是這種情況,那么可以使用Math.round()方法先進行舍入,再進行類型轉換,將double轉換為long,Math.round()方法返回一個double值。下面是實現這種轉換的示例代碼:

// 使用Math.round()并強制轉換為long
float points = 333.322f;
long rounded = Math.round(points); 
System.out.printf("float : %f, long : %d %n", points, rounded); 
points = 333.922f; 
rounded = Math.round(points); 
System.out.printf("float : %f, long : %d %n", points, rounded); 
Output : float : 333.321991, long : 333 float : 333.921997, long : 334

可以看到舍入的效果,在第一個示例中,float是向下舍入的,這就是為什么轉換的long值是333,而在第二個示例中它被舍入,這就是為什么long值為334.

Java程序將float轉換為long數據類型

下面代碼所示,它結合了三種方法將float轉換為long。可以看到它們是如何工作的,并學習如何執行另一個類似的轉換技術,如float to int,short或byte或double to long,int,short和byte。

/** 
* 用于在Java中將float轉換為long
* 
* @author Javarevisited 
*/ 
public class FloatToLongConverter{ 

 public static void main(String[] args) { 

 // Autobox浮動到Float然后調用Float.longValue();
 Float PIE = 3.14f; 
 long fromFloat = PIE.longValue(); 

 System.out.printf("float value %f, long value %d %n", PIE, fromFloat); 
 
 // 簡單的類型轉換來消除小數 
 float number = 444.33f; 
 long aValue = (long) number; 
 System.out.printf("float value %f, after casting into long %d %n", number, aValue); 
 
 // 使用Math.round()并將其轉換回long 
 float points = 333.322f; 
 long rounded = Math.round(points); 

 System.out.printf("float : %f, long : %d %n", points, rounded); 
 }
 }
Output : 
float value 3.140000, long value 3 
float value 444.329987, after casting into long 444 
float : 333.321991, long : 333

這就是如何在Java中將float轉換為long數據類型。如果你只是刪除十進制值,則類型轉換是最簡單的方法。這不是在Java中舍入數字的唯一方法,但它適用于大多用途。

感謝你能夠認真閱讀完這篇文章,希望小編分享Java中將float轉換為long或int的方法有哪些內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武宣县| 大丰市| 上饶县| 河津市| 根河市| 延川县| 兴安县| 襄汾县| 宣威市| 无为县| 仁怀市| 靖边县| 嘉荫县| 卢氏县| 都江堰市| 建昌县| 友谊县| 炎陵县| 申扎县| 安塞县| 平乐县| 竹溪县| 清流县| 永吉县| 贺兰县| 云安县| 聊城市| 大名县| 天水市| 萨迦县| 佛冈县| 林口县| 麻江县| 灵石县| 永州市| 娱乐| 福州市| 淳化县| 翁牛特旗| 丽江市| 东乡|