数组

package com.test.copy_array;


import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;


public class ArrayCopyDemo {
public static void main(String[] args) {
int[] a={1,5,3,8,6,4,9,2};
int[] c=new int[12];

//数组拷贝
System.arraycopy(a, 0, c, 4, 8);
for (int ii : c) {
System.out.print(ii);
}
//利用Arrays的sort方法进行自动排序
ArrayList al=new ArrayList();
for(int i=0;i<a.length;i++){
al.add(a[i]);
}
Object[] array = al.toArray();
Arrays.sort(array);
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" "); 
}

//冒泡排序
for(int i=0;i<a.length-1;i++){
for(int j=0;j<a.length-1-i;j++){
if(a[j]>a[j+1]){
int tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
for(int i:a){
System.out.print(i);
}
System.out.println("");
System.out.println("-------------");

 
//选择排序
for(int i=0;i<a.length-1;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]<a[j]){
int tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
}
for(int i:a){
System.out.print(i);
}
System.out.println("");
System.out.println("-------------");



//一维数组逆序
int[] b={9,8,7,6,5,4,3,2,1};
for(int i=0;i<b.length/2;i++){
int tmp=b[i];
b[i]=b[b.length-1-i];
b[b.length-1-i]=tmp;
}
for(int i:b){
System.out.print(i);
}
//求数组中的最值
int[] a={4,5,9,8,1,2};
int b=getMax(a);
System.out.print(b);
}
public static int getMax(int[] a){
int max=a[0];
for(int i=0;i<a.length;i++){
if(max<a[i]){
max=a[i];
}
}
return max;
}

}

//数组的索引

package com.test.copy_array;


import java.util.Scanner;


public class ArrayLx {
public static void main(String[] args) {
/*A:定义一个数组,并静态初始化。
B:写一个功能实现
遍历数组,依次获取数组中的每一个元素,和已知的数据进行比较
如果相等,就返回当前的索引值
String[] str={"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
Scanner s=new Scanner(System.in);
System.out.println("请输入数字【0-6】:");
int index = s.nextInt();
System.out.println(getArray(str, index));
}
public static String getArray(String[] str,int a){
for(int i=0;i<str.length;i++){
if(i==a){
return str[i];
}
}
return "-1";*/


String[] str={"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
Scanner s=new Scanner(System.in);
System.out.println("请输入星期值【一~日】:");
String st=s.nextLine();
System.out.println(getIndex(str, st));
}
public static int getIndex(String[] str,String value){
for(int i=0;i<str.length;i++){
if(str[i].equals(value)){//注意==和equals不同(==比较地址值;equals是比较具体的值)
return i;
}
}
return -1;
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章