首页 > 编程语言 >java基础:方法

java基础:方法

时间:2023-02-04 21:56:09浏览次数:36  
标签:java int args 基础 n1 n2 n3 方法 public

方法

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

  • 包含于类/对象中

设计原则

方法的原子性:一个方法只实现一个功能

定义与调用

方法的组成:

方法的调用

  • 若方法返回值为空

    System.out.println("Hello!");
    
  • 若方法返回值不为空

    int a = sum(b,c);
    

方法重载

在同一个类中,有相同名称,因参数不同,而有不同的实现,称为重载。

如:

package com.muling1m;

public class Demo {
    public static void main(String[] args){
        int m = max(10,20,30);//全为int
        System.out.println("重载调用1:"+m);
        double n  = max(10.0,20,30);//有double
        System.out.println("重载调用2:"+n);
    }
    public static double max(double n1,double n2,double n3){
        if(n1 > n2 && n1 > n3){
            return n1;
        }
        else if(n2 > n1 && n2 > n3){
            return n2;
        }
        else{
            return n3;
        }
    }
    public static int max(int n1,int n2,int n3){
        if(n1 > n2 && n1 > n3){
            return n1;
        }
        else if(n2 > n1 && n2 > n3){
            return n2;
        }
        else{
            return n3;
        }
    }
}

注意

  • 方法名称相同
  • 参数列表不完全相同
  • 返回值可以相同也可以不同
  • 返回类型不同不能定义一个重载

命令行传参

在Dos窗口运行一个程序时,通过main函数向程序内传递参数

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

在main函数定义的时候,其内参数为args,命令行就是通过args传参。

public class Demo1 {
    public static void main(String[] args){
        for (int i = 0; i< args.length; i++){
            System.out.println("args["+i+"]="+args[i]);
        }
    }
}

执行结果为:

可变参数

JDK1.5后,在参数列表的声明中,对于同一类型的可变参数提供的特性

可以指定参数类型后添加一个省略号(…)代表可变参数,省略号后添加可变参数数组的名称

一个方法只能支持一个可变参数且应在最后,普通参数在其之前定义完毕

示例:

public class Demo2 {
    public static void maxPrint(int ... numbers){
        //numbers为可变参数数组
        if(numbers.length == 0){
            System.out.println("No args!");
            return;
        }
        int result = numbers[0];
        for (int num: numbers){
            //增强for
            if(result < num) result=num;
        }
        System.out.println("Max:"+result);
    }
    public static void main(String[] args){
        maxPrint(1,2,3,123,5344,1321,233,32523);
    }
}

打印结果为:32523

标签:java,int,args,基础,n1,n2,n3,方法,public
From: https://www.cnblogs.com/muling1m/p/17092475.html

相关文章

  • Java instanceof运算符
    javainstanceof运算符用于测试指定对象是否是指定类型(类或子类或接口)的实例。java中的instanceof也称为类型比较运算符,因为它将类型与实例进行比较。它返回true或fal......
  • 混合应用字符串插值、字符串格式方法生成动态查询语句
    Strings=String.Format("select*fromPrice_ItemDeptswhereFeeDeptID={0}{1}{2}",$"'{deptID}'",string.IsNullOrEmpty(categoryID)?""......
  • Java静态绑定和动态绑定
    将方法调用连接到方法体称为绑定。在java中有两种类型的绑定:静态绑定(也称为早期绑定)。动态绑定(也称为后期绑定)。了解类型下面让我们来了解实例的类型。1.变......
  • redis基础
    redis在3.0以前使用的是单线程的Io模型3.0-6.0使用混合IO模型(混合:使用子线程处理redis内部请求,主线程处理客户端请求)6.0开始使用多线程IO模型提问:为什么使用多线程?因......
  • Android集成mupdf,实现手写笔签字,手指翻页的java代码
    importandroid.graphics.Bitmap;importandroid.graphics.Color;importandroid.graphics.RectF;importandroid.util.Log;importjava.util.LinkedList;importc......
  • Java多态
    Java中的多态是一个概念,通过它我们可以通过不同的方式执行单个动作(方法)。多态性派生自2个希腊词:“poly”和“morphs”。词语“poly”意为许多,“morphs”意为形式。所......
  • Java final关键字
    java中的final关键字用于限制用户修改变量或重写一个类或方法。javafinal关键字可以在许多上下文中使用。final可以是:变量方法类final关键字可以应用于变量,没有......
  • Java 多线程学习
    Java多线程学习Thread类学习首先使类继承Thread然后创建run方法其中在线程中run主要是线程执行体在线程中new这个类然后使用start进行线程打开注:线程中是同......
  • java 反射
    1、什么是发射?反射机制指的是程序运行时能够获取自身的信息,在java中,只要给定类的名字,就可以通过反射机制来获得类的所有属性和方法。2、在JVM运行时期可以做什么?......
  • Java lamdba表达式
    JavaLambda表达式函数式接口任何接口,如果只包含唯一一个抽象方法,那么它就是一个函数时接口publicinterfaceRunnable{ publicabstractvoidrun();}推导方法:......