案例:查找
需求:已知一个数组arr={19,28,37,46,50};键盘录入一个数据,查找该数据在数组中的索引,并在控制台输出找到的索引值
代码如下:
package ggone.java;
import java.util.Scanner;
public class sum {
public static void main(String[]args) {
int []arr= {19,28,37,46,50};//定义一个数组,用静态初始化完成数组元素的初始化
Scanner sc=new Scanner(System.in);//键盘录入要查找的数据,用一个变量接收
System.out.println("请输入要查找的数据:");
int number=sc.nextInt();
int index=getIndex(arr,number);//调用方法
System.out.println("index: "+index);//输出索引变量
}
public static int getIndex(int []arr,int number) {
int index=-1; //定义一个索引变量,初始值为-1
//遍历数组中的每一个元素
for(int x=0;x<arr.length;x++) {
if(arr[x]==number) {
index=x;
break;
}
}
return index;
}
}
案例:反转
需求:已知一个数组arr={19,28,37,46,50};用程序实现把数组中的元素值调换
交换后的数组arr={50,46,37,28,19};并在控制台输出调换后的数组元素。
代码如下:
package ggone.java;
import java.util.Scanner;
public class sum {
public static void main(String[]args) {
int arr[]= {19,28,37,46,50};//定义一个数组,用静态初始化完成数组的初始化
reverse(arr);
printArray(arr);//遍历数组
}
public static void reverse(int [] arr) {
for(int start=0,end=arr.length-1;start<end;start++,end--) {
//循环遍历数组,这一次初始化语句定义两个索引变量,判断条件是开始索引小于等于结束索引
int temp=arr[start];
arr[start]=arr[end];
arr[end]=temp;
}}
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("]");
}
}