首页 > 编程语言 >Day04java方法

Day04java方法

时间:2023-11-14 16:36:55浏览次数:35  
标签:args return int max Day04java static 方法 public

所有学习内容来自:狂神说java

Java方法详解

一、方法

java方法是语句的集合,它们在一起执行一个功能。

  • 方法是解决一类问题的步骤的有序集合
  • 方法包含于类或对象中
  • 方法在程序中被创建,在其他地方被引用

设计方法的原则:设计方法时最好保持方法的原子性,就是一个方法值完成一个功能,这样有利于后期的扩展。

举例:

public class Demo01 {

    //main方法
    public static void main(String[] args) {
        int add = add(1, 2);
        System.out.println(add);
        
        test()
    }

    //加法
    //修饰符(可有可无) + (类变量声明static,这样才可以在类内调用)+返回值
    //+方法名+输入形式
    public static int add(int a, int b){
        return a+b;
    }
    
    public static void test(){
        for (int i = 0; i < 1000; i++) {
            if (i%100==0){
                System.out.println(i);
            }
        }
    }
}

二、方法定义及调用

Java的方法类似于其他语言的函数。

举例:

public class Demo02 {
    public static void main(String[] args) {
        int max = max(5, 6);
        System.out.println(max);

    }

    //比大小
    public static int max(int a, int b){

        if (a>b){
            return a;//return也可以终止方法
        }
        else {
            return b;
        }
    }
}

方法调用

java是值传递。

三、方法重载

public class Demo02 {
    public static void main(String[] args) {
        int max = max(5, 6);
        double max2 = max(5.0, 6.0);
        System.out.println(max);
        System.out.println(max2);

    }

    //比大小
    public static int max(int a, int b){

        if (a>b){
            return a;//return也可以终止方法
        }
        else {
            return b;
        }
    }

    public static double max(double a, double b){

        if (a>b){
            return a;//return也可以终止方法
        }
        else {
            return b;
        }
    }
}

四、命令行传参*

有时候希望运行一个程序的时候再给它传递消息。这要靠传递命令行参数给main()函数实现。

public class Demo03 {
    public static void main(String[] args) {
        for (int i = 0; i < args.length; i++){
            System.out.println("args["+i+"]:"+args[i]);
        }
    }
}
//打印传入的参数

image-20231110140149416

命令行传参:

  1. 在java文件路径进行编译 javac Demo03.java
  2. 退回到src路径进行传参java cai.method.Demo03 this is args

五、可变参数

举例:

public class Demo04 {
    public static void main(String[] args) {
        Demo04 demo04 = new Demo04();
        demo04.test(1, 2, 654, 84, 15, 645);
        demo04.test(new int[]{1, 2, 3, 4, 5});
    }
    public void test(int... i){	//可变参数某种程度上就是数组
        if (i.length == 0){
            System.out.println("No args");
            return;
        }
        int result = i[0];
        for(int j:i){
            if(j > result){
                result = j;
            }
        }
        System.out.println("The max num is:"+result);
    }

}

六、递归

举例(计算阶乘):

public class Demo06 {
    public static void main(String[] args) {
        int a = F(3);
        System.out.println(a);
    }
    //递归计算阶乘
    public static int F(int n){
        if (n==1){
            return 1;
        }
        else {
            return n*F(n-1);
        }
    }
}

标签:args,return,int,max,Day04java,static,方法,public
From: https://www.cnblogs.com/d1rtywatersblog/p/17831910.html

相关文章

  • 服务器docker中redis和mysql连不上解决方法
    问题描述mysql报错:ERROR2013(HY000):LostconnectiontoMySQLserverat'readinginitialcommunicationpacket',systemerror:0redis报错:(总之就是本地连不上docker中的redis)通过本地Windows下telnet连服务器端口,会直接跳到没有输入telnet的画面,本地Windows能够ssh到......
  • selectable方法
    复选框框架:通过调用selectable方法,进行禁用复选框。<el-tablev-loading="loading":data="studentList"@selection-change="handleSelectionChange"><\el-table>1.指定行禁用://复选框禁用selectable(row,rowIndex){//索引是从0开始,条件1是指只有第2......
  • js实现大文件上传——分片上传方法
    当前端在开发过程中遇到上传文件需求,如果是上传头像、图片小文件之类的,可以正常按上传流程处理。但是当遇到上传大文件需求时,几个G或者十几个G,那么需要将这么大的文件分割成许多小片段分别上传,这种实现思路称为分片上传。实现分片上传,精髓就是将文件分割成小片段,此时我们需要用到......
  • 使用JWT、拦截器与ThreadLocal实现在任意位置获取Token中的信息,并结合自定义注解实现
    1.简介1.1JWTJWT,即JSONWebToken,是一种用于在网络上传递声明的开放标准(RFC7519)。JWT可以在用户和服务器之间传递安全可靠的信息,通常用于身份验证和信息交换。声明(Claims):JWT包含一组称为声明的信息,声明描述了一些数据。有三种类型的声明:注册声明(RegisteredClaims):这是......
  • 【C 语言基础】double类型大小比较的方法——以Java为例
    问题在Java中,int类型数据的大小比较可以使用双等号,double类型则不能使用双等号比较大小(0,0==0.0 是不可以的),那若使用double类型时怎么进行比较呢? 方法(1)转换为字符串如果要比较的两个double数据的字符串精度相等,可以将数据转换成string然后借助string的equals方法来间接......
  • 独立站邮件营销方法?蜂邮EDM邮件发信效果?
    在当今数字化时代,独立站邮件营销成为企业推广的一项重要策略。蜂邮EDM邮件发信作为其中一种工具,其效果备受关注。本文将深入探讨独立站邮件营销的方法,并评估蜂邮EDM邮件发信的实际效果。1.初识独立站邮件营销独立站邮件营销是一种通过自建邮件系统,针对特定目标受众进行推广的策略......
  • 独立站邮件营销方法?蜂邮EDM邮件发信效果?
    在当今数字化时代,独立站邮件营销成为企业推广的一项重要策略。蜂邮EDM邮件发信作为其中一种工具,其效果备受关注。本文将深入探讨独立站邮件营销的方法,并评估蜂邮EDM邮件发信的实际效果。1.初识独立站邮件营销独立站邮件营销是一种通过自建邮件系统,针对特定目标受众进行推广的策略......
  • typora里输入上标的方法
    首先在偏好设置-markdown里勾选上标和下标 Subscript(下标)要使用此功能,请先在Preference 面板->Markdown选项卡中启用它。然后,使用~包装下标内容 Superscript(上标)要使用此功能,请先在Preference面板->Markdown选项卡中启用它。然后,使用 ^来包装上标内容......
  • 当前不会命中断点 未加载该文档 解决方法总结
    1.工具->选项->调试->常规 2.项目属性页 3.项目属性页 4.项目属性页 ......
  • NLP文本生成全解析:从传统方法到预训练完整介绍
    本文深入探讨了文本生成的多种方法,从传统的基于统计和模板的技术到现代的神经网络模型,尤其是LSTM和Transformer架构。文章还详细介绍了大型预训练模型如GPT在文本生成中的应用,并提供了Python和PyTorch的实现代码。关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构......