ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java第二阶段!!!

2022-08-12 21:33:06  阅读:165  来源: 互联网

标签:Java Scanner int System static 第二阶段 方法 public


java方法详解


方法的定义:(类似于c中的函数)

  • 方法是解决一类问题的步骤的有序集合

  • 方法包含于类或对象中

  • 方法在程序中被创建,在其他地方被引用

    方法需要保持原子性

    即一个方法完成一个功能。

    方法的命名

    修饰词 + 返回值类型+ 方法名(注意大小写)+(形参列表){

    ...

    方法体

    ...

    return ...

    }

    example:


import java.util.Scanner;

public class Method {
    //main方法
    public static void main(String[] args) {
        Scanner  scanner=new Scanner(System.in);
        Method method=new Method();
        int a=scanner.nextInt();
        int b= scanner.nextInt();

        System.out.println("max:"+max(a,b));
        System.out.println("min:"+method.min(a,b));


    }
    // 类方法 static 来表示该方法为类方法可直接调用
    public static int max(int a,int b){
        return (a>b)?a:b;
    }
    //一般方法无static需要构造对象来使用它
    public  int  min(int a,int b){

   return (a<b)?a:b;

}

}

拓展:值传递和引用传递

1.java一般为值传递型

值传递:是指在调用函数时,将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,就不会影响到实际参数
import java.util.Scanner;

public class Method {
    //main方法
    public static void main(String[] args) {
        Scanner  scanner=new Scanner(System.in);

        int a=scanner.nextInt();

        System.out.println("值为:"+change(a));
        System.out.println("a为"+a);
    }
    // 类方法 static 来表示该方法为类方法可直接调用
    public static int change(int a){
        return a=a+1;
    }
}


结果:

10
值为:11
a为10
引用传递:是指在调用函数时,将实际参数的地址传递到函数中,那么在函数中对参数进行修改,将会影响到实际参数

类似于c当中的址传递。

方法的重载:

重载就是在一个类中,有相同方法名,但形参不同的方法

规则:

  • 方法名必须相同
  • 参数列表必须不同(个数不同,或类型不同,排列顺序不同等)
import java.util.Scanner;

public class Method {
    //main方法
    public static void main(String[] args) {
        Scanner  scanner=new Scanner(System.in);
        int a=scanner.nextInt();
        int b=scanner.nextInt();
        System.out.println("1.\t"+add(a,b));
        System.out.println("2.\t"+add(a));

    }
    // 类方法 static 来表示该方法为类方法可直接调用
 public static  int  add(int a,int b){
        return a+b;
    }
    public static  int  add(int a){
        return a+=1;
    }
}
结果:
 5
 6
1.	11
2.	6

可变参数:(实质为创建数组)

import java.util.Scanner;

public class Method {
    //main方法
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        int[] b = {0, 1, 2, 3};
        System.out.println(b[0]);
        System.out.println(add(a, b));
    }

    // 表示:数据类型后+...
    public static int add(int a, int... b) {
        return a + b[1];
    }

}

8
0
9

注意:一个形参列表只能有一个可变形参,且需在末尾。

!!!递归

就是a方法调用自己的方法。

举例:求7的阶乘!

public class DiGui {
    public static void main(String[] args) {

        System.out.println(f(7));


    }

    public static int f(int a) {
        if (a == 1) {
            return 1;
        } else {

            return a * f(a - 1);


        }


    }
}


5040

进程已结束,退出代码0

调试视频需要加qq:2361047272

标签:Java,Scanner,int,System,static,第二阶段,方法,public
来源: https://www.cnblogs.com/awae/p/16581393.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有