——- android培训、java培训、期待与您交流! ———-
七、数组
1、数组中常见的操作:
遍历数组(for循环)
获取最大值最小值(排序算法)
2、示例演示:
1)/选择排序/
class Shan
{
public static void main(String[] args)
{
int[] arr={1,4,2,7,9,5,3,6};
printArray(arr); //打印排序前的数组
selectSort(arr); //数组排序
printArray(arr); //打印排序后的数组
System.out.println();
}
public static void selectSort(int[] arr) //选择排序
{
for(int x=0;x<arr.length;x++) //控制比较的次数
{
for(int y=x+1;y<arr.length-1;y++) //前后两个数进行比较
{
if(arr[x]>arr[y]) //小的数字放前面,大的数字放后面
{
int temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
2)/冒泡排序/
public static void bubbleSort(int[] arr) //冒泡排序:相邻两个元素进行比较,如果符合条件就进行换位,最值出现在最后一位。
{
for(int x=0;x<arr.length-1;x++) //控制比较的次数
{
for(int y=0;y<arr.length-x-1;y++) //-x:让每一次比较的元素减少;-1:避免角标越界
{
if(arr[y]<arr[y+1])
{
int temp=arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
3)/遍历数组/
public static void printArray(int[] arr) //把数组里的元素打印出来
{
System.out.print("{");
for(int x=0;x<arr.length;x++ //遍历数组)
{
if(x!=arr.length-1)
System.out.print(arr[x]+",");
else
System.out.print(arr[x]+"}");
}
System.out.println();
}
}
4)/获取最值/
public static int getMax(int[] arr) //第一种方法,
//初始化变量为数组中的第一个元素,元素之间进行比较.
{
int max=arr[0];
for(int x=1;x<arr.length;x++)
{ if(arr[x]>max)
max=arr[x];
}
return max;
}
public static int getMin(int[] arr) //第二种方法,临时变量初始化为0,其实是在初始化为数组中任意一个角标,角标之间进行比较.
{
int min=0;
for(int x=0;x<arr.length-1;x++)
{
if(arr[x]<arr[min])
min=x;
}return arr[min];
}
public static void main(String[] args)
{
int[] arr={2,5,3,7,4,9,8};
int max=getMax(arr);
int min=getMin(arr);
System.out.println("max"+"="+max);
System.out.println("min"+"="+min);
}
}