Java基础学习-方法

news2024/11/25 6:52:28

目录

方法基础概念

方法的格式:

案例:最简单方法的定义

案例:带参数的方法调用

案例:求圆的面积

带有返回值的方法:

方法注意点

方法的重载:

​编辑

案例:数组的遍历:

案例:求数组最大值:

案例:判断数组中数是否存在:

案例:复制数组:

方法的内存:


方法基础概念

方法是程序中最小的执行单元。

方法的作用:

调用打包好的方法,更方便间接。提高复用性,可维护性。

方法的格式:

案例:最简单方法的定义

package textfangfa;
//利用最简单方式定义方法
public class text1 {
    public static void main(String[] args) {
        //调用方法
        playGame();
    }

    public static void playGame(){
        System.out.println("永结无间");
        System.out.println("光遇");
        System.out.println("元神");
        System.out.println("饥荒");
    }
}

看到方法就进入方法,然后方法执行完毕回到执行处继续执行。

案例:带参数的方法调用

package textfangfa;
//带参数方法调用
public class text2 {
    public static void main(String[] args) {
        getSum(12,22);

    }
    public static void getSum(int a, int b ){
        int sum = a + b;
        System.out.println(sum);
    }
}

要注意形参实参。

案例:求圆的面积

package textfangfa;
//求圆的面积
public class text2 {
    public static void main(String[] args) {
        getSum(1.5);

    }
    public static void getSum(double r){
        double result=r*r*3.14;
        System.out.println(result);
    }
}

带有返回值的方法:

package textfangfa;
//带有返回值的方法
public class text3 {
    public static void main(String[] args) {
        //直接调用
        getData(1,2,3);
        //赋值调用
        int count= getData(4,5,6);
        System.out.println(count);
        //输出调用
        System.out.println( getData(7,8,9));
    }
    public static int getData(int n, int b, int c){
        int sum=n+b+c;
        return sum;
    }
}

方法注意点

方法的重载:

Java虚拟机会通过参数的不同来区分同名的方法。顺序不同可以构成重载,但是不建议。

方法重载的好处:定义方法的时候不用起那么多单词,用方法的时候也不用那么麻烦。

案例:数组的遍历:

package textfangfa;
//数组的遍历
public class text4 {
    public static void main(String[] args) {
        int[]arr={1,2,3,4,5};
        printarr(arr);

    }
    public static void printarr(int[]arr){
        System.out.print("[");
        for(int i=0;i<arr.length;i++){
           if(i==arr.length-1){
               System.out.print(arr[i]);
           }else {
               System.out.print(arr[i]+",");
           }

        }
        System.out.print("]");
    }
}

案例:求数组最大值:

package textfangfa;
//设计一个方法,求数组最大值
public class text5 {
    public static void main(String[] args) {
    int[]arr={12,222,37,4,5};
        int max = getMax(arr);
        System.out.println(max);
    }
    public static int getMax(int[]arr){
        int max = arr[0];
        for(int i=0;i<arr.length;i++){
            if(arr[i]>max){
                max=arr[i];
            }
        }
        return max;
    }
}

案例:判断数组中数是否存在:

package textfangfa;

import java.util.Scanner;

//数组中是否存在某数
public class text6 {
    public static void main(String[] args) {
    int[]a={11,12,45,23,45,7,67,87,98,987,35,67,9,1,2,3,4,5,6,7,8,9};
        Scanner sc=new Scanner(System.in);
        System.out.print("请输入你要判断的数字:");
        int x=sc.nextInt();
        System.out.println(contains(a,x));
    }
    public static boolean contains(int[] a, int x) {
        for (int i = 0; i < a.length; i++) {
            if (a[i] == x) {
                return true;
            }
        }
        return false;
    }
}

return和break区别:

案例:复制数组:

