Java 中的變量、運算符
常量和變量
常量:常量是程式中不可改變的量
變量:變量是程式運作中可以修改的量
注意:
變量名必須以字母下劃線或者美元符号"$"開頭
黃色---警告(提示你可能不安全)
紅色---編譯錯誤(文法錯誤)
變量名字不能重複定義
在main函數外面能不能通路(擷取)main函數内的變量
變量生命周期
在函數中定義變量 局部變量
局部變量的生命周期 出了函數 就通路不到(被銷毀了)
定義變量:(公式)
資料類型 變量名 = 初值;
資料類型分類
基本資料類型
位元組類型:
byte 位元組類型 在記憶體當中占一個位元組 一個位元組使用個二進制位表示( )
例如:
//定義一個byte類型的變量
byte b = ;
附:不同資料類型取值範圍不同
byte 的取值範圍:-~
可以表示^個數 ----表示個數
--- 個數 --- ^ - ----
(-) --- (-) 個數
--- -^ ---- -
二進制的最高位叫符号位(符号位是代表個負數)除了符号位都叫操作位
整型:
short 短整型 占個位元組
int 整型 占個位元組 取值範圍: -^~^ -
long 長整型 占個位元組
例如:
short s = ;
int i = ;
long l = ;
小數類型:
float 單精度浮點型 個位元組
double 雙精度浮點型 個位元組
例如:
//定義一個double類型的變量
//如果定義一個小數 系統會預設為是double類型的
double d = ;
//定義一個float類型的變量
//在定義float類型的時候 需要加一個辨別(加個f)
float f = f;
字元類型:
char 注意:指派字元類型需要用單引号''
例如:
char a = 'c';
布爾類型:用于判斷
boolean
特點:隻有兩個值
true/false 真/假
例如:
//定義一個boolean類型
boolean bl = false;
System.out.println(bl);
引用資料類型:類、接口、數組
類型轉換
隐式轉換:
指派 int 類型的時候,如果用 double 類型接收這個數
系統會把 int 類型轉換成 double 類型
注意:隐式轉換隻能把小類型向大類型去轉
例如:
double d1 = ;
System.out.println(d1);
強制類型轉換:
将一個資料類型強制轉換成其他資料類型
例如:
//定義一個字元類型
//字元類型和整型之間可以互相轉換
char c = 'a';
System.out.println((double)c);
運算符
算術運算符
+ - * /
%(取餘運算/取模運算)
++ --(一般在循環當中使用、循環增量、計數器、遞歸)
例如:
//對比自己小的數取餘等于這個數本身
//零對任何數取餘都是零
System.out.println(%);
//自增(減)運算符
//a++表示 a = a + 1;
//a--表示 a = a - 1;
//如果++在後(a++),先參與運算,再進行自增
//如果++在前(++a),先進行自增,再參與運算
int a = ;
a++;
System.out.println(a);
int a1 = ;
int b1 = a1 + a1++;// 10 + 10
System.out.println(a1);// 11
System.out.println(b1);// 20
int a2 = ;
int b2 = a2 + ++a2;// 10 + 11
System.out.println(a2);// 11
System.out.println(b2);// 21
int a3 = ;
int b3 = a3++ + a3;// 10 + 11
System.out.println(a3);// 11
System.out.println(b3);// 21
int a4 = ;
int b4 = ++a4 + a4;// 11 + 11
System.out.println(a4);// 11
System.out.println(b4);// 22
邏輯運算符
&& 邏輯與
書寫方式:
(判斷條件) && (判斷條件)
規則:一假則假
如果條件和條件同時為真,這時整個表達式傳回一個真
如果條件和條件有一個為假,這時整個表達式傳回一個假
例如:
boolean bl1 = true && false;
System.out.println(bl1);
|| 邏輯或
書寫方式:
(判斷條件) || (判斷條件)
規則:一真則真
如果條件和條件同時為假,這時整個表達式傳回一個假
如果條件和條件有一個為真,這時整個表達式傳回一個真
例如:
boolean bl2 = false || true;
System.out.println(bl2);
! 邏輯非 : 非真既假 非假既真
例如:
boolean bl3 = !true;
System.out.println(bl3);
注意: 邏輯與 和 邏輯或 短路現象
例如:
/*
* 邏輯與短路
* 當條件1為假時,整個表達式均為假,這時條件2根本不會被執行
*/
int num1 = ;
int num2 = ;
boolean b1 = (num1 < num2) && (++num1 > num2);
System.out.println(num1);
System.out.println(b1);
/*
* 邏輯或短路
* 當條件1為真時,整個表達式均為真,這時條件2根本不會被執行
*/
int num3 = ;
int num4 = ;
boolean b2 = (num3 > num4) || (++num3 > num4);
System.out.println(num3);
System.out.println(b2);
關系運算符
> < <= >= == !=
a > b 成立傳回一個 true 反之傳回 false
判斷條件上使用
指派運算符
三目運算符(三元運算符/條件表達式)
三目運算符:
(判斷條件) ? 值 : 值;
成立 傳回值
不成立 傳回值
例:
// 求兩數之間的最大值
int num1 = ;
int num2 = ;
int max = (num1 > num2) ? num1 : num2;
如果判斷條件成立則傳回num1
如果判斷條件不成立則傳回num2
System.out.println(max);
例:
//使用三木運算符求三個數的最大值
int num1 = ;
int num2 = ;
int num3 = ;
int max = (num1 > num2) ? num1 : num2;
max = (max > num3) ? max : num3;
System.out.println(max);
http://blog.csdn.net/huzongnan/article/list