> 數據類型其實就是在內存中用不同的結構對數據進行存儲和運算。
## 基本數據類型
#### 數值型
整數型 :
byte (-128-127) short int(-2147483648--2147483647) long 整數 (整數溢出編譯報錯)
浮點型:
float 小數加f
double 默認類型
>[success] 在實際開發中,我們一般使用 int、double
#### 字符型
char 只能有一個字母,數字
表現方式 單引號
> 在 Java 中是沒有表現多個字符的基本數據類型的,但是在 Java 中提供了一個 String 類,去表現字符串。
#### 布爾類型
boolean 表示邏輯中的真和假,值只有 true / false。
## Java數據類型的轉換
我們知道,Java的數據類型分為三大類,即布爾型、字符型和數值型,而其中數值型又分為整型和浮點型;相對于數據類型,Java的變量類型為布爾型boolean;字符型char;整型byte、short、int、long;浮點型float、double。其中四種整型變量和兩種浮點型變量分別對應于不同的精度和范圍。此外,我們還經常用到兩種類變量,即String和Date。對于這些變量類型之間的相互轉換在我們編程中經常要用到,在下面的論述中,我們將闡述如何實現這些轉換。
#### 簡單數據類型之間的轉換(整型、實型、字符型)
類型由低級到高級分別為(byte,short,char)--int--long--float--double
> 布爾型數據只有兩個值:true和false,它不對應任何數值,因此,它不能與數字進行相互轉換。
* 自動類型轉換
低級變量可以直接轉換為高級變量,但是將double型變量賦值給float變量,不加強轉的話會報錯.
運算特性(參見整數默認類型int):自動類型提升(以大的為主,小的向大的提升b(byte)-->x(int))-
如果低級類型為char型,向高級類型(整型)轉換時,會轉換為對應ASCII碼值
~~~java
int i='c';
System.out.println("output:" i);
//輸出:output:99;
~~~
* 強制類型轉換
*語法:( 數據類型 ) 數值*
~~~java
int i=99;
byte b=(byte)i;
char c=(char)i;
float f=(float)i;
~~~
>[danger] --------------------------php數據類型比較----------------------
## 基本數據類型
#### 數值型
整數型 :
int(-2147483648--2147483647) 大于2147483648的整數(整數溢出自動轉換float)
浮點型:
float(同義double) 小數 12.0
#### 字符串型
String
**表現形式**
1. 單引號
2. 雙引號
3. Nowdoc 結構(單引號)
~~~php
<?php
$str = <<<'EOD'
Example of string
spanning multiple lines
EOD;
?>
~~~
4. Heredoc 結構(雙引號)
~~~
<?php
$str = <<<EOD
Example of string
spanning multiple lines
using heredoc syntax.
EOD;
?>
~~~
>[warning]單雙引號區別:變量+轉義字符會被解析
#### 布爾類型
boolean 表示邏輯中的真和假,值只有 true / false。