package textfangfa;
/*定义一个方法copyOfRange(int[] arr,int from, int to)
将数组arr中从索引from(包含from)开始。
到索引to结束(不包含to)的元素复制到新数组中将新数组返回*/
public class text7 {
    public static void main(String[] args) {
    int[]a={1,2,3,4,5,6,7,8,9};
    int[]b=copyOfRange(a,3,7);
        for (int i = 0; i < b.length; i++) {
            System.out.print(b[i]+"  ");
        }
    }
    public static int[] copyOfRange(int[]a, int from, int to) {

       int[]newarr=new int[to-from];
       int index=0;
       for (int i=from;i<to;i++){
           newarr[index]=a[i];
           index++;
       }
       return newarr;
    }
}

方法的内存:

先进后出,执行完毕出站。

存的不是真实的数据,而是地址值的时候,才是引用数据类型。

传递基本数据类型时,传递的是真实的数据,形参的改变,不影响实际参数的值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1834174.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024.6.17 作业 xyt

今日作业&#xff1a; 升级优化自己应用程序的登录界面。 要求&#xff1a; 1. qss实现 2. 需要有图层的叠加 &#xff08;QFrame&#xff09; 3. 设置纯净窗口后&#xff0c;有关闭等窗口功能。 4. 如果账号密码正确…

如何使用GPT-4 生成高效实用的PPT

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

【Linux】Jenkins Pipeline流水线详解及基于Jenkins流水线实现自动更新项目(实战)

&#x1f468;‍&#x1f393;博主简介 &#x1f3c5;CSDN博客专家   &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01…

传感器在智能家居中的应用

在物联网时代&#xff0c;智能家居成为人们生活中的重要组成部分。而传感器作为实现智能家居的基础设备&#xff0c;起到了关键的作用。不同类型的传感器能够获取环境中的各种参数&#xff0c;并通过物联网技术实现与智能家居系统的连接。例如&#xff0c;温度传感器可以实时监…

