Java方法、数组

本文详细介绍了Java编程中的几个核心概念:方法重载允许同名方法通过不同参数实现;可变参数简化了多参数方法的调用;递归则展示了函数自我调用的机制;此外,还深入探讨了数组的声明、初始化、操作和排序,包括多维数组的使用以及冒泡排序算法。通过这些基础知识的学习,可以提升Java编程能力。
摘要由CSDN通过智能技术生成

一、方法重载

方法名相同,参数不同。

二、可变参数

在方法声明中,在指定参数类型后加一个省略号。

一个方法只能指定一个可变参数,它必须是方法的最后一个参数。

public static void main(String[] args) {
    printMax(1,2,5,88,4,2);
}
public static void printMax(double... numbers){
    double re = numbers[0];
    for (int i = 0; i < numbers.length; i++) {
        if(numbers[i] > re){
            re = numbers[i];
        }
    }
    System.out.println(re);
}

三、递归

递归头:什么时候不调用自身方法。

递归体:什么受需要调用自身方法。

public static int fun(int n){
    if(n==1){
        return 1;
    }else {
        return n*fun(n-1);
    }
}

四、数组

相同数据类型的有序集合。

4.1基础

1.声明

int[] nums;(首选)

int nums[]:

2.声明+创建

int[] nums = new int[10];(可以存放10个int类型的数字)

3.赋值

nums[0] = 1;

长度:nums.length

4.初始化(声明+创建+赋值)

数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。

1.静态初始化

int[] nums = {1,2,3,4,5};

2.动态初始化(包含默认初始化)

int[] a = new int[10];

int a[0] = 1;

5.使用

1.普通的for循环

2.for-each循环(array.for)

for (int num : nums) {
    System.out.println(num);
}

3.数组作方法入参

4.数组作返回值

public static int[] revers(int[] array) {
    int[] result = new int[array.length];
    for (int i = 0, j = array.length - 1; i < array.length; i++, j--) {
        result[j] = array[i];
    }
    return result;
}

4.2多维数组

int[][] a = new int[2][5];

int[][] a = {{2,3,4},{{3,4,5},{1,2,3}}; 

Array类

1.打印数组

Arrays.toString(nums);

2.排序

Arrays.sort(nums);

3.填充

Arrays.fill(array,value);

4.3冒泡排序

public static int[] sort(int[] array){
    int temp = 0;
    for (int i = 0; i < array.length-1; i++) {
        for (int j = 0; j < array.length-i-1; j++) {
            if(array[j+1]>array[j]) {
                temp = array[j + 1];
                array[j + 1] = array[j];
                array[j] = temp;
            }
        }
    }
    return array;
}

4.4稀疏数组

压缩

解压

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值