数组
--------引用数据类型
相关名词属性解释:
1.元素:
数组里面存输的数据
2.数组的长度:
数组可以去存储的内容的个数 -------可动态的获取 数组名:length
3.数组名:
本质就是变量名-----就是一个标识符而已
4.索引:
用来去描述数组的元素位置 从0开始 最大索引 就是 长度-1

一.数组的定义:
1.定义数组的语法:
1.1动态定义方式:
【先定义数组 再往里面存储数据】
基本语法:
数据类型[ ] 变量名 = new 数据类型[长度] ;
例如:int[ ] arr = new int[7 ];
数据类型: 数组里面元素的类型
变量名:就是数组名,就是一个变量
new:固定的写法 -----在堆里面划分一块存储空间
长度:当前数组存储的数组的个数,特性:数组一旦定义了长度就不能改变
例如:
1.2静态方式定义:
【定义数组的的时候,同时初始化数组里面的数据】 ------------只是前期使用的多,后期工作使用的不多
基本语法:
数据类型[ ] 变量名 = {值1,值2,值3,值4,值5........}
二.数组的赋值与取值:
1.赋值:
数组名[索引] = 值;
注意事项:
1.值要和数组的数据类型匹配
2.索性 :索引一定要在允许的范围内
2.取值:
数组名[索引]
取出来值的应用:
1.使用变量接收
2.直接放在输出语句里面打印输出
3.直接参与运算
3.数组的操作:
3.1.获取数组的长度
数组名.length
3.2.数组的第一个索引 :0
数组的最后一个索引: 数组名.length-1
三.数组的遍历:
-------把数组里面的数据一个一个的全部取出来
1.基本语法:
for(int i =0 ; i<数组名.length ; i++){
//数组名[i] 就可以取值
}
快捷键:数组名.fori------>代码提示
例如:
public class _07Array {
public static void main(String[] args) {
int[] arr= {61,1,6,851,6,16,1,51,16,1,61,6};
/*
1.循环遍历数组
2.判断每一个数类型
3.定义两个计数器 统计奇数和偶数的个数
*/
int j=0,o=0;
for (int i = 0; i < arr.length; i++) {
if (arr[i]%2==0){
o++;
}else {
j++;
}
}
System.out.println(j);
System.out.println(o);
}
}
2.增强for循环:foreach
for( 数据类型 变量名 : 数据源){
}
数据源:可以是数组;
数据类型:和数组的类型匹配
快捷键:数组名.for
例如:
public class _07Array {
public static void main(String[] args) {
int[] arr= {61,1,6,851,6,16,1,51,16,1,61,6};
//使用增强for迭代数据 快捷键 数组名.for
for( int a : arr){
System.out.println(a);
}
}
}
四.数组的堆栈存储模型
-------值传递,引用数据类型
栈 中有:
所有的变量名
基本数据类型
堆 中有:
引用数据类型具体的值
目前:能够存储数据的类型包括8个数据类型,String
能够记录数据 -------变量:特点 ---一次只能记录一个值
*特殊情况 char[ ]不输出地址值
例如
public class Work2_4 {
public static void main(String[] args) {
// c
char[] num = {'a','b','c','d','e'};
System.out.println(num);
}
}