Java的簡單理解(2)
資料型別
**byte: **記憶體中佔用一個位元組八位。表示範圍-128~127
**short: **記憶體中佔用二個位元組16位。表示範圍-32768~32767
**int: **記憶體中佔用4個位元組32位。
**long: **記憶體中佔用8個位元組64位。
long a7 = 11111111111; 會報錯
long a7 = 11111111111L; 正確
要加上L。
Java中對極大的數的計算是通過BigDecimal類來計算的。
進位制
int a = 10; (十進位制)
int b = 010; (八進位制) 8
int c = 0x10; (16進位制) 16
進位制轉換
int a = 10;
System.out.println(Integer.toBinaryString(a)); 1010 轉為二進位制
System.out.println(Integer.toOctalString(a)); 12 轉為八進位制
System.out.print(Integer.toHexString(a)); a 轉為16進位制
浮點數
float: 記憶體佔4位32個位元組
Double:記憶體佔8位64個位元組
浮點數的預設型別是double型。
double d = 3.14; //預設型別是double型
float f = 3.14; // 從double轉換為float可能會有損失。
浮點數存在誤差,很多數字不能精確表示,建議使用BigDecimal類。
BigDecimal大的小數
BigInteger大的整數
最好避免在比較中使用浮點數
字元
char: 採用的是Unicode編碼格式,佔2個位元組。
char c1 = '吳'; // 注意是單引號,雙引號的是字串
char的範圍是0~65536,運算是當做整數來進行的。
Java裡面的字串,是定義成String類了。
boolean型別
boolean型別在記憶體中佔1位,而不是1個位元組。
自動型別轉換
容量小的資料型別可以自動轉換為容量大的資料型別。
JDK 7.0 新特性
int a = 0b00000000000000000000000000000011; // 二進位制的3
int b = 0b0000_0000_0000_0000_0000_0000_0000_0011; // 二進位制的3,下劃線不影響
int c = 123123131;
int d = 1_2312_3131;
相關文章
- java介面和抽象類的簡單理解Java抽象
- Java的簡單理解(22)---處理流Java
- 簡單理解Java中的4種迴圈Java
- 關於Java註解(annotation)的簡單理解Java
- 關於MongoDB的簡單理解(二)--Java篇MongoDBJava
- ThreadLocal的簡單理解thread
- PHP socket 的簡單理解PHP
- MongoDB索引的簡單理解MongoDB索引
- 快速排序的簡單理解排序
- 對CSRF的簡單理解
- Java的簡單理解(25)---(隨機訪問檔案)RandomAccessFileJava隨機randomMac
- 簡單理解promisePromise
- EJB簡單理解
- Restful簡單理解REST
- BFC簡單理解
- 關於BFC的簡單理解
- Object.keys()的簡單理解Object
- vue cli 3的簡單理解Vue
- 簡單的理解 Object.defineProperty()Object
- 氣泡排序的簡單理解排序
- 選擇排序的簡單理解排序
- 歸併排序的簡單理解排序
- 基數排序的簡單理解排序
- 關於RabbitMQ的簡單理解MQ
- 簡單理解OAuth 2.0OAuth
- 【Java】深入理解ReentrantLock可重入鎖之簡單使用JavaReentrantLock
- 插值查詢的簡單理解
- 簡簡單單的Vue2(簡單語法,生命週期,元件)Vue元件
- 簡單理解flex佈局Flex
- node.js簡單理解Node.js
- Java中同步的基本概念監視器–最簡單粗暴的理解方法Java
- Java 簡單的rpc 一JavaRPC
- Java NIO的簡單demoJava
- 談一談對vuex的簡單理解Vue
- 對CAS演算法的簡單理解演算法
- 二分查詢的簡單理解
- 關於JDK15的簡單理解JDK
- 簡單理解DNS解析流程(一)DNS