JAVA数组
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对于数组的实现和处理不尽相同
java语言中提供的 数组是用来存储固定大小的同类型元素的
数组变量的声明
double[] myList; //首选方法
或者
double myList[]; //和上面方法的效果相同,但不建议是用使用
数组的创建
arrayRefVar=new dataType[arraySize];
上面的语法做了两件事
1,使用dataType[arraySize]创建了一个数组
2,将新创建的数组赋值给了变量arrayRefVar
案例
double[] myList; 声明数组变量
myList=new double[5]; //指定数组长度
数组变量声明与创建数组结合使用
dataType[] arrayRefVar=new dataType[arraySize];
案例
int[] myList= new int[5];
或者你还可以使用下面的方法创建
int[] myList=new int[]{5,3,6,4}
注意:在读取数组时可以通过下标索引来访问,索引是从0开始的
在介绍完数组的基本知识后我们要开始对数组的常见问题进行解析了
最大值
//首先我们先来介绍如何求最大值
int[] myList=new int[]{2,3,4,7,6,9,1}; //定义数组并赋值
int max=myList[0]; //定义最大值为数组的第零位
for(int i=0;i<myList.length;i++){ //for循环遍历数组
if(max<myList[i]){ //if语句进行判断
max=myList[i];
}
}
System.out.println("最大值为:" +max);
最小值
//有最大值就会有最小值,接下来我们求最小值
int[] myList=new int[]{2,3,4,7,6,9,1,10}; //定义数组并赋值
int min=myList[0]; //定义最小值为数组的第零位
for(int i=0;i<myList.length;i++){ //for循环遍历数组
if(min>myList[i]){ //if语句进行判断
min=myList[i];
}
}
System.out.println("最小值为:" +min);
平均数
double[] array=new double[]{3.4,5.6,1.9,8,7};
double count=0;
for(int i=0;i<array.length;i++){
count+=array[i];
}
double average=count/array.length;
System.out.println("平均数为:" +average);
复制
int[] list=new int[]{3,4,2,6,8,7,9,10};
int[] copy=new int[list.length];
for(int i=0;i<list.length;i++){
copy[i]=list[i];}
for(int j=0;j<copy.length;j++){
System.out.print(copy[j]+" , ");
}
倒叙
int[] test=new int[]{12,34,54,2,3,6};
int[] upside=new int[test.length];
int x=0;
for(int i=0;i<test.length-1;i--){
upside[i]=test[i];
x++;
}
for(int j=0;j<copr.length;j++){
System.out.print(copy[j]+" , ");
}
冒泡排序
排序思想:
相邻两个元素进行比较,如有需要则进行交换,每完成一次循环就将最大元素排在最后,下一次循环是将其他的数进行类似操作。
int[] arr= new int[] {1,3,5,6,7,8,0,2};
int temp=0;
for(int i=0;i<arr.length-1;i++) { //外层循环式循环伦次,伦次循环的次数就是数字长度-1
for(int j=0;j<arr.length-1-i;j++) {
//每一轮的数字对比排序
if(arr[j]>arr[j+1]) { //如果两个数中前面的大于后面的再进行重新赋值
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp; //要是写倒序的话就将>改为<
}
}
}
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i]);
}
好了常见的数组问题也就是这几类了
本文为本人原创若有错误还请评论区指正,万分感谢。