Java数组及⼆维数组初始化与赋值⽅法总结
⼀维数组初始化
1.定义数组直接赋值
int a[]={1,2,3,4,5};
2.⽤new在数组中创建元素
int a[]=new int[]{1,2,3};
注意:后⾯的[]不要忘了
3.创建指定⼤⼩数组,但不赋值
int c[]=new int[3];
System.out.String(c));
注意:基本类型会⾃动初始化为空值,int型则为0.输出结果为[0, 0, 0],String产⽣⼀维数组的可打印版本。
4.先声明再赋值
int c[]=new int[3];
for(int i=0;i<3;i++){
c[i]=i;
}
注意:若声明后,直接⽤c={1,2,3}操作是错误的。
5.⼀个数组赋给另⼀个数组
int a[]={1,2,3,4,5};
int b[];
b=a;
注意:这种⽅法真正做的只是复制了⼀个引⽤,简单的说就是a,b指针指向同⼀个内存空间,即对b操作相当于对a操作,当然Java没提指针这个概念。
6.动态设定数组⼤⼩
Scanner a=new Scanner(System.in);
int length;
Int();
int num[]=new int[length];
while(a.hasNextInt()){
num[i]=a.nextInt();
i++;
}
使⽤scanner类输⼊length⼤⼩,动态规定数组的⼤⼩。注意数组赋值的时候不要发⽣越界了。
7.创建⾮基本类型数组,则其创建了引⽤数组。注意与第三点基本类型数组区别
如下代码,即便new创建数组后,仍然还是引⽤数组,指导创建新的Integer对象,并将其赋给引⽤,初始化才完成。
Integer d[]=new Integer[3];
System.out.println(d[0]);//输出null
for(int i=0;i<3;i++){
d[i]=i;
//直接⽤int赋值是因为装箱和拆箱原理,若不懂参考其他资料
}
⼆维数组四种初始化
import java.util.ArrayList;
public class learn1 {
public static void main(String args[]){
int[][]a1={{1,2},{3,4},{5,6,7}};
for(int i=0;i<a1.length;i++){
System.out.print(a1[i].length+" ");
for(int j=0;j<a1[i].length;j++)
System.out.print(a1[i][j]+" ");
System.out.println();
}
System.out.println();
int[][]a2=new int[2][3];
for(int i=0;i<a2.length;i++){
System.out.print(a2[i].length+" ");
for(int j=0;j<a2[i].length;j++)
System.out.print(a2[i][j]+" ");
System.out.println();
}
System.out.println();
int[][]a3=new int[2][];
java定义一维数组并赋值for(int i=0;i<a3.length;i++){
a3[i]=new int[3];
System.out.print(a3[i].length+" ");
for(int j=0;j<a3[i].length;j++)
System.out.print(a3[i][j]+" ");
System.out.println();
}
System.out.println();
ArrayList<Integer> a4[]=new ArrayList[3];
for(int i=0;i<a4.length;i++){
a4[i]=new ArrayList();
a4[i].add(1);
for(int j:a4[i])
System.out.print(j+" ");
System.out.println();
}
}
}
输出:
212
234
3567
3000
3000
3000
3000
1
1
1
最后,基本数组赋值与初始化就这么多,若我有写掉的后续我会补充。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论