CHAPTER
数组
使用数组进行基本运算
一维数列
-在JAVA中,数组是用来存储一组相同类型数据的数据结构。当数组初始化完毕后,JAVA为数组在内存中分配一段连续的空间,其在内存中开辟的空间没有保存任何数据,数组所占据的空间依然存在。
-定义数组
-语法
数据类型[] 数组名=new数据类型[数组长度];
数据类型 数组名[]=new 数据类型[数组长度];
-定义数组时一定要指定数组名和数据类型
-必须书写“[]”,表示定义了一个数组,而不是一个普通的变量
-“[数组长度]”决定连续分配的空间的个数,通过数组的length属性可获取此长度
-数组的数据类型用于确定分配的每个空间的大小
-使用两种语法分别定义整型数组scores与字符串数组cities,scores的长度是5,cities的 长度是6
int[] scores=new int[5];
String cities[]=new String[6];
数组元素分配的初始值
| 数组元素类型 | 默认初始值 |
|---|---|
| byte、short、int、long | 0 |
| float、double | 0.0 |
| char | ‘\u0000’ |
| boolean | false |
| 引用数据类型 | null |
-数组元素的表示与赋值
-由于定义数组时内存分配的是连续的空间,所以数组元素在数组里顺序排列编号,该编号即元素下标,它标明了元素在数组中的位置。
-数组是一个变量,存储相同数据类型的一组数据
-声明一个变量就是在内存空间划出一块适合的空间
-声明一个数组就是在内存空间划出一串连续的空间
-数组的基本要素
标识符
数组元素
元素的下标:从0开始
元素类型
*数组长度固定不变,避免数组越界
-语法
数组名[下标值]
-如何使用数组(数组四步走)
1.声明数组
int[] a;
2.分配空间
a = new int[5];
3.赋值
a[0] = 8;
4.处理数据
a[0] = a[0]*10;
int[] score1; //JAVA成绩
int score2[]; //C#成绩
String[] name; //学生姓名
-数组的初始化
所谓数组初始化,就是在定义数组的 同时一并完成赋值操作
-语法
数据类型[]数组名={值1,值2,值3,······,值n};
-数组的赋值方法
-方法1 边声明边赋值
int[] scores = {89,79,76};
int[] scores = new int[]{89,79,76};
-方法2 动态地从键盘录入信息并赋值
Scanner input = new Scanner(System.in);
for(int i=0;i<30;i++){scores[i] = input.nextInt();
}
eg:
public staticvoid main(String[] args){int[] scores = {89,80,50}; //声明同时赋值System.out.peintln(scores[0]);
}
public staticvoid main(String[] args){int[] scores = new int[]{89,80,50};//声明同时赋值System.out.peintln(scores[0]);
}
public staticvoid main(String[] args){Scanner sc = new Scanner(System.in);int[] scores = new int[5];for(int i=0;i<5;i++){System.out.println("请输入第"+"门成绩");score[i] = sc.nextInt();}int total = 0;for(int i=0;i<5;i++){total += scores[i];}System.out.println("第三个人的成绩是:"+scores[2]);System.out.println("成绩的总和是:"+total)
}
-遍历数组
在编写程序时,数组和循环往往结合在一起使用,可以大大地简化代码,提高程序编写效率。通常使用for循环遍历数组
-创建整型数组,从控制台接收键盘输入的整型数,并对数组进行循环赋值
1.创建整型数组
2.创建Scanner对象
3.将循环变量i作为数组下标,循环接收键盘输入,并为数组元素赋值
public static void main(String[] args);{int scores[]=new int[5]; //创建长度为5的整型数组Scanner input = new Scanner(System.in);for(int i=0;i<scores.length;i++){ //scores.length等于数组的长度5score[i]=input.nextInt(); //从控制台接收键盘输入,进行循环赋值}
}
-使用for循环为数组元素赋值,再使用for循环输出数组元素
public static void main(String[] args){int scores[]={75,67,90,100,0}; //创建有5个元素的整型数组for(int i=0;i<scores.length;i++){ //length等于5//每次循环i的值相当于数组下标System.out.println("scores["+i+"]="+scores[i]);}
}
步骤:
1.初始化整型数组
2.以循环变量i作为数组下标,循环输出数组元素
JDK1.5之后提供了增强for循环语句,用来实现对数组和集中数据的访问,增强for循环的语法如下:
-语法
for(元素类型 变量名:要循环的数组或集合名){······}
第一个元素是数组或集合中元素的类型,变量名在循环时用来保存每个元素的值,冒号后面是要循环的数组或集合名称。
-使用增强for循环输出数组元素
public static void main(String[] args){int scores[]={75,67,90,100,0};for(int i:scores){System.out.println("数组元素值依次为:"+i);}
}
输出结果:
数组元素依次为:75
数组元素依次为:67
数组元素依次为:90
数组元素依次为:100
数组元素依次为:0


发布评论