1. 程式人生 > >數組、運算符、流程控制

數組、運算符、流程控制

連接 邏輯 1.3 這一 相對 != 區別 同時 print

1.數組

1.1數組的基本概念及作用

1.數組是相同數據類型元素的集合

數組本身是引用數據類型,即對象。但是數組可以存儲基本數據類型,也可以存儲引用數據類型。

2.數組的舉例:

int [] a = new int []{45,65,548,74,12};

String [] s = new String []{"小紅","小李","小凱"};

1.2數組的聲明

1.數組的聲明的兩種方式:

數據類型 [] 數組名字 例如:int [] a;

數據類型 數組的名字 [] 例如: int a [];

註意:

Java語言中兩種聲明方法沒有任何區別,但是建議大家用第一種,避免混淆

a的數據類型。

數組在聲明後還只是一個空指針,不能使用,要想使用必須創建。

1.3數組的創建

1.數組創建的三種方式:

//聲明數組的同時,根據指定的長度分配內存,但數組中元素值都為默認的初始化值

double [] a=new double[15];

//聲明數組並分配內存,同時將其初始化

int[] b = new int[]{15, 56, 87, 458, 332};

//與前一種方式相同,僅僅只是語法相對簡略

int[] ary2 = {15, 56, 87, 458, 332};

2.從另一個角度,數組創建可以分為動態和靜態兩種

動態創建數組(沒有為元素賦值,可以結合for循環進行賦值)

char[] a = new char[12];

靜態創建數組,在創建的時候,即為每個元素賦初值

int[] ary1 = new int[]{45,23,45,6,15,23};

1.4數組的長度

int [] a = new int []{45,23,45,6,15,23};

System.out.println(a.length);

註意:數組的長度是屬性,String的長度是length();

創建數組的時候必須指定數組的長度,而且一經定義則不允許改變。

數組的長度雖然是7,但是在內存中實際給8個位置,另外一個存儲7.

1.5數組賦值

1.C語言中,不可以將數組直接賦值給另一個數組;

Java中,語法上允許這樣做,但實際得到的效果是兩個數組引用指向同一塊內存。

int[] a = {2, 4, 6, 8, 10};

int[] b;

ary2 = ary1; //允許這樣賦值

2.示例

public class test1 {

public static void main(String[] args) {

// TODO Auto-generated method stub

int [] a=new int [] {1,2,5,4,8,8,9};

int [] b;

b=a;

b[2]=325;

int i=0;

System.out.println("數組a中的元素:");

for(i=0;i<a.length;i++) {

System.out.println(a[i]);

}

System.out.println("數組b中的元素:");

for(i=0;i<b.length;i++) {

System.out.println(b[i]);

}

}

}

2.Java中的運算符

按照功能分,Java中的運算符可以分為四類:

算術運算符

位運算符

比較運算符

邏輯運算符

除了== !=+外,其他運算符都是針對基本數據類型進行運算,==!=可以對基本數據類型及引用類型進行運算,+還可以對字符串進行連接操作

重點:++--==!=&&||

2.1算術運算符

