日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java基本类型(内置类型)取值范围

發(fā)布時間:2025/7/14 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java基本类型(内置类型)取值范围 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

例1:

  • public?class?PrimitiveTypeTest?{ ??
  • ????public?static?void?main(String[]?args)?{ ??
  • ????????//?byte???
  • ????????System.out.println("基本類型:byte?二進制位數:"?+?Byte.SIZE); ??
  • ????????System.out.println("包裝類:java.lang.Byte"); ??
  • ????????System.out.println("最小值:Byte.MIN_VALUE="?+?Byte.MIN_VALUE); ??
  • ????????System.out.println("最大值:Byte.MAX_VALUE="?+?Byte.MAX_VALUE);???

  • 運行結果:

  • 基本類型:byte 二進制位數:8
  • 包裝類:java.lang.Byte
  • 最小值:Byte.MIN_VALUE=-128
  • 最大值:Byte.MAX_VALUE=127
  • 補充)基本類型:short 二進制位數:16
  • 包裝類:java.lang.Short
  • 最小值:Short.MIN_VALUE=-32768
  • 最大值:Short.MAX_VALUE=32767
  • 基本類型:int 二進制位數:32
  • 包裝類:java.lang.Integer
  • 最小值:Integer.MIN_VALUE=-2147483648
  • 最大值:Integer.MAX_VALUE=2147483647
  • 基本類型:long 二進制位數:64
  • 包裝類:java.lang.Long
  • 最小值:Long.MIN_VALUE=-9223372036854775808
  • 最大值:Long.MAX_VALUE=9223372036854775807
  • 基本類型:float 二進制位數:32
  • 包裝類:java.lang.Float
  • 最小值:Float.MIN_VALUE=1.4E-45
  • 最大值:Float.MAX_VALUE=3.4028235E38
  • 基本類型:double 二進制位數:64
  • 包裝類:java.lang.Double
  • 最小值:Double.MIN_VALUE=4.9E-324
  • 最大值:Double.MAX_VALUE=1.7976931348623157E308
  • 基本類型:char 二進制位數:16
  • 包裝類:java.lang.Character
  • 最小值:Character.MIN_VALUE=0
  • 最大值:Character.MAX_VALUE=65535
  • 例2:

  • public?class?PrimitiveTypeTest?{ ??
  • ????public?static?void?main(String[]?args)?{ ??
  • ????????//?給byte類型變量賦值時,數字后無需后綴標識???
  • ????????byte?byte_a?=?1; ??
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?byte?byte_b?=?1000;???
  • ????????//?把一個long型值賦值給byte型變量,編譯時會報錯,即使這個值沒有超出byte類型的取值范圍???
  • ????????//?byte?byte_c?=?1L;???
  • ??
  • ????????//?給short類型變量賦值時,數字后無需后綴標識???
  • ????????short?short_a?=?1; ??
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?short?short_b?=?70000;???
  • ????????//?把一個long型值賦值給short型變量,編譯時會報錯,即使這個值沒有超出short類型的取值范圍???
  • ????????//?byte?short_c?=?1L;???
  • ??
  • ????????//?給short類型變量賦值時,數字后無需后綴標識???
  • ????????int?int_a?=?1; ??
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?int?int_b?=?2200000000;???
  • ????????//?把一個long型值賦值給int型變量,編譯時會報錯,即使這個值沒有超出int類型的取值范圍???
  • ????????//?int?int_c?=?1L;???
  • ??
  • ????????//?可以把一個int型值直接賦值給long型變量,數字后無需后綴標識???
  • ????????long?long_a?=?1; ??
  • ????????//?如果給long型變量賦予的值超出了int型值的范圍,數字后必須加L(不區(qū)分大小寫)標識???
  • ????????long?long_b?=?2200000000L; ??
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?long?long_c?=?9300000000000000000L;???
  • ??
  • ????????//?可以把一個int型值直接賦值給float型變量???
  • ????????float?float_a?=?1; ??
  • ????????//?可以把一個long型值直接賦值給float型變量???
  • ????????float?float_b?=?1L; ??
  • ????????//?沒有F(不區(qū)分大小寫)后綴標識的浮點數默認為double型的,不能將它直接賦值給float型變量???
  • ????????//?float?float_c?=?1.0;???
  • ????????//?float型數值需要有一個F(不區(qū)分大小寫)后綴標識???
  • ????????float?float_d?=?1.0F; ??
  • ????????//?把一個double型值賦值給float型變量,編譯時會報錯,即使這個值沒有超出float類型的取值范圍???
  • ????????//?float?float_e?=?1.0D;???
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?float?float_f?=?3.5000000E38F;???
  • ??
  • ????????//?可以把一個int型值直接賦值給double型變量???
  • ????????double?double_a?=?1; ??
  • ????????//?可以把一個long型值直接賦值給double型變量???
  • ????????double?double_b?=?1L; ??
  • ????????//?可以把一個float型值直接賦值給double型變量???
  • ????????double?double_c?=?1F; ??
  • ????????//?不帶后綴標識的浮點數默認為double類型的,可以直接賦值???
  • ????????double?double_d?=?1.0; ??
  • ????????//?也可以給數字增加一個D(不區(qū)分大小寫)后綴標識,明確標出它是double類型的???
  • ????????double?double_e?=?1.0D; ??
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?double?double_f?=?1.8000000000000000E308D;???
  • ??
  • ????????//?把一個double型值賦值給一個byte類型變量,編譯時會報錯,即使這個值沒有超出byte類型的取值范圍???
  • ????????//?byte?byte_d?=?1.0D;???
  • ????????//?把一個double型值賦值給一個short類型變量,編譯時會報錯,即使這個值沒有超出short類型的取值范圍???
  • ????????//?short?short_d?=?1.0D;???
  • ????????//?把一個double型值賦值給一個int類型變量,編譯時會報錯,即使這個值沒有超出int類型的取值范圍???
  • ????????//?int?int_d?=?1.0D;???
  • ????????//?把一個double型值賦值給一個long類型變量,編譯時會報錯,即使這個值沒有超出long類型的取值范圍???
  • ????????//?long?long_d?=?1.0D;???
  • ??
  • ????????//?可以用字符初始化一個char型變量???
  • ????????char?char_a?=?'a'; ??
  • ????????//?也可以用一個int型數值初始化char型變量???
  • ????????char?char_b?=?1; ??
  • ????????//?把一個long型值賦值給一個char類型變量,編譯時會報錯,即使這個值沒有超出char類型的取值范圍??
  • ????????//?char?char_c?=?1L;???
  • ????????//?把一個float型值賦值給一個char類型變量,編譯時會報錯,即使這個值沒有超出char類型的取值范圍??
  • ????????//?char?char_d?=?1.0F;???
  • ????????//?把一個double型值賦值給一個char類型變量,編譯時會報錯,即使這個值沒有超出char類型的取值范圍???
  • ????????//?char?char_e?=?1.0D;???
  • ????????//?編譯器會做范圍檢查,如果賦予的值超出了范圍就會報錯???
  • ????????//?char?char_f?=?70000;???
  • ????} ??
  • }??
  • public?class?PrimitiveTypeTest?{ ??
  • ????public?static?void?main(String[]?args)?{ ??
  • ????????short?s1?=?1; ??
  • ????????//?這一行代碼會報編譯錯誤???
  • ????????//?s1?=?s1?+?1;???
  • ????????//?這一行代碼沒有報錯???
  • ????????s1?=?1?+?1; ??
  • ????????//?這一行代碼也沒有報錯???
  • ????????s1?+=?1; ??
  • ????} ??
  • }??
  • 例4:

  • public?class?EqualsTest?{ ??
  • ????public?static?void?main(String[]?args)?{ ??
  • ????????//?int類型用int類型初始化???
  • ????????int?int_int?=?0; ??
  • ????????//?int類型用Integer類型初始化???
  • ????????int?int_Integer?=?new?Integer(0); ??
  • ????????//?Integer類型用Integer類型初始化???
  • ????????Integer?Integer_Integer?=?new?Integer(0); ??
  • ????????//?Integer類型用int類型初始化???
  • ????????Integer?Integer_int?=?0; ??
  • ??
  • ????????System.out.println("int_int?==?int_Integer結果是:"??
  • ????????????????+?(int_int?==?int_Integer)); ??
  • ????????System.out.println("Integer_Integer?==?Integer_int結果是:"??
  • ????????????????+?(Integer_Integer?==?Integer_int));???
  • ????} ??
  • }??
  • 運行結果:

  • int_int == int_Integer結果是:true
  • Integer_Integer == Integer_int結果是:false
  • 總結

    以上是生活随笔為你收集整理的java基本类型(内置类型)取值范围的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。