大學(xué)生做那個視頻網(wǎng)站財經(jīng)新聞最新消息
目錄
一、變量
1、變量的定義
2、變量的聲明格式
3、變量的注意事項(xiàng)
4、變量的作用域
二、常量
三、命名規(guī)范
Java 語言支持如下運(yùn)算符:
1、算術(shù)運(yùn)算符
解析圖:
示例:
2、賦值運(yùn)算符
解析圖:
示例:
3、關(guān)系運(yùn)算符
解析圖:
示例:
4、邏輯運(yùn)算符
解析圖:
?編輯?示例:
5、位運(yùn)算符
解析圖:
示例:
6、條件運(yùn)算符
語法結(jié)構(gòu):
示例:
7、instanceof 運(yùn)算符
語法結(jié)構(gòu):
示例:
四、運(yùn)算符優(yōu)先級
一、變量
1、變量的定義
- 在程序執(zhí)行的過程中變量的值會發(fā)生變化,直白來說就是用來存儲可變化的數(shù)據(jù)。從本質(zhì)上講,變量其實(shí)指的是內(nèi)存中的一小塊存儲空間,空間位置是確定的,但是里面放置的值不確定。
- 比如屋子里有多個鞋柜,而你有很多雙不同品牌的鞋,鞋柜里可以放A品牌的鞋,也可以放B品牌的鞋等等,你給每一個鞋柜設(shè)計個標(biāo)簽,至于這些鞋柜里放哪些品牌的鞋需要你自己去放。這些標(biāo)簽相當(dāng)于我們定義的變量,至于變量里放什么,你可以自行決定。
2、變量的聲明格式
[訪問控制符]? [修飾符]? 數(shù)據(jù)類型? 變量名 [ = 初始值];
3、變量的注意事項(xiàng)
-
每個變量都有類型,類型可以是基本類型,也可以是引用類型。
-
變量名必須是合法的標(biāo)識符。
-
變量聲明是一條完整的語句,因此每一個聲明都必須以分號結(jié)束
-
逐一聲明每一個變量可以提高程序可讀性。
4、變量的作用域
-
類變量(靜態(tài)變量: static variable):獨(dú)立于方法之外的變量,用 static 修飾。
從屬于類,生命周期伴隨類始終,從類加載到卸載。?如果不自行初始化,他會自動初始化成該類型的默認(rèn)初始值。(數(shù)值型變量初始化成0或0.0,字符型變量的初始化值是16位的0,布爾型默認(rèn)是false)
public class Employee {//salary是靜態(tài)的私有變量private static double salary;// DEPARTMENT是一個常量public static final String DEPARTMENT = "開發(fā)人員";public static void main(String[] args){salary = 10000;System.out.println(DEPARTMENT+"平均工資:"+salary);}
}
-
局部變量(lacal variable):類的方法中的變量。
在使用前必須先聲明和初始化(賦初值)。局部變量沒有默認(rèn)值,所以局部變量被聲明后,必須經(jīng)過初始化,才可以使用。
public static void main(String[] args) {int i=10;int j = i+5 ; System.out.println(j);
}
-
實(shí)例變量(成員變量:member variable):獨(dú)立于方法之外的變量,不過沒有 static 修飾。
從屬于對象,生命周期伴隨對象始終。如果不自行初始化,他會自動初始化成該類型的默認(rèn)初始值(數(shù)值型變量初始化成0或0.0,字符型變量的初始化值是16位的0,布爾型默認(rèn)是false)。
public class Test {// 這個實(shí)例變量對子類可見public String name;// 私有變量,僅在該類可見private double salary;...
}
二、常量
- 所謂常量可以理解成一種特殊的變量,它的值被設(shè)定后,在程序運(yùn)行過程中不允許被改變。
- 常量名一般使用大寫字符。程序中使用常量可以提高代碼的可維護(hù)性。
final 常量名=值;
final double PI=3.14; final String LOVE="hello";
三、命名規(guī)范
有變量、方法、類名:見名知意。
類變量、實(shí)例變量和局部變量首字母小寫,并且遵循駝峰原則。比如:nextMonth。
常量大寫字母和下劃線。比如:MIN_VALUE。
類名首字母大寫,并且遵循駝峰原則。比如:HelloWorld。
方法名首字母小寫,并且遵循駝峰原則。比如:twiceJump()。
四、運(yùn)算符(operator)
Java 語言支持如下運(yùn)算符:
- 算術(shù)運(yùn)算符: +,-,*,/,%,++,–
- 賦值運(yùn)算符: =,+=,-=,*=,/=
- 關(guān)系運(yùn)算符: >,<,>=,<=,==,!= instanceof
- 邏輯運(yùn)算符: &&,||,!
- 位運(yùn)算符: &,|,^,~ , >>,<<,>>> (了解!!!)
- 條件運(yùn)算符: ?
-
instanceof 運(yùn)算符
1、算術(shù)運(yùn)算符
解析圖:
示例:
public static void main(String[] args) {int a = 10;int b = 20;int c = 25;int d = 25;System.out.println("a + b = " + (a + b) );System.out.println("a - b = " + (a - b) );System.out.println("a * b = " + (a * b) );System.out.println("b / a = " + (b / a) );System.out.println("b % a = " + (b % a) );System.out.println("c % a = " + (c % a) );System.out.println("a++ = " + (a++) );System.out.println("a-- = " + (a--) );// 查看 d++ 與 ++d 的不同//首先在控制臺輸出,然后d自增為26System.out.println("d++ = " + (d++) );//首先將d自增為27,然后在控制臺輸出System.out.println("++d = " + (++d) );
}
運(yùn)行結(jié)果:
a + b = 30a - b = -10a * b = 200b / a = 2b % a = 0c % a = 5a++ = 10a-- = 11d++ = 25++d = 27
注意:
除法運(yùn)算,兩個操作數(shù)是整型的,結(jié)果也會是整型的,舍棄掉小數(shù)部分;如果有一個數(shù)是浮點(diǎn)數(shù),結(jié)果將自動轉(zhuǎn)型為浮點(diǎn)型
取余運(yùn)算,兩個操作數(shù)是整型的,結(jié)果也會是整型的,如果有一個數(shù)是浮點(diǎn)數(shù),結(jié)果將自動轉(zhuǎn)型為浮點(diǎn)型
自增自減運(yùn)算,a++ 相當(dāng)于 a = a + 1, a++ 是先運(yùn)用在計算,++a 先計算在運(yùn)用
2、賦值運(yùn)算符
解析圖:
示例:
public class Test {public static void main(String[] args) {int a = 10;int b = 20;int c = 0;c = a + b;System.out.println("c = a + b = " + c );c += a ;System.out.println("c += a? = " + c );c -= a ;System.out.println("c -= a = " + c );c *= a ;System.out.println("c *= a = " + c );a = 10;c = 15;c /= a ;System.out.println("c /= a = " + c );a = 10;c = 15;c %= a ;System.out.println("c %= a? = " + c );c <<= 2 ;System.out.println("c <<= 2 = " + c );c >>= 2 ;System.out.println("c >>= 2 = " + c );c >>= 2 ;System.out.println("c >>= 2 = " + c );c &= a ;System.out.println("c &= a? = " + c );c ^= a ;System.out.println("c ^= a?? = " + c );c |= a ;System.out.println("c |= a?? = " + c );}
}
運(yùn)行結(jié)果:
c = a + b = 30
c += a? = 40
c -= a = 30
c *= a = 300
c /= a = 1
c %= a? = 5
c <<= 2 = 20
c >>= 2 = 5
c >>= 2 = 1
c &= a? = 0
c ^= a?? = 10
c |= a?? = 10
3、關(guān)系運(yùn)算符
解析圖:
示例:
public class Test {public static void main(String[] args) {int a = 10;int b = 20;System.out.println("a == b = " + (a == b) );System.out.println("a != b = " + (a != b) );System.out.println("a > b = " + (a > b) );System.out.println("a < b = " + (a < b) );System.out.println("b >= a = " + (b >= a) );System.out.println("b <= a = " + (b <= a) );}
}
運(yùn)算結(jié)果:
a == b = false
a != b = true
a > b = false
a < b = true
b >= a = true
b <= a = false
4、邏輯運(yùn)算符
解析圖:
?示例:
public class Test {public static void main(String[] args) {boolean a = true;boolean b = false;System.out.println("a && b = " + (a&&b));System.out.println("a || b = " + (a||b) );System.out.println("!(a && b) = " + !(a && b));}
}
運(yùn)行結(jié)果:
a && b = false
a || b = true
!(a && b) = true
5、位運(yùn)算符
解析圖:
示例:
public class Test {public static void main(String[] args) {int a = 60; /* 60 = 0011 1100 */?int b = 13; /* 13 = 0000 1101 */int c = 0;c = a & b;?????? /* 12 = 0000 1100 */System.out.println("a & b = " + c );c = a | b;?????? /* 61 = 0011 1101 */System.out.println("a | b = " + c );c = a ^ b;?????? /* 49 = 0011 0001 */System.out.println("a ^ b = " + c );c = ~a;????????? /*-61 = 1100 0011 */System.out.println("~a = " + c );c = a << 2;???? /* 240 = 1111 0000 */System.out.println("a << 2 = " + c );c = a >> 2;???? /* 15 = 1111 */System.out.println("a >> 2? = " + c );c = a >>> 2;???? /* 15 = 0000 1111 */System.out.println("a >>> 2 = " + c );}
}
運(yùn)行結(jié)果:
a & b = 12
a | b = 61
a ^ b = 49
~a = -61
a << 2 = 240
a >> 2 = 15
a >>> 2 = 15
6、條件運(yùn)算符
語法結(jié)構(gòu):
variable x = (expression) ? value if true : value if false
示例:
//基本格式:variable x = (expression) ? value if true : value if false
public static void main(String[] args){int a , b;a = 10;// 如果 a 等于 1 成立,則設(shè)置 b 為 20,否則為 30b = (a == 1) ? 20 : 30;System.out.println( "Value of b is : " + b );// 如果 a 等于 10 成立,則設(shè)置 b 為 20,否則為 30b = (a == 10) ? 20 : 30;System.out.println( "Value of b is : " + b );
}
運(yùn)行結(jié)果:
輸出結(jié)果:Value of b is : 30Value of b is : 20
7、instanceof 運(yùn)算符
該運(yùn)算符用于操作對象實(shí)例,檢查該對象是否是一個特定類型(類類型或接口類型)。
語法結(jié)構(gòu):
( Object reference variable ) instanceof ?(class/interface type)
示例:
class Vehicle {}public class Car extends Vehicle {public static void main(String[] args){Vehicle a = new Car();boolean result = a instanceof Car;System.out.println( result);}
}
運(yùn)行結(jié)果:
true
四、運(yùn)算符優(yōu)先級
我們小學(xué)都學(xué)過:先加減,后乘除,所以優(yōu)先級我們并不陌生。
當(dāng)多個運(yùn)算符出現(xiàn)在一個表達(dá)式中,誰先誰后呢?這就涉及到運(yùn)算符的優(yōu)先級別的問題。在一個多運(yùn)算符的表達(dá)式中,運(yùn)算符優(yōu)先級不同會導(dǎo)致最后得出的結(jié)果差別甚大。
下表中具有最高優(yōu)先級的運(yùn)算符在的表的最上面,最低優(yōu)先級的在表的底部。