练习
一、数组遍历
需求:设计一个方法用于数组遍历,要求遍历的结果是在一行上的。例如:{11,22,33,44,55}
示范:
public class shuzubianli {
public static void main(String[] args) {
//1.定义数组
int[] arr = {11,22,33,44,55};
//2.调用方法
bianli(arr);
}
//定义方法用于数组的遍历
public static void bianli(int[] arr){
System.out.print("[");
for (int i = 0; i < arr.length; i++) {
if(i == arr.length - 1){
System.out.print(arr[i]);
}else{
System.out.print(arr[i]+ ", ");
}
}
System.out.print("]");
}
}
二、数组最大值
需求:设计一个方法求数组的最大值,并将最大值返回
示范:
public class shuzuzuidazhi {
public static void main(String[] args) {
//1.定义数组
int[] arrC = {33,55,22,11,44};
//2.调用方法求最大值
int Carrmax = max(arrC);
//3.打印
System.out.println(Carrmax);
}
public static int max(int[] arrC){
int maxarr = arrC[0];
for(int i = 1;i < arrC.length;i++){
if( maxarr < arrC[i]){
maxarr = arrC[i];
}
}
return maxarr;
}
}
三、判断是否存在
需求:定义一个方法判断数据中的某一个数是否存在,将结果返回给调用处。
示范:
public class pandaun {
public static void main(String[] args) {
//1.定义一个数组
int[] arr = {11,33,55,22,25};
int num = 25;
//2.调用方法
boolean cunzai =panIO(arr,num);
if(cunzai == true){
System.out.println("此数组内存在");
}else{
System.out.println("不存在");
}
}
public static boolean panIO(int[] arrP,int shu){
for (int i = 0; i < arrP.length; i++) {
if(arrP[i] == shu){
return true;
}
}
return false;
}
}
四、拷贝数组
需求:定义一个方法copyOFRange(int[] arr,int from,int to)
功能:将数组arr中从索引from(包含from)开始。到索引to结束(不包含to)的元素赋值到新数组中,将新数组返回。
示范:
public class copy {
public static void main(String[] args) {
//1.定义原始数组
int[] yuanArr = {1,2,3,4,5,6,7,8,9};
//2.调用方法copy数据
int[] copyArr = copyOfRange(yuanArr, 3, 7);
//3.遍历copyArr
for (int i = 0; i < copyArr.length; i++) {
System.out.println(copyArr[i]);
}
}
public static int[] copyOfRange(int[] arr,int from,int to){
//1.定义数组(动态数组)
int[] newArr = new int[to - from];
//2.把原始数组arr中的from到to上对应的元素,直接 copy 到 newArr 中
//伪造索引
int weizao = 0;
for (int i = from; i < to; i++) {
newArr[weizao] = arr[i];
weizao++;
}
//3.把新数组返回
return newArr;
}
}