亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

Java中怎么實現數值類型的轉換

發布時間:2021-06-12 19:11:01 來源:億速云 閱讀:254 作者:Leah 欄目:編程語言

Java中怎么實現數值類型的轉換,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

數值類型之間的轉換

Java中怎么實現數值類型的轉換

6個實心箭頭箭頭表示無信息丟失的轉換;
3個虛箭頭表示可能有精度損失的轉換.

當使用上面兩個數值進行二元操作時,先要將兩個操作數轉換為同一類型,然后再進行計算.
規則:`兩個數中小類型的值將自動轉換為大類型的值.
小轉大可以,但是大轉小會損失精度,則需要強制轉換.

強制類型轉換

語法格式

在圓括號中給出想要轉換的目標類型,后面緊跟待轉換的變量名.

例:
double m = 9.99;
int n = (int)m;
其中n的值為9.

強制類型轉換通過截斷小數部分將浮點值轉換為整形.

Math.Round()

返回最接近參數的 int。結果將舍入為整數:加上 1/2,對結果調用 floor 并將所得結果強制轉換為 int 類型。換句話說,結果等于以下表達式的值:

(int)Math.floor(a + 0.5f)

特殊情況如下:
如果參數為 NaN,那么結果為 0。
如果結果為負無窮大或任何小于等于 Integer.MIN_VALUE 的值,那么結果等于 Integer.MIN_VALUE 的值。
如果參數為正無窮大或任何大于等于 Integer.MAX_VALUE 的值,那么結果等于 Integer.MAX_VALUE 的值。

public static int round(float a) :
若傳入Round方法的值為float,返回值為int,可直接用int類型的值接收即可.
public static long round(double a) :
但傳入Round方法的值為double時,返回值為long,則需要手動強轉為int類型.

代碼示例:

public class MathRoundDemo {
	public static void main(String[] args) {
		double a = 1.847;
		System.out.println(Math.round(a));
		
		float b = 1.847f;
		System.out.println(Math.round(b));
		
		int c = (int)Math.round(a);
		System.out.println(c);
		
		System.out.println(Math.round(a*100)/100.0);
		System.out.printf("%.2f",a);
	}
}
/*輸出:
2
2
2
1.85
1.85
*/

代碼分析:

float b = 1.847f;若不添加后綴f,則需要將1.847進行強轉,默認小數位double類型.賦給float(大轉小會損失精度,則需要強制轉換).
int c = (int)Math.round(a);傳入的參數為double類型,返回類型為long,同理,大轉小,需要強制轉換.

Java中怎么實現數值類型的轉換

對于想要進行小數位數的保留方法,此代碼中想要1.847保留小數點后兩位:
System.out.println(Math.round(a*100)/100.0);
原理:小數點先右移兩位后應用Math.round方法進行四舍五入后,在將小數點向左移兩位.

System.out.printf("%.2f",a);
原理:應用了格式化輸出,推薦使用這種方式簡單高效穩定.具體介紹請看:Java中格式化輸出

關于Java中怎么實現數值類型的轉換問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

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

AI

华亭县| 夹江县| 宜昌市| 淮北市| 富川| 灵山县| 襄樊市| 太和县| 抚顺县| 海门市| 精河县| 沙雅县| 茂名市| 芦溪县| 丹阳市| 鄯善县| 湖南省| 玉门市| 正定县| 栖霞市| 广州市| 柞水县| 阿鲁科尔沁旗| 花莲县| 化德县| 云霄县| 内乡县| 南靖县| 乐平市| 哈巴河县| 哈尔滨市| 黑河市| 新宾| 白玉县| 广东省| 利津县| 潞城市| 台东市| 防城港市| 宜春市| 榆中县|