- 数组
- 创建数组
- 声明一维数组
- 给数组分配空间
- 创建数组时的3个步骤:
- 初始化数组
- 数组静态初始化
- 数组动态初始化
- foreach遍历数组
- 二维数组
创建数组 声明一维数组数组用来存储一组大小固定并且类型相同的数据,这些数据可以通过索引进行访问.
给数组分配空间int a[];//声明一个整型数组
int[] array=new int[100];
创建数组时的3个步骤:当数组使用new分配存储空间后,数组中的元素会有默认初始值.其中:
- 数值类型的数组初始值为0;
- 布尔类型的为false;
- 引用类型的则为null(空引用).例如,字符串String就是引用类型;
- 字符型的为’ ’(字符串结束标识).
(1)在栈中创建一个数组变量;
(2)在堆内存中给数组分配存储空间;
(3)初始化数组中的元素值(即给数组元素初始化一个相应数据类型的默认值).
数组静态初始化初始化方式有两种:静态初始化和动态初始化
数组动态初始化int[]a={1,2,3,4,5};
或者可以
int[]a=new int[]{1,2,3,4,5};
示例1:
foreach遍历数组int[]a=new int[2];
a[0]=1;
a[1]=2;
示例2:
int[]array=new int[10];
for(int i=0;i<10;i++){
array[i]=i+1;
}
二维数组使用foreach循环遍历数组和集合元素时,无须获得数组和集合长度,也无须根据索引来访问数组元素和集合元素,foreach循环自动遍历数组和集合的每个元素.
注意:当使用foreach循环输出数组和集合中的元素时,通常不要对循环变量进行赋值,虽然这种赋值在语法上是允许的,但没有太大的意义,而且极容易引起误会.
foreach(数据类型 变量名:数组名)
其中,foreach语句中的数据类型必须与数组的数据类型一致.
语法:
数据类型[][]数组名;
public class book6{
public static void main(String[] args){
//声明数组
//声明一个整型数组a
int[] a;
//给数组a分配存储空间:10*4个字节
a=new int[10];
double[] b=new double[10];
char[]c=new char[100];
boolean[]d=new boolean[20];
String[]str=new String[5];
//输出各数组的数组名
System.out.println(a);//输出数组对象的哈希码
System.out.println(b);//输出数组对象的哈希码
System.out.println(c);//输出字符数组中的内容
System.out.println(d);//输出数组对象的哈希码
System.out.println(str);//输出数组对象的哈希码
System.out.println("************************");
//输出个数组中第一个元素的值
System.out.println(a[0]);
System.out.println(b[0]);
System.out.println(c[0]);
System.out.println(d[0]);
System.out.println(str[0]);
System.out.println("************************");
//输出各数组的长度
System.out.println("a.length="+a.length);
System.out.println("b.length="+b.length);
System.out.println("c.length="+c.length);
System.out.println("d.length="+d.length);
System.out.println("str.length="+str.length);
//初始化数组
//静态初始化
int[] aa={5,7,20};
int[]bb=new int[4];
for(int i=0;i
import java.util.Scanner;
public class MenuDriver{
public static void main(String[] args){
//建立一个从键盘接收数据的扫描器
Scanner scanner=new Scanner(System.in);
while(true){
//输出菜单
System.out.println("***********************");
System.out.println("*1:数据采集 2:数据匹配*");
System.out.println("*3:数据记录 4:数据显示*");
System.out.println("*5:数据发送 6:退出应用*");
System.out.println("***********************");
//提示用户输入要操作的菜单项
System.out.print("请输入菜单项(0~5):");
//接受键盘输入的选项
int choice=scanner.nextInt();
switch(choice){
case 1:
System.out.println("数据采集中...");
break;
case 2:
System.out.println("数据匹配中...");
break;
case 3:
System.out.println("数据记录中...");
break;
case 4:
System.out.println("数据显示中...");
break;
case 5:
System.out.println("数据发送中...");
break;
case 6:
//应用程序退出
System.out.println("应用程序退出!");
System.exit(0);
default:
System.out.println("请输入正确的菜单项(0~5):");
}
}
}
}



