数组的使用

本文深入讲解了Java中数组的基本操作,包括获取数组长度、遍历、求最值、元素反转及作为方法参数和返回值的使用技巧。通过实例演示了数组在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取数组长度

格式:数组名.length
eg:

public class class1 {
    public static void main(String[] args) {
     int [] array={10,20,40,50,80,41};
        int len=array.length;
           System.out.println("数组的长度是"+len);
     }
        }

在这里插入图片描述

数组的遍历输出

使用for循环从第一个元素开始,依次遍历下一个元素,直到所有元素都被访问到。
eg:

public class class1 {
    public static void main(String[] args) {
        int[] arrayB={10,12,34,5,6,7,8,4,2,12,43};
        //数组的遍历
        for (int i = 0; i <arrayB.length ; i++) {
            System.out.print(arrayB[i]+" ");
        }
     }
        }

在这里插入图片描述

备注:快捷键:
数组名.length.fori+enter键

求数组中的最值

public class class1 {
    public static void main(String[] args) {
        int [] array={10,20,40,50,80,41};
       int max=array[0];
        //数组的最大值
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i]+" ");
            if(max<=array[i]) {
                max=array[i];
        }
        }
         System.out.println();
        System.out.println("该数组的最大值是"+max);
         System.out.println("***********************");
        }
        }

在这里插入图片描述

数组元素反转

1.数组元素反转,其实就是对称位置的元素交换。
2.通常遍历数组用的是一个索引:

int i= 0;

现在表示对称位置需要两个索引:

int min = 0;
int max = array.length - 1;

当数组长度为奇数时:
在这里插入图片描述
当数组长度为偶数时:
在这里插入图片描述

3.如何交换两个变量的值?

int a = 10;
int b = 20; 

如果是两个水杯,都是满的,如何交换?借助第三个空杯子。

int temp = a;
a=b;
b = temp;

在这里插入图片描述
即,max和min通过第三方(temp)交换,交换后max-1,min+1;
直到min>max(当数组长度为偶数时)
或者min=max(当数组长度为奇数时)停止交换。
eg:

public class class1 {
    public static void main(String[] args) {
     int[] arrayB={10,12,34,5,6,7,8,4,2,12,43};
        //数组的遍历

        for (int i = 0; i <arrayB.length ; i++) {
            System.out.print(arrayB[i]+" ");
        }
        System.out.println();

        //数组的反转
        int temp=0;
        for (int min1=0, max1=arrayB.length-1;min1<max1;min1++,max1--) {
            temp=arrayB[min1];
            arrayB[min1]=arrayB[max1];
            arrayB[max1]=temp;
        }
          System.out.println("反转后的结果是:");
        for (int i = 0; i <arrayB.length ; i++) {
            System.out.print(arrayB[i]+" ");
        }
    }

}

在这里插入图片描述

数组作为方法参数——传值

数组可以作为方法的参数。
当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值。|

public class class2 {
    public static void main(String[] args) {
        int[] array={1,112,3,4,5,6,8,15};
        printArray(array);

    }

    public static void printArray(int[] array) {
        System.out.println("printArray方法收到的参数是: ");
        System.out.println(array); //地址值|
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i]+" ");
        }
    }
}

在这里插入图片描述

数组作为方法返回值——返回

一个方法可以有0、1、多个参数;但是只能有0或者1个返回值,不能有多个返回值。
如果希望一个方法当中产生了多个结果数据进行返回,怎么办?
解决方案:使用一个数组作为返回值类型即可。

public class class2 {

        public static void main(String[] args) {
            int[] result = calculate( 10,20,30) ;
            System.out.println("总和:"+ result[0]);
            System. out. println("平均数:"+ result[1]);
        }
        public static int[] calculate(int a, int b, int c) {
            int sum = a + b + c;//总和
            int avg = sum / 3;//平均数
//两个结果都希望进行返回

//需要一个数组
/*
int[] array = new int[2];
array[0] = sum; //总和
array[1] = avg; //平均数
*/
            int[] array = {sum, avg};
            return array;
        }
}

在这里插入图片描述

对最后两个大标题的总结:
任何数据类型都能作为方法的参数类型,或者返回值类型
数组作为方法的参数,传递进去的其实是数组的地址值。
数组作为方法的返回值,返回的其实也是数组的地址值。|

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值