賦值運算符
= 賦值
+=加後賦值
-=減後賦值
*=乘後賦值
/=除後賦值
%=取餘後賦值
a+=2 相似於a=a+2 其餘同樣java
比較運算符
==等於
!=不等於
<小於
>大於
<=小於等於
>=大於等於dom
邏輯運算符
& 與
| 或
^異或
!非
&&短路與
||短路非
短路與&&:參與運算的兩邊數據,有false,則運算結果爲false;
短路或||:參與運算的兩邊數據,有true,則運算結果爲true;
邏輯非! : 參與運算的數據,原先是true則變成false,原先是false則變成true。
異或^ 兩邊相同爲false 不一樣爲true3d
對於&&,若是第一個值爲false,那麼第二個再也不計算,若是第一個值爲true,那麼還要計算第二個值;blog
對於||,若果第一個值爲false,那麼還要計算第二個值,若是第一個值爲true,那麼第二個值不會計算;字符串
對於&和|操做符,兩邊不管如何都計算。it
三元運算符for循環
格式
(條件表達式)?表達式1:表達式2;
運算規則
先判斷條件表達式的值,若爲true,運算結果爲表達式1;若爲false,運算結果爲表達式2。
運算優先級
括號>正負號>自增自減,非>乘除,取餘>加減>移位運算>大小關係>相等關係>按位與>按位異或>按位或>邏輯與>邏輯或>條件運算>賦值運算>位賦值運算class
引用數據類型
在使用時先導包,import java.util.類(如Scanner,Random)
Scanner類
格式
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();輸入整型
int i = sc.next();輸入字符串
double i = sc.nextDouble();輸入浮點型
Random 隨機數類
格式
Random random = new Random();
int i = random.nextInt(100);
隨機從0-100之間取一個整型,但不包含100;
double i = random.nextDouble();
隨機從0-1之間去一個浮點型,但不含1;
流程控制語句
判斷
if(){} 知足某種條件,就進行某種處理
if(){}else{}若是知足某種條件,就進行某種處理,不然就進行另外一種處理,與三元運算符相似
if(){}else if(){}else{}用於對多個條件進行判斷,進行多種不一樣的處理
循環
while
while循環語句和選擇結構if語句有些類似,都是根據條件判斷來決定是否執行大括號內的執行語句。區別在於,while語句會反覆地進行條件判斷,只要條件成立,{}內的執行語句就會執行,直到條件不成立,while循環結束。
結構
while(判斷語句){循環語句}
for
for關鍵字後面()中包括了三部份內容:初始化表達式、循環條件和操做表達式,它們之間用「;」分隔,{}中的執行語句爲循環體。
格式
for(初始表達式a;循環條件b;操做表達式c){循環語句d}
循環步驟 a--b--d--c--b--
do while
do…while循環語句和while循環語句功能相似,可是do while循環體會先執行一次,而後再根據循環條件來決定是否繼續執行。
do{循環體}while()import
死循環
無限循環存在的緣由是並不知道循環多少次,經過某些條件,來控制循環
格式
while(true){}
或
for(;;){}隨機數
循環嵌套
嵌套循環是指在一個循環語句的循環體中再定義一個循環語句的語法結構。while、do…while、for循環語句均可以進行嵌套,而且它們之間也能夠互相嵌套
如 for(){
for(){}
}
跳轉語句
break 在switch條件語句和循環語句中均可以使用break語句。當它出如今switch條件語句中時,做用是終止某個case並跳出switch結構。當它出如今循環語句中,做用是跳出循環語句,執行後面的代碼。
continue continue語句用在循環語句中,它的做用是終止本次循環,執行下一次循環
標記當break語句出如今嵌套循環中的內層循環時,它只能跳出內層循環,若是想使用break語句跳出外層循環則須要對外層循環添加標記
引用數據類型與循環判斷綜合練習------猜數字
import java.util.Random; import java.util.Scanner; public class Demo { public static void main(String[] args) { Random random = new Random(); int ans = random.nextInt(100); Scanner sc = new Scanner(System.in); int num; do { num = sc.nextInt(); if(ans > num) { System.out.println("Sorry,大點"); }else if(ans < num){ System.out.println("Sorry,小點"); }else { System.out.println("答對了"); } }while(num!=ans); } }