import java.util.Arrays;//Arrays包
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
//静态创建,创建的时候已经知道了每一个元素的值
char[] c1 = {'h','e','l','l','o'};
char[] c2 = new char[] {'h','e','l','l','o'};
//动态创建,知道了数组的长度,后面再具体赋值
char[] c3 = new char[5];
c3[0] = 'h';//给数组中的第一个元素赋值
c3[1] = 'e';//给数组中的第二个元素赋值
c3[2] = 'l';//给数组中的第三个元素赋值
c3[3] = 'l';//给数组中的第四个元素赋值
c3[4] = 'o';//给数组中的第五个元素赋值
//创建String类型的数组,存放"a","b","c"
String[] s1 = {"a","b","c"};
String[] s2 = new String[] {"a","b","c"};
String[] s3 = new String[3];
s3[0] = "a";//给s3数组的第一个元素赋值为"a"
s3[1] = "b";//给s3数组的第二个元素赋值为"b"
s3[2] = "c";//给s3数组的第三个元素赋值为"c"
//打印创造好的数组
System.out.println(s1);//打印出来的是数组的地址值
System.out.println(Arrays.toString(s2));
System.out.println(s3);
//创建数组
int[] from = {1,2,3,4,5};//数组一旦创建,长度不可改变
//数组的普通复制
int[] to = Arrays.copyOf(from, 5);
System.out.println(Arrays.toString(to));
//数组的扩容
int[] to2 = Arrays.copyOf(from, 10);
System.out.println(Arrays.toString(to2));
//数组的缩容
int[] to3 = Arrays.copyOf(from, 3);
System.out.println(Arrays.toString(to3));
//指定首尾截取元数组中的元素
int[] to4 = Arrays.copyOfRange(from, 1, 3);
System.out.println(Arrays.toString(to4));
//冒泡排序
int[] a = {17,96,73,25,21};
method(a);
//sort方法排序,比冒泡快,实际开发中使用Arrays数组工具类的排序方法sort(数组名);
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
private static void method(int[] a){//自定义方法method,用于冒泡排序
//外层循环 从哪开始1 到哪结束a.length-1 怎么变化
for(int i = 1;i < a.length;i++){
//内层循环
for(int j = 0;j < a.length-i;j++){
//相邻比较,位置不对,交换位置
if(a[j] > a[j+1]){//如果前面的书大于后面的数
//交换两个位置上的元素
int temp;
temp = a[j+1];
a[j+1] = a[j];
a[j] = temp;
}
}
System.out.println("第"+i+"轮排序的结果为:"+Arrays.toString(a));
}
System.out.println(Arrays.toString(a));
}
}