java的数组认识与创建方式
创始人
2024-06-01 13:43:06
0

    数组:可以看成是相同类型元素的一个集合。在内存中是一段连续的空间。那么我们为什么要使用数组呢?因为如果我们要很多个相同类型的变量,如果我们一个一个的创建,那么这将耗费我们大量的时间,既然如此,为什么不直接创建出大量的变量供我们使用呢?这就是我们为什么要学习数组的原因。

知道数组后,我们还得知道如何定义一个数组,定义数组有三种方法,一种是直接定义,像C语言一样,一种是前面加个new 数据类型【 】,然后在后面输入数据就行,还有一种是动态定义,就是你不给它初始化,什么时候用到,什么时候初始化。不过第一种和第二种是一样的,这只是为了让我们知道有多种定义罢了。

int[] array1 = {0,1,2,3,4,5,6,7,8,9};
double[] array2 = new double[]{1.0, 2.0, 3.0, 4.0, 5.0};
int[] array = new int[10];

相信学过C语言的同学已经发现,这个【】怎么放在变量名前面啊?其实这只是为了方便阅读罢了,毕竟数据类型的变量定义时类型都放在前面,而数组也是一种数据类型,当然要将【】放在前面啊,那么按照C语言的方式定义数组可不可以呢?

int arr[] = {1,2,3,4,5};
System.out.println(Arrays.toString(arr));

当然可以,不过我们Java不建议这么写,毕竟这样写不好阅读,还有就是别的数据类型都只在变量名前面,凭什么你数组就清高,可以夹着变量名(滑稽)。

我们创建数组之后那么肯定是要使用的,我们可以根据索引来找到相应的数据,索引也就是下标,它的使用方法和C语言一样,这我就不细说了。

二维数组的用法和一维数组并没有明显差别, 因此我们不再赘述,不过有个与C语言不同的是,它不能省略行,但可以省略列,这与C语言正好相反,那么这代表着什么呢?代表着二维数组的每一个数据都可以包含不同的数组长度,这极大的增强了数组的灵活性。

int[][] arr2 = new int[3][]; 
arr2[1] = new int[5];
arr2[0] = new int[4];

在说一个点,如果我们只定义了数组而不初始化的化,那么数组里面放的是什么呢?int类型放的是0,那么其他的呢?我们以后再说。不过即使这样,我们还是不能修改数组长度,也就是说当我们定义数组时,他的长度就已经确定了,那么我们能不能修改他的长度呢?如C语言的realloc和malloc之类的,其实没有,但是java提供了另一种方法,但是这不属于数组的范围了,我们以后再说。

相关内容

热门资讯

全球一年卖出5000多万台!罗...   据界面新闻,记者从罗马仕员工处获悉,7月6日凌晨1点多,罗马仕正式发布停工停产放假通知。   通...
国家速滑馆人形机器人实训基地正... 来源:中国新闻网 中新网北京7月6日电 (记者 吕少威)一场激烈的3V3机器人足球比赛5日在北京北奥...
大理一幼童躺街上被快递货车碾压... 7月2日晚间,在云南大理市大展屯综合市场附近发生了一起车祸,一辆“中通快运”派件货车左转时后轮碾压到...
【报告】海外电动车专题研究:走... (转自:汽车之地)本篇报告多维度对欧洲电动车市场空间进行定性、定量测算,梳理了未来3 年各车企核心电...
“22年前竞得地块没拿到,企业... 澎湃新闻记者 谢寅宗因为一块15.383亩的土地,海口市美兰区政府、海口市自然资源和规划局(以下简称...
加拿大铝业协会CEO:若美国5... 财联社7月6日讯(编辑 卞纯)当地时间周六,加拿大铝业协会首席执行官Jean Simard表示,加拿...
促进文旅融合 贵州举办第三届遵... 转自:经济日报由贵州省委宣传部、贵州省文化和旅游厅指导的贵州习酒·2025第三届遵义海龙屯国际影像文...
国台办:启用M503航线W12... 今日,国务院台办发言人陈斌华答记者问。问:民航局今天宣布启用M503航线W121衔接航线。请问发言人...
“朋友之上,恋人未满”,如何拯... “朋友之上,恋人未满”,如何拯救暧昧期快速转正?如果想要快速转正的话,一定要有一个人主动一点挑明这段...
为什么我如果受了伤,伤口很难愈... 为什么我如果受了伤,伤口很难愈合,就连小伤口最少也要三个星期基因如此,有一部分人是这样的。建议赶紧去...