java 创建数组的三种方式及区别

原创 2016年08月29日 09:59:35

创建数组的三种方式:其实分为2类,一种是静态的创建,如方式一。一种是动态的创建,只不过根据写法的不同分为方式二和方式三:

public static void main(String[] args) {
	// 1.方式一  声明 分配空间并赋值
	int[] arr1 = {1,2,3};
	// 2.方式二 显示初始化
	int[] arr2;
	arr2 = new int[]{1,2,3}; 
	// 3.方式三 显示初始化()
	int[] arr3;
	arr3 = new int[3];
}

他们的区别,方式一:在声明的时候直接就已经分配空间,并赋值,方式一是不能写成如下这种形式的。

int[] arr1;
arr1 = {1,2,3};//错误写法 编译不同过
方式二和方式三,声明和内存分配是分开的,如上面的例子,

int[] arr2;  和  int[] arr3;
这一步是在栈空间分配一个引用,存放的是一个引用,null

arr2 = new int[]{1,2,3};<span style="font-family: Arial, Helvetica, sans-serif;">arr3 = new int[3];</span>
到这一步的时候jvm才开始在内存堆区域分配空间,并赋值,方式二直接赋值 1,2,3  方式三 默认初始化,基本类型是 0  布尔类型是 false 引用类型为null,

注:内存一旦分配不能改变,所有说数组长度固定

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

Java创建数组的几种方式

1、一维数组的声明方式: type[] arrayName; 或 type arrayName[];  附:推荐使用第一种格式,因为第一种格式具有更好的可读性,表示type[]是一种引用类型(数组...

Java创建数组的几种方式

借鉴http://blog.csdn.net/u014199097/article/details/50551731 1、一维数组的声明 T[] arrayName; 或 T arrayName[];...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

java 创建数组的三种方法

java创建数组的三种方法:

暑假集训日记--8.10--二分+单调队列+练习赛

今天开了新的专题,上午做了三道二分的题目。有两道数学题,还有一道精度问题。 两道数学题就不贴代码了。 贴一道题吧。在这道题里我学会了控制π的精度。用三角函数。 题目如下: Proble...

暑假集训日记--8.5--搜索

今天一天基本上都在找错误的过程中…… 首先附昨天调试没通过的题: Problem Description You are given two pots, having the v...

暑假集训日记--8.9--搜索、图论专题总结

今天搜索和图论的专题就结束了。 总结一下在这一周半的学习: 首先通过做题巩固了搜索的知识。深搜和广搜也有了较大的提高。但是图论花的时间相对低。 专题只做了18个题,剩下的题会补上。 在过去的一...

暑假集训日记--8.14--单调队列

今天主要学习了单调队列…… 现在能做一些单调队列比较简单的题目了。但是有些题目比较困难……单调队列的变形还是有很多地方需要解决。 有些单调队列的变形感觉自己想不到,能想到思路但是不知道怎么写。然后...

暑假集训日记--7.31--搜索

看了半天的搜索的课件以及资料,做了半天的搜索的练习题。逐步复习了搜索的有关知识。 又重新开始学搜索,这一天也只写了几个代码。有hdoj上的,有poj上的,还有就是曾经老师给的资料。都是比较基础的,但是...

暑假集训日记--8.8--搜索+练习赛

今天又一场练习赛。比之前强一点,能A两个题了……尽管两个题都是水题…… 但是很不幸……第二道水题又wa了五发……还是……没想好就写代码。下面贴题目: Vladik had started ...

8.1--集训日记--搜索+练习赛

今天一天没怎么看知识点。一直在做题。 上午做了一道比较简单的题,但是做了好久。题目如下: (题目大意就是给两个四位数,每次变动一位数,多少次可以变到指定数字。期间所有的数都要是素数) The m...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)