我們在Java中,如果遇到兩個不同類型的操作數,同樣可以進行二元運算。例如其中一個操作數是整數,而另一個操作數是浮點數,Java會自動將整數轉換成爲浮點值,比如說3*3.5就被轉換成了3.0*3.5.
Java中可以將一個數值賦給支持更大數值範圍類型的變量,例如說可以將long型的值賦給float型變量。但是如果不進行類型轉換,就不能將一個值賦給範圍較小的變量。類型轉換是一種將一種數據的值轉換成另一種數據類型的操作,拓寬類型不需要顯式轉換,可以自動執行轉換,縮窄類型必須顯式完成。
類型轉換的語法要求目標類型放在括號內,緊跟其後的是要轉換的變量名或值,舉個例子:
System.out.prinrln((int)1.7);顯示結果爲1,當double型值被轉換爲int型時,小數部分被截去。
System.out.println((double)1/4);顯示結果爲0.25,因爲1首先被轉換爲1.0,然後用1.0除以4.
System.out.println(1/2); 顯示結果爲0,因爲1和2都是整數,那麼對他們做除法的結果也必須是整數。
如果將一個值賦給一個範圍較小類型的變量,就必須進行類型轉換,如果沒有使用類型轉換,就會出現編譯錯誤,要注意,類型轉換不改變被轉換的變量,例如:
double a=2.5;
int i=(int)a;
a變成了2,不過a的值依然沒變,依舊爲2.5
我們拿書上的一個例子來看一下,我們要給出保留營業額稅小數點後兩位的程序:
import java.util.Scanner;
/**
*
* @author mjd
*/
public class SalesTax {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Scanner input = new Scanner(System.in);
System.out.print("Please enter purchase amount:");
double purchase = input.nextDouble();
double tax = purchase*0.06;
System.out.println("SalesTax is"+(int)(tax*100)/100.0);
}
}
字符數據類型char用來表示單個字符,字符型直接量用單引號括住。
char letter = 'A';
char numChar = '3';
第一條語句將字符A賦值給char型變量letter。第二條語句將數字字符4賦值給char型變量numChar
轉義字符
假如我們想輸出時打印帶引號的信息,我們就需要用到轉義字符,接下來我們將一些常用的轉義字符列舉出來。
\b 退格鍵 \t Tab鍵 \n 換行符號 \r 回車鍵 \f 進紙 \\ 反斜槓
\' 單引號 \" 雙引號
System.out.println("He said\"Java is fun\"");
它的輸出纔是 He said"ava is fun"