学习java第4天

学习java第4天,第1张

方法 设计原则

一个方法完成一个功能

命名规则:小写和驼峰

定义
修饰符	返回值	方法名(参数类型	参数名){

		……方法体

		return 返回值;	

}

//实际参数
public static void aa(int a);
//形式参数
aa(10);
重载

本质:函数名相同,参数列表不同

public static void main(String[] args) {
        System.out.println("int ="+add(11,12));
        System.out.println("double ="+add(13L,14L));

    }
    public static int add (int a,int b){
        return a+b;
    }
    public static double add (double a,double b){
        return a+b;
    }
控制台运行

运行class文件要先到上一级路径下并输入软件包路径+文件名

编译要在软件包下编译

可变参数(不定向参数)
public static void add (int... num){
    ……函数体
    return 0;
}

注意点:

  1. 在方法声明中,在指定参数类型后加一个省略号
  2. 一个方法只有一个可变参数
  3. 可变参数要在最后面
public class function3 {
    public static void main(String[] args) {
        print(1,2,3,4,5);
    }
    public static void print(int... num){
        for(int i=0;i<num.length;i++){
            System.out.println(num[i]);
        }
    }
}

//错误
public static void print(int... num,int x);
递归

本质:自身调用自己

注意:要有返回的条件,否则会栈溢出

public class function4 {
    public static void main(String[] args) {
        System.out.println(fun(3));
    }
    public static int fun(int i){
        if (i==1){
            return 1;//********
        }else{
            return i*fun(i-1);//******
        }
    }
}
数组
  1. 声明
//数据类型[] 数组名;
int[] num;
//数组类型 数组名[];
int num[];
  1. 创建
num = new int[10];
  1. 赋值
num[0]=1;
num[2]=2;
num[3]=3;
//未赋值默认为0
//数组长度
num.length
  1. 初始化
  • 静态初始化
int[] a={1,2,3};
Man[] mans={new Man(1,1),new Man(2,2)};
  • 动态初始化
int[] a=new int[2];
a[0]=1;
  1. 特点

    • 长度固定
    • 元素类型相同
    • 数组变量属于引用类型,数组也可以看作成对象
    • 数组对象本身在堆中
  2. 使用:

//for-each
//数组名.for自动生成
public static void main(String[] args) {
        int[] arry={1,2,3,4};
        for (int i : arry) {
            System.out.println(i);//不是用数组名
        }
}
//返回数组
return 数组名;
public static void main(String[] args) {
        int arry[]={1,2,3,4,5};
        int arry2[]=new int[arry.length];
        arry2=ser(arry);
        for (int i : arry2) {
            System.out.println(i);
        }
}
    public static int[] ser(int[] arry){
        int[] arrys=new int[arry.length];
        int i=0;
        int j=arry.length-1;
        for (;i<arry.length;i++,j--){
            arrys[i]=arry[j];
        }
        return arrys;
}
  1. 二维数组
int[][] nums=new int[][];
int[][] nums={{1,2},{3,4}};
System.out.println(nums[0][0]);
  1. Arrays类(工具类)
int [] a={1,2,3,4,5};
System.out.println(Arrays.toString(a));
Arrays.sort(a);

  1. 稀疏数组
//前提:当一个数组大部分元素为0,或者为同一值
//处理方式:1.记录一共几行几列 2.把不同值的元素和行列及值记录在一个小规模的数组中

java内存
  1. 堆:存放new对象
  2. 栈:存放基本类型,引用
  3. 方法区:可被共享,包含所有class和static

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/735509.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存