public class special_grammar {
public static void main(String[] args) {
int i1 = 0b10; //二進制0b
int i2 = 010; //八進制 0
int i3 = 10;
int i4 = 0x10; //十六進制 0x
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
}
其中定義了四個變數,分別是二進制、八進制、十進制、十六進制數位,最後輸出,輸出的都是十進制的數位。
float f = 0.1F;
double d = 1.0/10;
System.out.println(f==d);
System.out.println(f);
System.out.println(d);
//所以作比較的時候最好完全使用浮點數進行比較
float f1 = 546545616516555F;
float f2 = f1+1;
System.out.println(f1==f2);
在實際應用中,不能拿一個double去和一個float型別的變數去做比較,因爲float型別精度有限,是一種近似的大小,是個大約數,所以我們在比較的數位大小的時候儘量避免用float型進行比較
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1); //強制型別轉換
System.out.println(c2);
System.out.println((int)c2); //強制型別轉換
//其實所有的字元本質上還是數位,就比如說阿斯科碼錶 碼表,每個字元都有對應的數位表示
char c3 = '\u0045'; //其中的數位是16進位制
System.out.println(c3);
其實字元在本質上也是有數位表示的,有一個阿斯科碼錶 碼表格,裏面標明瞭字元和數位之間的對應關係。以上程式碼通過強制型別轉換,把字元型的變數轉換成int(整型);c3是把數位型轉換成字元型,然後輸出其字元型。
// \t 指的是製表符
// \n 指的是換行符
System.out.println("hello\tworld");
System.out.println("hello\nworld");
一個語言中的跳脫字元很多,這裏就列舉了兩個常用的。
\t表示製表符,表現形式上就是敲了幾個空格的樣子
\n表示回車符,變現形式上就是換行輸出
boolean flag = true;
if(flag == true){ } //新手
if(flag){ } //老手
在判斷語句中,如果while()或者if()的判定條件中只寫了一個變數沒有寫變數應該滿足的範圍,布爾值預設不寫就是真的意思,即if(flag){}表示的就是如果flag=0,那麼就執行大括號中的語句。