1. 求一维数组中的最小值和最大值
int[] arr={21,14,23,31,11,35,22};
int minNum=arr[0]; //最小值
int maxNum=arr[0];//最大值
for(int i=1;i<arr.length;i++){
if(arr[i]<minNum){
minNum=arr[i];
}
if(arr[i]>maxNum){
maxNum=arr[i];
}
}
System.out.println("最小值是:"+minNum+",最大值是"+maxNum);
结果为:
最小值是:11,最大值是35
2. 将二维数组中的行和列进互换
int[][] numArray={{1,2,3},{4,5,6},{7,8,9}}; //定义二维数组
System.out.println("对调前数组为:");
for(int[] temp:numArray){ //打印出数组
for(int i:temp){
System.out.print(i+"\t");
}
System.out.println();
}
int[][] num2Array=new int[numArray.length][numArray.length];
for(int i=0;i<numArray.length;i++){ //交换行和列
for(int j=0;j<numArray[i].length;j++){
num2Array[i][j]=numArray[j][i];
}
}
System.out.println("对调后数组为:");
for(int[] temp:num2Array){ //打印出数组
for(int i:temp){
System.out.print(i+"\t");
}
System.out.println();
}
结果为:
对调前数组为:
1 2 3
4 5 6
7 8 9
对调后数组为:
1 4 7
2 5 8
3 6 9
注:如果不借用新建立的数组,直接在原数组上进行行和列的互换,则对调的核心代码为:
for(int i=0;i<numArray.length;i++){
for(int j=0;j<=i;j++){
int t=numArray[i][j];
numArray[i][j]=numArray[j][i];
numArray[j][i]=t;
}
}
3. 人员抽奖
String[] nameArray={"张三","李四","王五","马六","孙三","陈九"};//定义抽奖名单
int index=(int)(Math.random()*nameArray.length); //随机中奖人索引
System.out.println("中奖的人是:"+nameArray[index]);
结果:
中奖的人是:XXX
注:关于java中随机数的应用可以参考博文:java中随机数的生成总结
4. 用数组反转字符串
String str="abcdefghijklmn";
char[] charArray=str.toCharArray();
txtrDd.setText("");
for(int i=0;i<charArray.length/2;i++){//反转算法
char temp=charArray[i];
charArray[i]=charArray[charArray.length-i-1];
charArray[charArray.length-i-1]=temp;
}
System.out.println("反转后:"+new String(charArray));
结果为:nmlkjihgfedcba
注:StringBuilder类的reverse( )方法也可以进行代码的反转。