前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java-函数

Java-函数

作者头像
DataScience
发布2020-05-07 21:49:00
4990
发布2020-05-07 21:49:00
举报
文章被收录于专栏:A2DataA2Data

1.5、函数

方法使用

方法:特定功能的代码块 方法定义格式:

  • 修饰符 返回值类型 方法名 (参数类型 参数名1,参数类型 参数名2 ..) { 方法体; return 返回值; }

格式解释:

  • A:修饰符 public static
  • B:返回值类型 限定返回值的数据类型
  • C:方法名 方便我们调用方法的名字
  • D:参数类型 用于限定调用方法时传入数据的类型
  • E:参数名 用于接收调用方法时传入的数据变量
  • F:方法体 完成功能代码
  • G:return 结束方法,并且把返回值带给调用者

方法明确:

  • A:返回值类型 明确功能结果的数据类型
  • B:参数列表 明确有几个参数,以及参数的数据类型

方法调用:(有明确返回值的调用)

  • A:单独调用 没有意义
  • B:输出调用,有意义,但是不够好(因为我想要拿结果进一步操作)
  • C:赋值调用

方法调用:(void修饰的方法)

  • 如果一个方法没有明确的返回值,也不能空开返回值,用void表示该方法无返回值类型
  • 只能输出调用。

求和方法

代码语言:java
复制
package com.data.it;

/**
 * Created by JackFeng on 2020/3/1.
 */
public class SumTest {

    public static void main(String[] args) {

        //调用sum
//        单独调用 无意义
//        sum(10, 20);

        // 输出调用,有意义,不完美
//        System.out.println(sum(10,20));


        // 赋值调用,常用操作。
        int i = sum(10, 20);
        System.out.println(i);
        System.out.println(i+1);

        // 对i 进行操作
        int j = sum(10,20)+10;
        System.out.println(j);



    }
    /*
    * 两个明确:
    *       返回值:int
    *       参数列表:int a , int b
    *
    *
    * */

    public static int sum(int a , int b ){
        int c = a + b;
        return  c;
    }

}

键盘录入两个数据判断是否相等

代码语言:java
复制
package com.data.it;

import java.util.Scanner;

/**
 * Created by JackFeng on 2020/3/1.
 */
public class MethodTest {
    public static void main(String[] args) {

//        创建键盘录入
        Scanner sc = new Scanner(System.in);
//        接收数据
        System.out.println("请输入第一个数据:");
        int x = sc.nextInt();

        System.out.println("请输入第二个数据:");
        int y = sc.nextInt();

//        调用方法
        boolean b = bijiao(x, y);

        System.out.println(b);

    }

    /*
    * 求两个值是否相等:
    *   返回值:boolean
    *   参数列表:int a,int b
    *
    * */


    public static  boolean bijiao(int a , int b ){
        if (a==b){
            return true;
        }else {
            return false;
        }
    }

}

水仙花数

代码语言:java
复制
package com.data.it;

/**
 * Created by JackFeng on 2020/3/1.
 */
public class MethodTest1 {

    public static void main(String[] args) {
        //调用方法
        printFlower();
    }

    /*
    * 水仙花数打印到控制台方法
    *
    *  两个参数:
    *       返回值类型:void
    *       参数列表:无参数
    *
    * */

    public  static  void printFlower(){

        for (int i = 100; i <1000 ; i++) {
            int g = i%10;
            int s = i/10%10;
            int b = i/10/10%10;

            if (g*g*g + s*s*s + b*b*b == i){

                System.out.println(i);
            }

        }

    }

}
方法重载

方法重载:在同一个类中,出现了方法名相同 不能出现参数名以及参数条件一致的方法 特点:

  • 方法名相同,参数不同
  • 参数不同
    • 参数数量不同
    • 参数个数不同

    注意:在调用方法的时候,java虚拟机会通过参数列表的不同来区分同名的方法。

比较两个数据是否相等

代码语言:java
复制
package com.data.it;

/**
 * Created by JackFeng on 2020/3/1.
 */
public class MethodTest2 {
    public static void main(String[] args) {
        System.out.println(compare(10,10));
        System.out.println(compare(10L,10L));
        System.out.println(compare((byte) 10,(byte)20));
        System.out.println(compare((short) 10,(short) 20));
    }

    //byte

    public static boolean compare(byte a , byte b){
        System.out.println("byte");
        return a == b;
    }

    //short

    public static boolean compare(short a , short b){
        System.out.println("short");
        return a == b;
    }

    //int

    public static boolean compare(int a , int b){
        System.out.println("int");
        return a == b;
    }

    //long

    public static boolean compare(long a , long b){
        System.out.println("long");
        return a == b;
    }



}
形式参数

如果方法的参数是基本数据类型:形式参数的改变不影响实际参数 如果方法的参数是引用数据类型:形式参数的改变直接影响实际参数

数组遍历

代码语言:java
复制
package com.data.it;

/**
 * Created by JackFeng on 2020/3/1.
 */
public class ArrayDo {
    public static void main(String[] args) {

        int[] arr = {1, 2, 3, 4, 5};
        System.out.println("第一种方式");
        printArray(arr);

        System.out.println("第二种方式");
        printArray1(arr);


    }


    /*
    * 两个明确:
    *       返回类型:void
    *       参数列表:int[] arr
    * */

    public static void printArray(int[] arr){
        for (int i = 0; i <arr.length ; i++) {
            System.out.println(arr[i]);
        }
    }
    public static void printArray1(int[] arr){

        // 输出为这样的 [1,2,3,4,5]
        System.out.print("[");
        for (int i = 0; i <arr.length ; i++) {
            if (i==arr.length-1){
                System.out.println(arr[i]+"]");
            }else {
                System.out.print(arr[i]+", ");
            }
        }
    }


}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DataScience 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.5、函数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档