package com.DaYu;publicclassDemo01{publicstaticvoidmain(String[] args){//定义一个数组int[] arr ={12,23,43,5,7,8,6,4,4};//循环+下标 进行遍历 下标范围 0--->arr.length-1for(int i =0; i <= arr.length -1; i++){
System.out.print(arr[i]);}}}
获取数组的最值
package com.DaYu;publicclassDemo02{publicstaticvoidmain(String[] args){//定义一个数组int[] arr ={12,23,43,5,7,8,6,4,4};//声明一个变量,用来记录数组中的最大值int max = arr[0];//数组遍历for(int i =0; i < arr.length; i++){//将数组中的每个数据都和max进行比较,如果比max还大就替换掉max的值if(max < arr[i]){
max = arr[i];}}//遍历完数组后,输入max值即为最大值
System.out.println("数组中的最大值为:"+ max);}}
最小值同理 int min = a[0];if(a[i]<min) min = a[i];
数组的反转
方法一:
package com.DaYu;publicclassDemo03{publicstaticvoidmain(String[] args){//定义一个数组int[] arr ={1,2,3,4,5,6,7,8,9};//调用方法--数组遍历arrayBianli(arr);int temp;//初始时 i为第一个值的下标,j为最后一个值的下标,//两者数据进行交换并逐步向中间靠拢for(int i =0, j = arr.length-1; i <j; i++,j--){
temp = arr[i];
arr[i]= arr[j];
arr[j]= temp;}//换行、遍历看结果
System.out.println();arrayBianli(arr);}//将数组的遍历写成一个方法publicstaticvoidarrayBianli(int[] arr){for(int i =0; i < arr.length; i++){
System.out.print(arr[i]+" ");}}}
方法二:
package com.DaYu;publicclassDemo01{publicstaticvoidmain(String[] args){//定义一个数组int[] arr ={1,2,3,4,5,6,7,8,9,10};//调用方法--数组遍历arrayBianli(arr);int temp;//找到与i相对应的值的下标arr.length-1-i,两者互换,//注意循环变量判断只要到 arr.length/2for(int i =0; i < arr.length/2; i++){
temp = arr[arr.length-1-i];
arr[arr.length-1-i]= arr[i];
arr[i]= temp;}//换行、遍历看结果
System.out.println();arrayBianli(arr);}//将数组的遍历写成一个方法publicstaticvoidarrayBianli(int[] arr){for(int i =0; i < arr.length; i++){
System.out.print(arr[i]+" ");}}}
数组元素的查找
判断数组中是否存在某值,若存在则其下标是?
方法一:
package com.DaYu;import java.util.Scanner;publicclassDemo04{publicstaticvoidmain(String[] args){//定义一个数组 int[] arr ={1,2,3,4,5,6,7,8,9};//键盘输入要查找的值
Scanner sc =newScanner(System.in);
System.out.println("请输入要查找的值");int m = sc.nextInt();boolean f =true;//遍历数组for(int i =0; i < arr.length; i++){//判断是否相同if(arr[i]== m){
System.out.println("数组中值的下标是:"+i);
f =false;}}if(f =true){
System.out.println("数组中没有与输入的值一样的值");}}}
方法二:
package com.DaYu;import java.util.Scanner;publicclassDemo05{publicstaticvoidmain(String[] args){//定义一个数组 int[] arr ={1,2,3,4,5,6,7,8,9};//键盘输入要查找的值
Scanner sc =newScanner(System.in);
System.out.println("请输入要查找的值");int m = sc.nextInt();//如果没有相同值则返回-1int index =-1;//遍历数组for(int i =0; i < arr.length; i++){//判断是否相同if(arr[i]== m){
index = i;}}if(index ==-1){
System.out.println("数组中没有与输入的值一样的值");}else{
System.out.println("数组中值的下标是:"+index);}}}
数组的扩容
package com.DaYu;import java.util.Arrays;publicclassDeno05{publicstaticvoidmain(String[] args){//定义一个容量为3的数组int[] arr =newint[3];//想在数组中存放第四个元素,则需要扩大其容量//使用方法Arrays.copyOf(),再将新数组的地址赋值给旧的变量
arr = Arrays.copyOf(arr,4);//遍历查看一下for(int i =0; i < arr.length; i++){
System.out.print(arr[i]+" ");}}}
数组的排序
package com.DaYu;import java.util.Arrays;publicclassDeno06{publicstaticvoidmain(String[] args){//定义一个容量为3的数组int[] arr ={3,5,1,78,23,0};//想在数组中存放第四个元素,则需要扩大其容量//使用方法Arrays.sort()
Arrays.sort(arr);//遍历查看一下for(int i =0; i < arr.length; i++){
System.out.print(arr[i]+" ");}}}