一维数组的声明方式:
type var[]; 或type[] var;
声明数组时不能指定其长度(数组中元素的个数),
Java中使用关键字new创建数组对象,格式为:
数组名 = new 数组元素的类型 [数组元素的个数]
实例:
TestNew.java:
程序代码:
public class TestNew { public static void main(String args[]) { int[] s ; int i ; s = new int[5] ; for(i = 0 ; i < 5 ; i++) { s[i] = i ; } for(i = 4 ; i >= 0 ; i--) { System.out.println("" + s[i]) ; } } }
初始化:
1.动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;
2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;
3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。
实例:
TestD.java(动态):
程序代码:
public class TestD { public static void main(String args[]) { int a[] ; a = new int[3] ; a[0] = 0 ; a[1] = 1 ; a[2] = 2 ; Date days[] ; days = new Date[3] ; days[0] = new Date(2008,4,5) ; days[1] = new Date(2008,2,31) ; days[2] = new Date(2008,4,4) ; } } class Date { int year,month,day ; Date(int year ,int month ,int day) { this.year = year ; this.month = month ; this.day = day ; } }
TestS.java(静态):
程序代码:
public class TestS { public static void main(String args[]) { int a[] = {0,1,2} ; Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ; } } class Time { int hour,min,sec ; Time(int hour ,int min ,int sec) { this.hour = hour ; this.min = min ; this.sec = sec ; } }
TestDefault.java(默认):
程序代码:
public class TestDefault { public static void main(String args[]) { int a [] = new int [5] ; System.out.println("" + a[3]) ; } }
以上就是Java 数组声明,创建,初始化等相关知识,希望能帮助到您,谢谢大家对本站的支持!
本文向大家介绍关于Java数组声明、创建、初始化的相关介绍,包括了关于Java数组声明、创建、初始化的相关介绍的使用技巧和注意事项,需要的朋友参考一下 本文讲述了Java数组的几个相关的方面,讲述了对Java数组的声明、创建和初始化,并给出其对应的代码。 一维数组的声明方式:type var[]; 或type[] var; 声明数组时不能指定其长度(数组中元素的个数), Java中使用关键字new
问题内容: 如何在Java中声明和初始化数组? 问题答案: 你可以使用数组声明或数组文字(但只有当你立即声明并影响变量时,数组文字才能用于重新分配数组)。 对于原始类型: 例如,对于类,String是相同的: 当你首先声明数组然后对其进行初始化时,第三种初始化方法很有用。
如何在Java中声明和初始化数组?
7.1.1 概念 数组是具有相同 唯一类型 的一组已编号且长度固定的数据项序列(这是一种同构的数据结构);这种类型可以是任意的原始类型例如整型、字符串或者自定义类型。数组长度必须是一个常量表达式,并且必须是一个非负整数。数组长度也是数组类型的一部分,所以[5]int和[10]int是属于不同类型的。数组的编译时值初始化是按照数组顺序完成的(如下)。 注意事项 如果我们想让数组元素类型为任意类型的话
问题内容: 我可以写: 我也可以写: 但我不能写: 为什么这会被Java阻止? 我知道如何解决它,但有时会更简单。 例如: 自从我学会了如何在Java中玩数组以来,这个简单的问题一直困扰着我。 问题答案: 为什么这会被Java阻止? 你必须询问Java设计人员。该限制可能有一些微妙的语法原因。请注意,某些数组创建/初始化结构不在Java 1.0中,而(IIRC)是在Java 1.1中添加的。 但是
8.1.1 概念 map 是引用类型,可以使用如下声明: var map1 map[keytype]valuetype var map1 map[string]int ([keytype] 和 valuetype 之间允许有空格,但是 gofmt 移除了空格) 在声明的时候不需要知道 map 的长度,map 是可以动态增长的。 未初始化的 map 的值是 nil。 key 可以是任意可以用 ==