数组:一组相关变量的集合,被定义后长度不可变。
1.一维数组
1 .语法:见如下代码
//主方法省略
public static void growUp() {
int arr[]= {12,325,4,75};
//数组的第一种定义方式:数据类型 数组名[]={数组值}
int arr1[]= new int [4] ;
//数组的第二种定义方式:数据类型 数组名[]=new 数据类型 [数组长度]
//int arr3[]=new int[]{};
//第三种定义方式:数据类型 数组名[]=new 数据类型{数组值}
for(int i=0;i<arr.length;i++) {
arr1[i]=arr[i]*2;
};
for(int i=0;i<arr1.length;i++) {//数组的循环遍历,其中数组索引为数组长度-1
//调用arr.length方法确定数组长度
System.out.println(arr1[i]);
};
}
2.数组操作
1.数组排序
第一种实现方式:排序算法
冒泡排序:
//主方法省略
public static void sort(int ar[]) {
for(int i=0;i<ar.length;i++) {
for(int j=0;j<ar.length-1;j++) {
if(ar[j+1]<ar[j]) {
int x=ar[j];
ar[j]=ar[j+1];
ar[j+1]=x;
};
};
};
};
第二种实现方式:java内置方法
使用java.util.Arrays.sort()方法
//主方法省略
int arr2[]= {1,3,653,47,58,7,8,34,5,78};
java.util.Arrays.sort(arr2);//调用java内置方法
for(int i:arr2) {//增强for循环遍历数组
System.out.print(i+" ");
};
2.对象数组:引用类型的数组存储多个对象
public class ArrayLearn {
private String name;
private int age;
public ArrayLearn(String name,int age) {
this.age=age;
this.name=name;
};
public ArrayLearn() {
super();
}//每创建一个类要养成创建一个空参构造方法
public String getMeassage() {
return "姓名:"+" "+name+" "+"年龄:"+age;}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
};
}
//主方法
public class ArrayLearnDemo {
public static void main(String[] args) {
ArrayLearn ar[]=new ArrayLearn[3];//创建一个引用类型的数组
ar[0]=new ArrayLearn("张三",20);//实例化数组
ar[1]=new ArrayLearn("李四",18);
ar[2]=new ArrayLearn("王五",16);
for(int i=0;i<ar.length;i++) {
System.out.println(ar[i].getMeassage());
};
}
}