前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java数组及二维数组初始化与赋值方法总结

Java数组及二维数组初始化与赋值方法总结

作者头像
全栈程序员站长
发布2022-09-01 14:47:00
8670
发布2022-09-01 14:47:00
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

一维数组初始化

1.定义数组直接赋值

代码语言:javascript
复制
int a[]= { 
   1,2,3,4,5};

2.用new在数组中创建元素

代码语言:javascript
复制
int a[]=new int[]{ 
   1,2,3};

注意:后面的[]不要忘了

3.创建指定大小数组,但不赋值

代码语言:javascript
复制
		int c[]=new int[3];
		System.out.println(Arrays.toString(c));

注意:基本类型会自动初始化为空值,int型则为0.输出结果为[0, 0, 0],Arrays.toString产生一维数组的可打印版本。

4.先声明再赋值

代码语言:javascript
复制
		int c[]=new int[3];
		for(int i=0;i<3;i++) { 
   
			c[i]=i;
		}

注意:若声明后,直接用c={1,2,3}操作是错误的。

5.一个数组赋给另一个数组

代码语言:javascript
复制
		int a[]= { 
   1,2,3,4,5};
		int b[];
		b=a;

注意:这种方法真正做的只是复制了一个引用,简单的说就是a,b指针指向同一个内存空间,即对b操作相当于对a操作,当然Java没提指针这个概念。

6.动态设定数组大小

代码语言:javascript
复制
	Scanner a=new Scanner(System.in);
	int length;
	length=a.nextInt();
	int num[]=new int[length];
	while(a.hasNextInt()) { 
   
		num[i]=a.nextInt();
		i++;
	}

使用scanner类输入length大小,动态规定数组的大小。注意数组赋值的时候不要发生越界了。

7.创建非基本类型数组,则其创建了引用数组。注意与第三点基本类型数组区别 如下代码,即便new创建数组后,仍然还是引用数组,指导创建新的Integer对象,并将其赋给引用,初始化才完成。

代码语言:javascript
复制
		Integer d[]=new Integer[3];
		System.out.println(d[0]);//输出null
		for(int i=0;i<3;i++) { 
   
			d[i]=i;
			//直接用int赋值是因为装箱和拆箱原理,若不懂参考其他资料
		}

二维数组四种初始化

代码语言:javascript
复制
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][];
	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();
	}
}
}
代码语言:javascript
复制
输出:
2 1 2 
2 3 4 
3 5 6 7 

3 0 0 0 
3 0 0 0 

3 0 0 0 
3 0 0 0 

1 
1 
1 

最后,基本数组赋值与初始化就这么多,若我有写掉的后续我会补充。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141511.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一维数组初始化
  • 二维数组四种初始化
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档