數組的價值在存儲和處理多個同類型的多個變量的時候派上用場,比如有三百個學生,定義變量表示他們的成績,可以考慮用三百個變量,工作量很大,用數組則只要一個變量,每個人記住自己的下標就好了。
數組的要素:名稱,類型,下標(從0開始)
數組要在定義的時候確定長度(大小),後面就可以使用了,如下的案例:
也可以在定義的同時給數組賦值(初始化)
當然,不可能給數組挨個賦值,結合循環以及下標,可以方便的控制數組,如下的例子用到了數組的length屬性,表示長度:
下面的例子是典型的用法,從一個數組中查找某個值在不在其中
這是數組求和
這是求數組中的最大值,注意,max=0的做法是不對的,在所有都是數都是負數的情況下,他是最大的:
數組的排序,有很多方法,比如冒泡:
當然,java提供了相關的實現,在java.util.Arrays中:
作業:
-4: 定義一個數組,放入1---100內所有的偶數
-3:定義一個數組,存入所有的小寫字符(a-z),並倒序輸出
-2:定義一個數組,存放10名同學的年齡,然後給數組中所有的數漲一歲。然後輸出。
-1: 定義一個整數數組,求最大值,以及最大值的位置(不考慮最大值不止一個的情況)
0:定義一個String類型的數組,存放我們班學生姓名,然後輸入一個名字,查找其是否存在
1:輸出1-10000以內所有的質數並統計個數
2:定義一個整數數組,判斷是否是遞增有序的,即數組中的每一個數,都不大於其後面的數,比如{1,3,6},{1,2,2,4,6,9,9}等
3:定義一個長度為100的數組,放入1000以後的100個質數
4:輸出倒等腰三角形,高度由用戶輸入。從下往上*的個數分別是1,3,5,...每次加兩個。比如如下是高度為4的三角形
*******
*****
***
*
5:輸出一個空心的等腰三角形,高度由用戶輸入,周圍由 *組成,空格的數目分別是0,1,2,3,.....
比如,如下是一個高度為5的圖形
*
* *
* *
* *
*********
6:1、2、4、9個數字,能組成多少個互不相同且無重複數字的三位數?都是多少?