java web定义数组_Java基础之数组--数组常用操作
3.2一維數(shù)組
3.2.1聲明數(shù)組
數(shù)組類型[] 數(shù)組名稱;int[] username;
或者
數(shù)組類型 數(shù)組名稱[];int username[];
3.2.2初始化一維數(shù)組
一維數(shù)組初始化有兩種格式,一種是先聲明再賦值,一種是直接聲明并賦值
int [] array = new int[5]; //創(chuàng)建一個整型數(shù)組對象,長度為5;
int [] array = {1,2,3,4,5}; //創(chuàng)建一個整型數(shù)組對象,長度為5,并同時賦值;
用new 運(yùn)算符來創(chuàng)建數(shù)組對象時,必須指定數(shù)組大小。創(chuàng)建數(shù)組對象時,僅僅是在內(nèi)存中為數(shù)組變量分配指定大小的空間,并沒有實(shí)際存儲數(shù)據(jù),這時數(shù)據(jù)會被自動賦初始值
//數(shù)字?jǐn)?shù)組,初值是 0;//布爾數(shù)組,初值是false;//字符數(shù)組,初值是'\0';//對象數(shù)組,初值是null;
3.2.3訪問一維數(shù)組
創(chuàng)建數(shù)組變量并賦值后,就可以訪問數(shù)組中元素
classoneday
{public static voidmain(String[] args)
{int [] weeks = {1,2,3,4,5,6,7};for(int i = 0;i
System.out.print(weeks[i]+" ");
}
}
}//結(jié)果 1 2 3 4 5 6 7
3.2.4修改一維數(shù)組元素
數(shù)組中元素值是可以改變的,在聲明一個變量和創(chuàng)建一個數(shù)組對象后,可通過為數(shù)組中元素賦值方式,來修改數(shù)組中任一元素的值
classoneday
{public static voidmain(String[] args)
{
String[] students= {"張三","李四"}; //創(chuàng)建兩個學(xué)生;
int languageScore[] = new int[2]; //定義一個整型數(shù)組,保存兩個同學(xué)的語文成績
languageScore[0] =97; //為第一個成績賦值
languageScore[1] =100; //為第二個成績賦值
System.out.println("張三:"+languageScore[0]);
System.out.println("李四:"+languageScore[1]);
}
}//結(jié)果:張三:97 李四:100
3.3數(shù)組常用操作
3.3.1數(shù)組長度
要獲得數(shù)組長度,可以用數(shù)組本身length屬性獲得。
classoneday
{public static voidmain(String[] args)
{int[] weeks = {1,2,3,4,5,6,7};int len = weeks.length; //獲取數(shù)組長度
System.out.println("數(shù)組長度為:"+len);
}
}//數(shù)組長度為:7
3.3.2數(shù)組填充
數(shù)組填充指的是將一個數(shù)組或數(shù)組指定元素用固定值添加到數(shù)組中,可以使用 Arrays 類提供的 fill 對數(shù)組填充
Arrays.fill(數(shù)組名,值); //將值全部填充到數(shù)組
Arrays.fill(數(shù)組名,開始下標(biāo),結(jié)束下表,值); //將值填充到開始下標(biāo)到結(jié)束下標(biāo)的部分
import java.util.Arrays; //導(dǎo)入Arrays 類
classoneday
{public static voidmain(String[] args)
{int [] a = new int[5]; //定義一個整型數(shù)組a
int [] b = new int[5]; //定義一個整型數(shù)組b
Arrays.fill(a,1); //給數(shù)組a填充值 1
Arrays.fill(b,2,4,0); //給數(shù)組b下標(biāo)2~4之間填充0//循環(huán)輸出數(shù)組元素
for(int i = 0;i
System.out.print(a[i]+" ");
}System.out.println();for(int i =0;i
System.out.print(b[i]+" ");
}System.out.println();
}
}//1 1 1 1 1//0 0 0 0 0
3.3.3數(shù)組復(fù)制
數(shù)組復(fù)制是將一個指定數(shù)組范圍內(nèi)的元素值復(fù)制到另一個數(shù)組中去,利用 Java 提供的 Arraycopy() 函數(shù)(方法)來進(jìn)行數(shù)組的復(fù)制操作。
//Arraycopy (數(shù)組a,開始復(fù)制下標(biāo),復(fù)制到數(shù)組b,開始復(fù)制下標(biāo),復(fù)制長度);
eg:將數(shù)組a的元素從第二個開始復(fù)制到數(shù)組b的第二個元素開始中,復(fù)制5個長度
import java.util.Arrays; //導(dǎo)入Arrays 類
classoneday
{public static voidmain(String[] args)
{int [] a = {1,2,3,4,5,6,7};int [] b ={11,12,13,14,15,16,17};
System.arraycopy(b,1,a,1,5);
System.out.println("復(fù)制后的a數(shù)組值為:");for(int i=0;i
System.out.print(a[i]+" ");
}
}
}//復(fù)制后的a數(shù)組值為://1 12 13 14 15 16 7
3.3.4數(shù)組比較
數(shù)組之間可以比較,如果兩個數(shù)組長度一樣,并且相同位置的元素也一樣,那么這兩個數(shù)組相等;否則,不相等。可以使用 Arrays 提供的 equals 來判斷兩個數(shù)組是否相等。
//Arrays.equals(數(shù)組1,數(shù)組2);
import java.util.Arrays; //導(dǎo)入Arrays 類
classoneday
{public static voidmain(String[] args)
{int [] a = new int[5];int [] b = new int[5];
Arrays.fill(a,1); //給數(shù)組a填充1
Arrays.fill(b,2,4,20); //用20來填充數(shù)組b的下標(biāo)2~4的部分
if(Arrays.equals(a,b)){
System.out.print("兩個數(shù)組相等");
}else{
System.out.print("兩個數(shù)組不等");
}System.out.println();
}
}//兩個數(shù)組不等//Arrays.equals 返回值為 boolean
3.3.5數(shù)組排序
數(shù)組排序主要包括 sort 函數(shù)(方法)排序和冒泡排序
Arrays.sort(數(shù)組);//或者
Arrays.sort(數(shù)組,開始下標(biāo),結(jié)束下標(biāo));
①sort 函數(shù)(方法)是升序排序,可以將數(shù)組全部排序,也可以在指定范圍內(nèi)將元素排序。
import java.util.Arrays; //導(dǎo)入Arrays 類
classoneday
{public static voidmain(String[] args)
{int [] a = {12,62,53,74,8};int [] b = {45,68,2,56,7};//將數(shù)組a全部排序
Arrays.sort(a);//將數(shù)組b第2個和第4個之間排序
Arrays.sort(b,2,4);
System.out.println("數(shù)組a排序后為:");//循環(huán)輸出a元素
for(int i = 0;i
System.out.print(a[i]+" ");
}
System.out.println();
System.out.println("數(shù)組b排序后為:");for(int i = 0;i
System.out.print(b[i]+" ");
}
}
}/*數(shù)組a排序后為:
8 12 53 62 74
數(shù)組b排序后為:
45 68 2 56 7*/
②冒泡排序法 ,又稱為交換排序法。
classoneday
{public static voidmain(String[] args)
{int [] a = {12,62,53,74,8};int temp; //定義一個中間量進(jìn)行交換
for(int i = 0;ia[j]){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
System.out.println("數(shù)組a排序后:");for(int i=0;i
System.out.print(a[i]+" ");
}
}
}/*數(shù)組a排序后:
8 12 53 62 74*/
3.3.6在數(shù)組中搜索指定元素
使用 Arrays 提供的 binarySearch 函數(shù)來搜索指定元素
binarySearch(數(shù)組,指定元素);//或者
binarySearch(數(shù)組,開始位置,結(jié)束位置,指定元素);
binarySearch 方法返回值是 int 類型,指所在的下標(biāo)
classoneday
{public static voidmain(String[] args)
{int [] a = {12,62,53,74,8};int num1 = Arrays.binarySearch(a,53);
System.out.println("53的下標(biāo)為:"+num1);
}
}//53的下標(biāo)為:2
3.3.7把數(shù)組轉(zhuǎn)換成字符串
任何數(shù)組類型都可以使用 Arrays 類的 toString 函數(shù)(方法)轉(zhuǎn)換為字符串。
//toString(數(shù)組類型,數(shù)組名);
返回值為字符串類型
classoneday
{public static voidmain(String[] args)
{int [] a = {12,62,53,74,8};double [] b = {3.68,56.44,99.51,12.3};//輸出數(shù)組轉(zhuǎn)換后的字符串
System.out.println("int類型數(shù)組a轉(zhuǎn)換成字符串為:"+Arrays.toString(a));
System.out.println("double類型數(shù)組b轉(zhuǎn)換成字符串為:"+Arrays.toString(b));
}
}/*int類型數(shù)組a轉(zhuǎn)換成字符串為:[12, 62, 53, 74, 8]
double類型數(shù)組b轉(zhuǎn)換成字符串為:[3.68, 56.44, 99.51, 12.3]*/
3.4多維數(shù)組
3.4.1聲明二維數(shù)組
數(shù)組類型 [] [] 數(shù)組名字;int[] [] num;//或者
數(shù)組類型 數(shù)組名字 [] [];int num [] [];
3.4.2創(chuàng)建二維數(shù)組
創(chuàng)建二維數(shù)組對象有兩種格式:
int [] [] num = new int[3][4]; //創(chuàng)建一個int類型的二維數(shù)組,長度為3和4;
String[][] username = new String[2][2] //創(chuàng)建一個string類型數(shù)組,長度為2和2//或者//創(chuàng)建并賦值
int [][] num = {{3,4,5},{6,7,8,9}};
String [][] username= {{"張三","李四"},{"趙二","老王"}};
3.4.3訪問二維數(shù)組
創(chuàng)建數(shù)組變量并賦值后就可以訪問二維數(shù)組,第一個下標(biāo)為行索引,第二個下標(biāo)為列索引
//int[] [] num1={{10,20,30,40},{50,60,70,80}};
列下標(biāo)0
列下標(biāo)1
列下標(biāo)2
列下標(biāo)3
行下標(biāo)0
10
20
30
40
行下標(biāo)1
50
60
70
80
classoneday
{public static voidmain(String[] args)
{int[] [] num1={{10,20,30,40},{50,60,70,80}};
System.out.println(num1[0][2]);
}
}//30
上述輸出數(shù)組num1的第一行(下標(biāo)為0)第三列(下標(biāo)為2)的元素,輸出值為:30
3.4遍歷二維數(shù)組
import java.util.Arrays; //導(dǎo)入Arrays 類
classoneday
{public static voidmain(String[] args)
{int [] [] a={{1,2,3},{4,5,6},{7,8,9}}; //定義一個整型二維數(shù)組a
int [] [] b=new int[3][3]; //定義一個整型二維數(shù)組b
int k = 1;int i,j =0;for(i=0;i
b[i][j]=k++;
}//輸出a數(shù)組;
System.out.println("輸出a數(shù)組");for(i=0;i
System.out.print(a[i][i]+" ");
}
System.out.println();
}//輸出b數(shù)組
System.out.println("輸出b數(shù)組");for(i=0;i
System.out.print(b[i][j]+" ");
}
System.out.println();
}
}
}
}/*輸出a數(shù)組
1 1 1
5 5 5
9 9 9
輸出b數(shù)組
1 2 3
0 0 0
0 0 0*/
非常感謝一書對我的幫助,本文借鑒于此,僅用來學(xué)習(xí),回顧,鞏固。再次感謝。
總結(jié)
以上是生活随笔為你收集整理的java web定义数组_Java基础之数组--数组常用操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jupyter ipython disp
- 下一篇: java美元兑换,(Java实现) 美元