Java基本資料型別
變數就是申請記憶體來儲存值。也就是說,當創建變數的時候,需要在記憶體中申請空間。
記憶體管理系統根據變數的類型為變數分配儲存空間,分配的空間只能用來儲存該類型資料。
因此,透過定義不同類型的變量,可以在記憶體中儲存整數、小數或字元。
Java的兩大資料型別:
內建資料型別
引用資料型別
內建資料型別
Java語言提供了八種基本型別。六種數字類型(四個整數型,兩個浮點型),一種字元類型,還有一種布林型。
byte:
byte資料型態是8位元、有符號的,以二進位補碼表示的整數;
最小值是-128(-2^7);
最大值是127(2^7- 1);
預設值是0;
byte型別用在大型陣列中節省空間,主要取代整數,因為byte變數所佔用的空間只有int型別的四分之一;
範例:byte a = 100, byte b = -50。
short:
short資料型態是16位元、有符號的以二進位補碼表示的整數
最小值是-32768(-2^15);
最大值是32767(2^15 - 1) ;
Short資料型別也可以像byte一樣節省空間。一個short變數是int型變數所佔空間的二分之一;
預設值是0;
範例:short s = 1000,short r = -20000。
int:
int數據類型是32位、有符號的以二進制補碼表示的整數;
最小值是-2,147,483,648(-2^31);
最大值是2,147,485,647(2^31 - 1 );
一般地整數變數預設為int型別;
預設值是0;
範例:int a = 100000, int b = -200000。
long:
long資料型態是64位元、有符號的以二進位補碼表示的整數;
最小值是-9,223,372,036,854,775,808(-2^63); ^63 -1 );
這種類型主要使用在需要比較大整數的系統上;
預設值是0L;
範例: long a = 100000L,int b = -200000L。
float:
float資料型態是單一精確度、32位元、符合IEEE 754標準的浮點數;
float在儲存大型浮點陣列的時候可節省記憶體空間;
預設值是0.0.0.浮點數不能用來表示精確的值,如貨幣;
例:float f1 = 234.5f。
double:
double資料型態是雙精確度、64位元、符合IEEE 754標準的浮點數;
浮點數的預設型別為double型別;
double型態同樣不能表示精確的值,如同貨幣;
預設值是0.0f;範例:double d1 = 123.4。 boolean:boolean數據類型表示一位的信息;只有兩個取值:true和false;這種類型只作為一種標誌來記錄true/false情況;默認值是false ;範例:boolean one = true。 char:char類型是一個單一的16位Unicode字符;最小值是'u0000'(即為0);最大值是'uffff'(即為65,535);char數據類型可以儲存任何字元;範例:char letter = 'A'。 實例對於數值類型的基本類型的取值範圍,我們無需強制去記憶,因為它們的值都已經以常數的形式定義在對應的包裝類中了。請看下面的例子: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); System.out.println(); // short System.out.println("基本类型:short 二进制位数:" + Short.SIZE); System.out.println("包装类:java.lang.Short"); System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE); System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE); System.out.println(); // int System.out.println("基本类型:int 二进制位数:" + Integer.SIZE); System.out.println("包装类:java.lang.Integer"); System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE); System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE); System.out.println(); // long System.out.println("基本类型:long 二进制位数:" + Long.SIZE); System.out.println("包装类:java.lang.Long"); System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE); System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE); System.out.println(); // float System.out.println("基本类型:float 二进制位数:" + Float.SIZE); System.out.println("包装类:java.lang.Float"); System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE); System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE); System.out.println(); // double System.out.println("基本类型:double 二进制位数:" + Double.SIZE); System.out.println("包装类:java.lang.Double"); System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE); System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE); System.out.println(); // char System.out.println("基本类型:char 二进制位数:" + Character.SIZE); System.out.println("包装类:java.lang.Character"); // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台 System.out.println("最小值:Character.MIN_VALUE=" + (int) Character.MIN_VALUE); // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台 System.out.println("最大值:Character.MAX_VALUE=" + (int) Character.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
对象、数组都是引用数据类型。
所有引用类型的默认值都是null。
一个引用变量可以用来引用与任何与之兼容的类型。
例子:Animal animal = new Animal(“giraffe”)。
Java常量
常量就是一个固定值。它们不需要计算,直接代表相应的值。
常量指不能改变的量。 在Java中用final标志,声明方式和变量类似:
final double PI = 3.1415927;
虽然常量名也可以用小写,但为了便于识别,通常使用大写字母表示常量。
字面量可以赋给任何内置类型的变量。例如:
byte a = 68; char a = 'A'
byte、int、long、和short都可以用十进制、16进制以及8进制的方式来表示。
当使用常量的时候,前缀o表明是8进制,而前缀0x代表16进制。例如:
int decimal = 100; int octal = 0144; int hexa = 0x64;
和其他语言一样,Java的字符串常量也是包含在两个引号之间的字符序列。下面是字符串型字面量的例子:
"Hello World" "two\nlines" "\"This is in quotes\""
字符串常量和字符常量都可以包含任何Unicode字符。例如:
char a = '\u0001'; String a = "\u0001";
Java语言支持一些特殊的转义字符序列。
符号 字符含义
\n 换行 (0x0a)
\r 回车 (0x0d)
\f 换页符(0x0c)
\b 退格 (0x08)
\s 空格 (0x20)
\t 制表符
\" 双引号
\' 单引号
\\ 反斜杠
\ddd 八进制字符 (ddd)
\uxxxx 16进制Unicode字符 (xxxx)
这一节讲解了Java的基本数据类型。下一节将探讨不同的变量类型以及它们的用法。
以上就是【java教程】Java基本数据类型的内容,更多相关内容请关注PHP中文网(www.php.cn)!