数组的定义
在一些公司记录数据时,如果用变量记录数据,则会有变量声明太多,太繁琐和不利于数据处理的弊端,所以这个时候我们就用到了数组。
数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器
数组既可以存储基本数据类型,也可以存储引用数据类型
数组是一组相关数据的集合,一个数组实际上就是一连串的变量。
变量:声明一个变量就是在内存空间划出一块空间
数组:声明一个数组就是在内存空间划出一串连续的的相同类型的空间
数组的常见状态
数组的声明语法:
数据类型[] 数组名= 初值
eg:int[] array = new int[5];
注意:[]中5时数组array的长度
数组的长度一旦给定 就不能修改
其中数据类型代表: 数组中盛放数据的 数据类型
数组使用下标(角标)来访问元素(保存元素) 下标从0开始
数组中的所有元素都必须属于相同的类型结构
数组的常用方式:
// 第一种: 一般情况下,当我们不知道数据里面有什么内容的时候,我们会先声明一个数据,然后再去赋值
int[] array = new int[5];
array[0] = 1;
array[1] = 3;
array[2] = 5;
array[3] = 6;
array[4] = 7;
// // 第二种:
int[] array2 = new int[] {1,3,5,6,7};
//
// //第三种,虽然我们没有明确的指定数组的的长度,但是一旦声明了以后,长度就固定了
int[] array3 = {1,3,5,6,7};
- 数组的遍历:
- 1 索引: 从0开始,到数组的长度-1结束
- 2 数据的长度: 数组名.length
- 3 数组名[索引] 定位数组中的元素
数组的一些常用方法:
int[] ages = {4,2,71,9,5,3,8};
//一般在服务器打印日志的时候,会使用导这个方法
System.out.println(Arrays.toString(ages));
//一般有自然排序的时候,会使用到这个方法
Arrays.sort(ages);
System.out.println(Arrays.toString(ages));
//一般在数组扩容的时候,会使用到这个方法
int[] ints = Arrays.copyOf(ages,10);
System.out.println(Arrays.toString(ints));
数组的长度: 数组名.length
数组的索引: 从0开始,最大的索引: 数组名.length-1
在数组中的一些常见错误
1.写的下标超出了数组的最大下标
2.没有写出数组的大小
3.创建数组并赋值的方式必须在一条语句里完成
冒泡排序法
public class Test04 {
public static void main(String[] args) {
int[] arrays = {18,19,20,34,16,75,25};
for (int i = 0; i < arrays.length - 1; i++) {
for (int j = 0; j < arrays.length - 1 -i; j++) {
if (arrays[j] > arrays[j + 1]){
int temp = arrays[j + 1];
arrays[j + 1] = arrays [j];
arrays[j] = temp;
}
}
}
System.out.println(Arrays.toString(arrays));
}
}
数组如何算最大最小值
public class Test03 {
public static void main(String[] args) {
int[] arrays = {13,19,17,81,15,16,17,21};
int max = arrays[0];
for (int i = 0; i < arrays.length; i++) {
if (max < arrays[i]){
max = arrays[i];
}
}
System.out.println(max);
Arrays.sort(arrays);
System.out.println(arrays[arrays.length - 1]);
int min = arrays[0];
for (int i = 0; i < arrays.length; i++) {
if (min > arrays[i]){
min = arrays[i];
}
}
System.out.println(min);
Arrays.sort(arrays);
System.out.println(arrays[0]);
}
}