您的位置:首页 > 编程语言 > Java开发

JavaNote 1.2数组

2018-04-03 10:22 162 查看
一、数组

1、数组的初始化

动态初始化

Date date[];
date = new Date[3];

静态初始化

Date date[] ={;;;};

Date date[]={new Date();;};

2、数组的遍历

int[] array = {2,1,3,4,5,6};

for(int i = 0; i<array.length; i++){
System.out.println(array[i]);
}

3、数组的拷贝

int[] array ={2,3,4,5,6};
int[] arrayCopy = new int[6];
System.arraycopy(array,0, arrayCopy, 0, array.length);
for(int i=0;i<arrayCopy.length; i++){
System.out.print(arrayCopy[i]);
}

4、数组的排序

public class Test {
public static void main(String []args){
int array[] = {2,3,0,5,1,9,4,8,-1,7};
Test test = new Test();
test.sortTest(array);
System.out.println();
test.sortTest0(array);
System.out.println(1/2);
test.sortTest2(array);
}
//冒泡排序
public void sortTest0(int array[]){
int temp;
for(int i = 0; i < array.length;i++){
for(int j = 0; j < array.length-1; j++){
if(array[j]>array[j+1]){
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}

}
for (int i = 0; i < array.length; i++){
System.out.print(array[i]+" ");
}

}
//选择排序
public void sortTest(int array[]){
int temp;
for (int i = 0; i< array.length; i++){
for(int j =(i + 1); j < array.length; j++){
if(array[i]>array[j]){
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
else
continue;
}

}
for (int i = 0; i < array.length; i++){
System.out.print(array[i]+" ");
}

}
//快速排序
public  void sortTest2(int array[]){
for (int i = 0; i < array.length; i++) {
int temp = array[i];
int left = 0;
int right = i-1;
int mid = 0;
while(left<=right){
mid = (left+right)/2;
if(temp<array[mid]){
right = mid-1;
}else{
left = mid+1;
}
}
for (int j = i-1; j >= left; j--) {
array[j+1] = array[j];
}
if(left != i){
array[left] = temp;
}
}
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]+" ");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数组 排序