一维数组的基本概念
当需要在java中记录单个数据内容,声明一个变量,
当需要在java中记录多个数据内容时,声明一个数组,, 本质就是在内存空间中申请一段连续的单元
一维数组就是容器。体现为一种引用数据类型。
一维数组的声明方式
数据类型[]数组名称 = new 数据类型[数组的长度]
调用数组的length 可以获取数组的长度 .length
可以通过下标的方式访问数组中的每一个元素。从0开始
基本类型的数组 创建后
给定长度 : 动态初始化
同时对数组中的元素进行初始化
局部变量在栈区申请内存空间
一维数组的优缺点
可以通过下标访问指定位置的元素
缺点: 要求所有的有元素类型相同。
数组要求内存空间必须连续 长度一旦确定就不能修改
除非申请一个更大的数组 将数组拷贝
增加和删除元素时需要移动大量的元素 效率低。 降低程序的运行效率
一维数组之间元素拷贝的笔试考点
arr = brr
arr数组内存空间中存放的是指向堆内存的地址信息
赋值后 的本质是让brr和arr指向同一个地址信息;
一维数组统计数字次数的原理
/*
编程使用数组实现正整数中每个数字出现的次数
*/
import java.util.Scanner;
public class ArrayCountTest{
public static void main(String[] args){
//提示用户输入一个正整数并使用变量记录
System.out.println("请输入一个正整数");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
//2.准备一个长度位10元素类型的int类型的一位数组
int[] array1 = new int[10];
//3.拆分正整数中的每个数字并统计到一维数组中
int temp = num;
int res = 0;
int count = 0;
int count1 = 0;
while(temp>0){
res = temp%10;
temp = temp/10;
System.out.print(" "+res);
for(int i=0;i<array1.length;i++){
if(res==i){
array1[i]=res;
count++;
}
}
}
for(int i=0;i<array1.length;i++){
System.out.println(array1[i]+"出现"+count+"次");
}
//4. 打印最终的统计结果
}
}
注:老师写的简洁,我写的乱七八糟。