java一維數組定義
① java:java一維數組和二維數組的定義方法
(一)一維二維數組的定義:
[html]view plain
/*一維數組定義的幾種方法:
*int[]x;
intx[];
二維數組定義的幾種方法:
int[][]y;
inty[][];
int[]y[];
int[]x,y[];//x一維、y二維
int[]x;
int[]y[];
-----------
a:
x[0]=y;//cuo
b:
y[0]=x;//yes
c:
y[0][0]=x;//cuo
d:
x[0][0]=y;//cuo
e:
y[0][0]=x[0];//yes
f:
x=y;//cuo
*/
packagetest;
publicclasstest{
publicstaticvoidmain(String[]args)
{
inta[][]=newint[3][4];
for(intx=0;x<3;x++)
{
for(inty=0;y<4;y++)
System.out.print(a[x][y]);
System.out.println();
}
}
}
控制台輸出結果:
0000
0000
0000
(二)使用二維數組:
[html]view plain
② java 中定義一個int型的一維數組,包含10個隨機元素,
③ java 如何定義數組和初始化
1.數組的定義:
數組可以分為一維數組,二維數組,多維數組。一維數組的定義有以下兩種方式:
type[]arr_name;
typearr_name[];
二維數組的定義方式如下:
type[][]arr_name;
typearr_name[][];
多維數組可根據維數指定相應個數的[ ]
int[]arr1;
String[]arr2;
floatarr3[];
String[][]arr4;
2.數組的初始化:
數組的初始化有以下兩種方式
靜態初始化
靜態初始化是指在定義的同時指定數組元素內容,示例代碼如下:
int[]arr1={1,2,3,4,5};
String[]arr2={"tom","rose","sunny"};
String[][]arr3={{"tom","American"},{"jack","England"},{"張三","china"}};
動態初始化
動態初始化是指在定義時首先通過new 關鍵字開辟指定大小的存儲空間,然後在為數組指定內容
int[]arr1=newint[2];
arr1[0]=10;
arr2[1]=20;
arr3[2]=30;
④ java中數組的特點數組的聲明和初始化方法和簡單變數有什麼不同
java語言中,數組是一種最簡單的復合數據類型。數組是有序數據的集合,數組中的每個元素具有相同的數據類型,可以用一個統一的數組名和下標來唯一地確定數組中的元素。數組有一維數組和多維數組。
★ 一維數組
1. 一維數組的定義
type arrayName[ ];
類型(type)可以為Java中任意的數據類型,包括簡單類型和復合類型。
例如:
int intArray[ ];
Date dateArray[];
2.一維數組的初始化
◇ 靜態初始化
int intArray[]={1,2,3,4};
String stringArray[]={"abc", "How", "you"};
◇ 動態初始化
1)簡單類型的數組
int intArray[];
intArray = new int[5];
2)復合類型的數組
String stringArray[ ];
String stringArray = new String[3];/*為數組中每個元素開辟引用
空間(32位) */
stringArray[0]= new String("How");//為第一個數組元素開辟空間
stringArray[1]= new String("are");//為第二個數組元素開辟空間
stringArray[2]= new String("you");// 為第三個數組元素開辟空間
3.一維數組元素的引用
數組元素的引用方式為:
arrayName[index]
index為數組下標,它可以為整型常數或表達式,下標從0開始。每個數組都有一個屬性length指明它的長度,例如:intArray.length指明數組intArray的長度。
★多維數組
Java語言中,多維數組被看作數組的數組。
1.二維數組的定義
type arrayName[ ][ ];
type [ ][ ]arrayName;
2.二維數組的初始化
◇ 靜態初始化
int intArray[ ][ ]={{1,2},{2,3},{3,4,5}};
Java語言中,由於把二維數組看作是數組的數組,數組空間不是連續分配的,所以不要求二維數組每一維的大小相同。
◇ 動態初始化
1) 直接為每一維分配空間,格式如下:
arrayName = new type[arrayLength1][arrayLength2];
int a[ ][ ] = new int[2][3];
2) 從最高維開始,分別為每一維分配空間:
arrayName = new type[arrayLength1][ ];
arrayName[0] = new type[arrayLength20];
arrayName[1] = new type[arrayLength21];
…
arrayName[arrayLength1-1] = new type[arrayLength2n];
3) 例:
二維簡單數據類型數組的動態初始化如下,
int a[ ][ ] = new int[2][ ];
a[0] = new int[3];
a[1] = new int[5];
對二維復合數據類型的數組,必須首先為最高維分配引用空間,然後再順次為低維分配空間。
而且,必須為每個數組元素單獨分配空間。
例如:
String s[ ][ ] = new String[2][ ];
s[0]= new String[2];//為最高維分配引用空間
s[1]= new String[2]; //為最高維分配引用空間
s[0][0]= new String("Good");// 為每個數組元素單獨分配空間
s[0][1]= new String("Luck");// 為每個數組元素單獨分配空間
s[1][0]= new String("to");// 為每個數組元素單獨分配空間
s[1][1]= new String("You");// 為每個數組元素單獨分配空間
3.二維數組元素的引用
對二維數組中的每個元素,引用方式為:arrayName[index1][index2]
例如: num[1][0];
4.二維數組舉例:
【例2.2】兩個矩陣相乘
public class MatrixMultiply{
public static void main(String args[]){
int i,j,k;
int a[][]=new int [2][3]; //動態初始化一個二維數組
int b[][]={{1,5,2,8},{5,9,10,-3},{2,7,-5,-18}};//靜態初始化
一個二維數組
int c[][]=new int[2][4]; //動態初始化一個二維數組
for (i=0;i<2;i++)
for (j=0; j<3 ;j++)
a[i][j]=(i+1)*(j+2);
for (i=0;i<2;i++){
for (j=0;j<4;j++){
c[i][j]=0;
for(k=0;k<3;k++)
c[i][j]+=a[i][k]*b[k][j];
}
}
System.out.println("*******Matrix C********");//列印Matrix C標記
for(i=0;i<2;i++){
for (j=0;j<4;j++)
System.out.println(c[i][j]+" ");
System.out.println();
}
}
}
⑤ java一維數組和二維數組的區別
在java中數組被看成是一個對象
在定義數組時,有兩種定義方法:int[] a 和int a[];第二種是C/C++對數組定義方式,對於JAVA建議採用第一種定義方式。
總的原則:任何對象在被調用之前必須先被初始化!
1 一維數組的定義
//定義包含三個元素的一維數組
//方法1,先new對象,然後再初始化每個元素
int[] a = new int[3];
a[0] = 1;
a[1] = 2;
a[2] = 3;
方法一要注意的是不能這樣寫:
int[] a = new int[3];
a = {1,2,3};
原因是用new int[3]這種方式創建對象,對象已經被初始化並賦初值為0;可以用下面代碼驗證:
int[] d = new int[3];
for(int i=0;i<d.length;i++){
System.out.println(d[i]);
}
輸入結果是:0 0 0
如果再用a = {1,2,3};來賦值,大家知道常量是不能再被賦值的,不可修改的。
//方法2,直接賦初值來創建對象
int[] b = {1,2,3};
//方法3,new完對象直接初始化
int[] c = new int[]{1,2,3};
方法三要注意的是不能這樣寫: int[] c = new int[3]{1,2,3};
即這種方法不能指定維度,原因:如果指定了數組初始化操作,則不能定義維表達式。
注意:如果用new定義數組時,必須指定其維度,這樣定義是錯誤的: int[] d = new int[];
如果無法確定其元素個數,可以這樣定義:int[] e = {};
2 二維數組的定義
基本與一維數組類似
//定義一個3行5列的二維數組
//方法1,先new對象,然後再初始化每個元素
int[][] a = new int[3][5];
a[0][0]=1;
a[0][1]=2;
a[0][2]=3;
//方法2,直接賦初值來創建對象
int[][] b = {{1,1,1,1,1}, {2,2,2,2,2}, {3,3,3,3,3} };
//方法3,new完對象直接初始化
int[][] a = new int[][] {{1,1,1,1,1}, {2,2,2,2,2}, {3,3,3,3,3} };
⑥ 在Java定義一個整型一維數組,至少包含5個值,求數組中的最大值並輸出。
import java.util.*;
public class test1 {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
int[]a=new int[10];//定義一個長度為10的數組,名為:a
int max1=-1;
for(int i=0;i<6;i++)
{//輸入6個數
a[i]=cin.nextInt();
}
for(int i=0;i<6;i++)
{
max1=Math.max(max1,a[i]);
}
System.out.println(max1);
}
}
⑦ Java定義一個一維數組有哪幾種方法
首先: 一維數組的聲明 ; 代碼如下
int[]ary1;//Java推薦的數組聲明方式
intary2[];//不推薦,但也是正確的,C語言等使用這種方式
其次: 聲明的聲明和賦值
//參考一
int[]ary1={1,2,3};//聲明的時候,同時賦值
//參考二
int[]ary2=newint[3];//指定數組的長度為3
ary2[0]=1;//數組下標從0開始,依次給每個元素賦值
ary2[1]=2;
ary2[2]=3;
//參考三
int[]ary3=newint[]{1,2,3};//注意,這里的newint[]方框里不能指定長度
最後: 注意數組的默認值;
簡單數據類型,比如boolean類型的數組,默認值就是false, int類型的數組,默認值就是0.
對象類型的數組,比如Boolean類型的數組,默認值是null,Integer類型的數組,默認值還是null
int[]ary1=newint[1];
System.out.println(ary1[0]);//輸出0
Integer[]ary2=newInteger[1];
System.out.println(ary2[0]);//輸出null
boolean[]b1=newboolean[1];
System.out.println(b1[0]);//輸出false
Boolean[]b2=newBoolean[1];
System.out.println(b2[0]);//輸出null