华为OD机试 - 火星文计算2(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;D卷C卷A卷B卷&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;每一题都有详细的答题思路、详细的代码注释、样例测…

stm32学习-软件I2C读取MPU6050

接线 SDAPB11SCLPB10 I2C 对操作端口的库函数进行封装 void MyI2C_W_SCL(uint8_t BitValue)//写 {GPIO_WriteBit(GPIOB, GPIO_Pin_10, (BitAction)BitValue);Delay_us(10); }void MyI2C_W_SDA(uint8_t BitValue)//写 {GPIO_WriteBit(GPIOB, GPIO_Pin_11, (BitAction)BitValu…

LeetCode 1789, 6, 138

目录 1789. 员工的直属部门题目链接表要求知识点思路代码 6. Z 字形变换题目链接标签思路代码 138. 随机链表的复制题目链接标签思路代码 1789. 员工的直属部门 题目链接 1789. 员工的直属部门 表 表Employee的字段为employee_id&#xff0c;department_id和primary_flag。…

graalvm编译springboot3 native应用

云原生时代容器先行&#xff0c;为了更好的拥抱云原生&#xff0c;spring boot3之后&#xff0c;推出了graalvm编译boot项目&#xff0c;利用jvm的AOT&#xff08; Ahead Of Time &#xff09;运行前编译技术&#xff0c;可以将java源码直接构建成机器码二进制的文件&#xff0…

28. 空间滤波器

导论&#xff1a; 几何光线追迹是光线传播的一种不完善描述。严格地说&#xff0c;光束传播是一个相干过程。当波前通过自由空间或光学介质时&#xff0c;波前会发生相干干涉。这种相干传播的建模包括物理光学领域。 物理光学传播&#xff08;POP&#xff09;是zemax的一项强…

基于 Thingsboard 定制开发,国产化企业级、低代码 AIoT 物联网平台

项目源码&#xff0c;文末联系小编 01 ThingsKit 物联网平台 ThingsKit 是基于 Thingsboard 开源物联网平台二次开发&#xff0c;面向中小型企业开箱即用的低代码物联网平台&#xff0c;提供N1N&#xff08;N个终端产品1个物联网平台N个行业方案&#xff09;的产品服务矩阵&…

MySQL数据库入门

1、MySQL概述 MySQL官方网站 https://www.mysql.com/downloads/ MySQL被Oracle公司收购了&#xff0c;作者又重新编写了一个开源的数据库管理系统&#xff0c;Mariadb 2、MySQL产品&版本 2、数据库在网站架构中的角色 LAMP LNMP网站架构 3、安装MySQL-基于yum 查…

现代体育场馆的新宠:气膜体育馆的特点与优势—轻空间

气膜体育馆作为一种新型的运动场馆&#xff0c;近年来在国内外迅速普及&#xff0c;成为现代综合性体育场馆的代表。其独特的结构设计和多功能应用&#xff0c;不仅满足了人们日益增长的健身需求&#xff0c;也为各类体育项目提供了理想的场地。本文将探讨气膜体育馆的特点、优…

GPT-4o的视觉识别能力,将绕过所有登陆的图形验证码

知识星球&#x1f517;除了包含技术干货&#xff1a;《Java代码审计》《Web安全》《应急响应》《护网资料库》《网安面试指南》还包含了安全中常见的售前护网案例、售前方案、ppt等&#xff0c;同时也有面向学生的网络安全面试、护网面试等。 我们来看一下市面上常见的图形验证…

Node.js中基于node-schedule实现定时任务之详解

文章目录 一、定时任务二、node-schedule、1、安装2、引入3、基于Cron表达式的规则4、基于Date的规则5、基于RecurrenceRule的规则6、API7、状态监听 一、定时任务 实际工作中&#xff0c;可能会遇到定时清除某个文件夹内容&#xff0c;定时发送消息或发送邮件给指定用户&…

与Citrix桌面的共存期,如何保障一致体验?

在用户实际的应用场景中&#xff0c;从Citrix到深信服桌面云的替换并不是一蹴而就的过程。特别是对于已经投资购买Citrix桌面云的用户来说&#xff0c;如何最大限度地利用现有设备&#xff0c;实现成本效益最大化&#xff0c;是他们面临的一个重要问题。 为了应对这一需求&…

智慧工厂监控可视化解决方案(160页WORD)

方案介绍&#xff1a; 本智慧工厂监控可视化解决方案通过集成先进的物联网和大数据技术&#xff0c;为制造业企业提供了全面的数字化转型支持。通过实时监控、数据分析、可视化展示等功能&#xff0c;帮助企业提升生产效率、降低运营成本、优化产品质量和能源利用率&#xff0…

高考志愿填报,理科生如何分析选专业?

理科生选择专业的范围更大一些&#xff0c;相比文科说理工科的院校也更多&#xff0c;如何选择适合自己的专业&#xff0c;这是一个比较重要的课题&#xff0c;毕竟大学专业直接关系到职业&#xff0c;是一辈子的大事。 那么理科究竟如何选择专业呢&#xff1f;需要从什么地方…

【单片机毕业设计选题24013】-基于STM32的城市垃圾分类引导系统

系统功能: 1、系统具有语音识别功能&#xff0c;可以对厨余垃圾、其他垃圾、有害垃圾、可回收垃圾进行语音识别&#xff1b; 2、系统可根据语音识别结果直接开启对应类别的垃圾桶&#xff0c;引导分类投放&#xff1b; 3、系统具有语音播报功能&#xff0c;可以语音播报出识…

备忘录怎么插入文件和附件 备忘录插入文件附件方法

在繁忙的工作与生活中&#xff0c;我们时常需要记录各种信息&#xff0c;而备忘录则成为了我们不可或缺的得力助手。然而&#xff0c;当备忘录中需要包含的文件或附件越来越多时&#xff0c;如何高效、便捷地管理这些文件&#xff0c;便成为了一个亟待解决的问题。 想象一下&a…

STM32学习笔记(八)--DMA直接存储器存取详解

&#xff08;1&#xff09;配置步骤1.配置RCC外设时钟 开启DMA外设2.初始化DMA外设 调用DMA_Init 外设存储器站点的起始地址 数据宽度 地址是否自增 方向 传输计数器 是否需要自动重装 选择触发源 通道优先级3.开启DMA控制 4.开启触发信号输出&#xff08;如果需要硬件触发&…