欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java中用float時,數字后面加f,這樣是為什么你知道嗎

 更新時間:2021年09月03日 16:53:14   作者:春天里的小矮寶  
這篇文章主要介紹了java用float時,數字后面加f,這樣是為什么你知道嗎?具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Java float 與 double 的區(qū)別

1、float是單精度浮點數

內存分配4個字節(jié),占32位,有效小數位6-7位

double是雙精度浮點數,內存分配8個字節(jié),占64位,有效小數位15位

2、java中默認聲明的小數是double類型的

如double d=4.0

如果聲明: float x = 4.0則會報錯,需要如下寫法:float x = 4.0f或者float x = (float)4.0

其中4.0f后面的f只是為了區(qū)別double,并不代表任何數字上的意義

3、對編程人員來而

double 和 float 的區(qū)別是double精度高,但double消耗內存是float的兩倍,且double的運算速度較float稍慢。

Java float、double、long類型變量賦值添加f、d、L尾綴問題

1、添加尾綴說明 

我們知道Java在變量賦值的時候,其中float、double、long數據類型變量,需要在賦值直接量后面分別添加f或F、d或D、l或L尾綴來說明。

其中,long類型最好以大寫L來添加尾綴,因為小寫l容易和數字1混淆。

例如:

long lNum  = 1234L;
float fNum = 1.23f;
double dNum = 1.23d;

這是Java語法規(guī)定,不添加尾綴很容易引起編譯器報錯,并且程序可讀性也會變差。

2、不添加尾綴也不會報錯的情況  

Java語言中,整數直接量(例如:1、2、10等),JVM虛擬機是默認為int類型數據的。所以,當整數直接量賦給long、float或者double,而不添加尾綴,虛擬機也會直接將int類型數據自動轉換為對應類型然后賦值。因為數據長度短的轉換為長的并不會造成數據丟失,所以默認可以自動轉換?!  ?/p>

例如:

long  lNum  = 5;   //不報錯,因為int自動轉換為long類型,不會報錯
float fNum  = 7;   //不報錯,因為int自動轉換為float類型,不會報錯
double dNum = 10;  //同上

  

但是,當浮點直接量(例如:1.2等),JVM虛擬機默認為double類型,如果直接賦值給float就會引起編譯器報錯。

float fNum  = 1.2; //報錯,因為1.2虛擬機是默認為double類型,不能直接賦值給float類型變量
float fNew  = 1.3f;//正確,因為尾綴添加了f,即告訴了虛擬機1.3屬于float類型變量

3、總結  

所以,當Java中遇到這三種類型變量需要賦直接量時候,最好都添加上相應的尾綴。這樣不僅會防止編譯器報錯,也會增加程序的可讀性。  

但是下面這種情況就算添加尾綴也是錯的,因為尾綴僅是為了告訴虛擬機該直接數屬于什么數據類型,而不能實現數據類型強制轉換。

long lNum = 1.2L;      //錯誤,double類型數據不能直接賦值給long類型
long lNew = (long)1.2; //正確,double類型數據強制轉換為long類型

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 淺析Java中線程的創(chuàng)建和啟動

    淺析Java中線程的創(chuàng)建和啟動

    這篇文章運用實例代碼介紹了Java中線程的創(chuàng)建和啟動,非常詳細,有需要的朋友們可以參考借鑒,下面一起來看看。
    2016-08-08
  • java通過復選框控件數組實現添加多個復選框控件示例分享

    java通過復選框控件數組實現添加多個復選框控件示例分享

    編寫程序,通過復選框控件數組事先選擇用戶愛好信息的復選框,在該程序中,要求界面中的復選框數量可以根據指定復選框名稱的字符串數組的長度來自動調節(jié)
    2014-02-02
  • Spring源碼解析之Configuration

    Spring源碼解析之Configuration

    今天帶大家來學習Java Spring相關知識,文中對Configuration源碼介紹的非常詳細,有非常多的圖文解說及代碼示例,對正在學習java的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • Java設計模式之橋接模式的示例詳解

    Java設計模式之橋接模式的示例詳解

    橋梁模式是對象的結構模式。又稱為柄體(Handle and Body)模式或接口(Interface)模式。本文將通過示例來詳細講解一下這個模式,感興趣的可以學習一下
    2022-02-02
  • SpringBoot關閉過程中銷毀DisposableBean解讀

    SpringBoot關閉過程中銷毀DisposableBean解讀

    這篇文章主要介紹了SpringBoot關閉過程中銷毀DisposableBean解讀,一個bean的生命周期,指的是 bean 從創(chuàng)建,初始化,一系列使用,銷毀的過程,今天來講講 bean 的初始化和銷毀的方法,需要的朋友可以參考下
    2023-12-12
  • Java 轉型(向上或向下轉型)詳解及簡單實例

    Java 轉型(向上或向下轉型)詳解及簡單實例

    這篇文章主要介紹了Java 轉型(向上或向下轉型)詳解及簡單實例的相關資料,需要的朋友可以參考下
    2017-02-02
  • MyBatis-Plus聯(lián)表查詢以及分頁代碼實例

    MyBatis-Plus聯(lián)表查詢以及分頁代碼實例

    在開發(fā)中遇到了一個問題,需要進行聯(lián)表查詢并進行分頁,因為不想自己來寫分頁,所以還是依靠MybatisPlus來實現想要的功能,下面這篇文章主要給大家介紹了關于MyBatis-Plus聯(lián)表查詢以及分頁的相關資料,需要的朋友可以參考下
    2023-06-06
  • Java五子棋簡單實現代碼舉例

    Java五子棋簡單實現代碼舉例

    Java五子棋游戲是一種經典的兩人對戰(zhàn)棋類游戲,它基于簡單的規(guī)則,即任何一方的棋子在棋盤上形成連續(xù)的五個,無論是橫、豎還是斜線,都將獲勝,這篇文章主要介紹了Java五子棋實現的相關資料,需要的朋友可以參考下
    2024-10-10
  • spring boot整合log4j2及MQ消費處理系統(tǒng)日志示例

    spring boot整合log4j2及MQ消費處理系統(tǒng)日志示例

    這篇文章主要為大家介紹了spring boot整合log4j2及MQ消費處理系統(tǒng)日志的示例過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • IDEA actiBPM插件安裝圖文教程

    IDEA actiBPM插件安裝圖文教程

    這篇文章主要介紹了IDEA actiBPM插件安裝教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09

最新評論