创建数组
来源:互联网 发布:李光耀 知乎 编辑:程序博客网 时间:2024/06/06 08:31
语法:
<name> = new <type>[<int>];
或
<name> = new <type>[]{};
说明:
<name>:任何合法的标识符。它代表所声明属性的名称。
<type>:可以是任何原始类型(基本类型)或其它类(引用类型)。
<int>: 一个整数值,数组的大小
用来指示单个数组元素的下标必须总是从0开始,并保持在合法范围之内--大于或等于0,并小于数组长度。任何访问在上述界限之外的数组元素的企图都会引起运行时出错。
public int[] createIntArray() {int[] k = null;k = new int[5];for (int i = 0; i < k.length; i++)k[i] = i + 1;return k;}
你可以象创建对象一样,使用关键字new 创建一个数组。
k = new int [5];
创建了一个5个int值元素的数组。
内存中数组初始化情形如下:
对于应用类型元素的数组,示例如下:
public Point[] createArray() {Point[] p= null;p = new Point[5];for (int i = 0; i < p.length; I++)p[i] = new Point(i,i+1);return p;}
数组在内存中的映像则如下:
当创建一个数组时,每个元素都被初始化。在上述int数组k的例子中,每个值都被初始化为0;在数组p的例子中, 每个值都被初始化为null,表明它还未引用一个Point对象。在经过赋值 p[0] = new Point(i,i+1)之后,数组的第一个元素引用为实际Point对象。
Java编程语言允许使用下列形式快速创建数组:
String names [ ] = {
“Georgianna”,
“Jen”,
“Simon”,
};
其结果与下列代码等同:
String names [ ] ;
names = new String [3];
names [0] = “Georgianna”;
names [1] = “Jen”;
names [2] = “Simon”;
这种”速记”法可用在任何元素类型。例如:
MyDate Dates[ ] = {
new MyDate (22,7,1964),
new MyDate (1,1,2000),
new MyDate (22,12,1964)
};
适当类型的常数值也可被使用:
Color palette [ ] = {
Color.blue,
Color.red,
Color.white
};
例1
public class TestArray1 {public static void main(String[] args) {// 声明并初始化一个数组int[] num = new int[40];// 记录数组下标int k = 0;// 循环找素数for (int i = 2; i <= 100; i++) {int j = 2;for (; j < i; j++) {if (i % j == 0)break;}if (j == i) // 表示是素数{num[k++] = i;}}// 输出所有素数,5个一行for (int i = 0; i < k; i++) {// 如果是小于10的数,多输出个空格,整齐if (num[i] < 10)System.out.print(num[i] + " ");elseSystem.out.print(num[i] + " ");// 够5个数换行if ((i + 1) % 5 == 0)System.out.println();}}}
例2
把一个班的名字(String类型,引用类型)保存起来,并进行输出。
public class TestStudents {public static void main(String[] args) {// 定义3个空间大小的数组String[] stu = new String[3];// 数组是通过下标来赋值,下标从0开始stu[0] = "java";stu[1] = "c++";stu[2] = "c#";// 下面的赋值将产生异常stu[3] = "j2me";// 输出数据for (int i = 0; i < stu.length; i++)System.out.println(stu[i]);}}
运行的结果如下:
例3
保存1到100之间的素数(除了1和它本身不能被其他整数整除的数)。
public class TestArray3 {public static void main(String[] args) {// 声明并初始化一个数组int[] num = new int[40];// 记录数组下标int k = 0;// 循环找素数for (int i = 2; i <= 100; i++) {int j = 2;for (; j < i; j++) {if (i % j == 0)break;}if (j == i) {// 表示是素数num[k++] = i;}}// 输出所有素数,5个一行for (int i = 0; i < k; i++) {// 如果是小于10的数,多输出个空格,整齐if (num[i] < 10)System.out.print(num[i] + " ");elseSystem.out.print(num[i] + " ");// 够5个数换行if ((i + 1) % 5 == 0)System.out.println();}}}
运行结果如下:
更多Java视频教程 详情请登录www.rjpx.net
- 创建数组
- 数组创建
- 创建数组
- 创建数组
- js创建数组,创建对象
- 创建数组和遍历数组
- Js-创建数组、访问数组
- 动态创建数组
- C#创建动态数组
- 创建数组对象
- 动态创建数组
- javascript创建数组
- 创建动态数组
- 动态创建二维数组
- java创建对象数组
- 动态创建数组
- C#动态创建数组
- 动态创建二维数组
- ORA-01536: space quota exceeded for tablespace 'JIRA' ))
- HTTP 协议详解
- android蓝牙开发
- ExpandableListView(一)替换系统默认的箭头
- Android系统的Binder机制之一——Service Manager
- 创建数组
- QButtonGroup的简单应用
- 实现了一个链表,具体见代码
- web测试常用python代码——mysql连接以及语句执行
- ACE_Singleton类学习
- BEGIN_MESSAGE_MAP 细究
- 利用java中的Socket编写简单的聊天工具
- epoll_create, epoll_ctl和epoll_wait 函数用法实例讲解,总结得不错
- 如何查看端口是否被占用