1.單目:+(取正)-(取負) ++(自增1- -(自減1

雙目:+ - * / %(取余)(+還可以連接字符串)

三目:a>b?true:false

說明:當a大於b的時候,為true(也就是冒號之前的值),否則為false;這整個運算符包括一個關系運算符(可以是“>"<""!="等等),一個“?”,一個“:”,冒號前後需要有兩個表達式或者是值或者是對象.

2.總結

1、單目運算中的++--的取值順序

2、基本運算符要掌握,尤其是/%

3、要掌握三目運算符的邏輯過程

2.2位運算符

位運算符:(先轉化成二進制再進行運算)

與(&)、非(~)、或(|)、異或(^

移位運算符:<<>>(有符號右移) 、 >>>(無符號右移)

左移1位相當於乘以2,右移1位相當於除以2,比乘除運算效率更高

2.3比較運算符

比較運算符:

== <,>,<=,>=,!=

==!=比較基本數據類型是比較值,比較引用類型是虛地址

除了== !=外,都只能比較基本數據類型

註意:比較運算符的返回值為truefalse

2.4邏輯運算符

1.用於連接兩個boolean類型的表達式

&& (雙與) 、|| (雙或) 、&(與)、|(或)、^(異或)、!(非運算)

2.註意事項

&&&的運算結果是相同的,對於&而言無論左邊為什麽值,右邊都參與運算;對於&&來說,只要左邊為false右邊就不再運算,直接返回false

|||的運算結果是相同的,對於|而言無論左邊為什麽值,右邊都參與運算;對於||來說,只要左邊為true右邊就不再運算,直接返回true

&&||可以理解為物理上的短路,實際中多用&&||

3.流程控制

Java中的流程:

順序流程

分支流程

循環流程

3.1分支語句if/else

1.條件語句 — if

條件語句ifelse

條件語句ifelse if

2.條件語句 — if (說明)

條件表達式可以是任何一種邏輯表達式

如果表達式值為true,則執行花括號的內容後,再執行後面的語句

如果表達的值為false,則直接執行後面的語句

如果,大括號只有一條語句,則可以省略大括號(推薦不省略)

if(c==‘+‘) System.out.println(a+b);

3.條件語句 — ifelse

nt x = 2;

if(x=2){

X+=2;

}

else{

X-=2;

}

System.out.println("x="+x);

4.條件語句ifelse if

int x = 88;

if(x<60){

System.out.println(“成績不合格”);

}

else if(x>=85){

System.out.println(“成績優秀”);

}

else{

System.out.println(“成級良好”);

}

6.總結

條件語句的三種格式

if語句和三目運算符的關系

if語句中的一些說明

3.2條件語句 — switch

1. 條件語句 — switch

語法格式switch

switch (表達式)

{

case 取值1:語句塊1

case 取值n:語句塊n

default: 語句塊n+1

}

2.條件語句 — switch(說明)

表達式的值只可以接受intbytecharshort 型、枚舉,JDK1.6以後String也可以,不接受其他類型的值,不允許有重復的case取值

switch一旦碰到第一次case匹配,程序就會跳轉到這個標簽位置

開始順序執行以後所有的程序代碼,而不管後面的case條件是否匹配,直到碰到break語句為止.

int x = 65;

switch (x) {

case x>90&&X<100:

System.out.println("A");

break;

case X>80&&X<90:

System.out.println("B");

break;

case X>70&&X<80:

System.out.println("C");

break;

default:

System.out.println("垃圾");

}

3.3循環語句forwhiledo/while

1.循環語句while

while (條件表達式)

{

執行語句塊

}

int x=1;

while(x<11){

System.out.println("x="+x);

x++;

}


2.循環語句 — dowhile 至少會執行一次循環

語法格式

do

{

執行語句塊;

} while(條件表達式 );

int x=3;

do{

System.out.println("x="+x);

x++;

} while(x<3);

3.循環語句 — for

語法格式

for(初始化表達式;循環條件表達式;循環後的操作表達式)

{

執行語句塊

}

int i=0;

for(i=0;i<a.length;i++) {

System.out.println(a[i]);

4.循環的中斷語句

循環的中斷語句break continue

中斷語句

多重循環中可以使用標號,指定中斷的具體循環

在使用循環語句時,只有循環條件表達式的值為false時,才能結束循環。有時,我們想提前中斷循環,要實現這一點,只需要在循環語句塊中添加breakcontinue語句

5.中斷語句 — break

break語句用於終止某個語句塊的執行。用在循環語句體中,可以強行退出循環。

break;”語句:可以出現在whiledowhileforswitch語句體中。

break label”語句 :可以出現在任何語句體中。多數還是使用在循環中。

6.中斷語句 — continue

continue語句用在循環語句體中,用於終止某次循環過程,跳過循環體中continue語句下未執行的循環,開始下一次循環過程

continue;” 語句:只能出現在循環語句whiledowhilefor

7.循環語句 — 死循環

for(int x=1;;x++)

{

System.out.println("x="+x);

}

數組、運算符、流程控制