当前位置: 首页 > news >正文

Java基础学习-方法

目录

方法基础概念

方法的格式:

案例:最简单方法的定义

案例:带参数的方法调用

案例:求圆的面积

带有返回值的方法:

方法注意点

方法的重载:

​编辑

案例:数组的遍历:

案例:求数组最大值:

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

案例:复制数组:

方法的内存:


方法基础概念

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

方法的作用:

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

方法的格式:

案例:最简单方法的定义

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;}
}

方法的内存:

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

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

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

相关文章:

  • ByteTrack跟踪理解
  • 存储、管理和展示多媒体文件
  • MySQL 连接的使用方法与技巧
  • linux 部署瑞数6实战(维普,药监局)第一部分
  • 前端网站(二)-- 菜单页面【附源码直接可用】
  • chrome 使用本地替换功能替换接口返回内容
  • 基础算法--双指针算法
  • 数据结构历年考研真题对应知识点(单链表、双链表、循环链表)
  • 【机器学习】第11章 神经网络与深度学习(重中之重)
  • 架构师篇-1、总体架构设计
  • 智慧之选:Vatee万腾平台,引领未来的创新引擎
  • hdfs源码解析之DFSClient
  • 【ARM Cache 及 MMU 系列文章 6.5 -- 如何进行 Cache miss 统计?】
  • 利用CUDA加速卷积计算:原理、实践与示例代码
  • 深入理解网络传输协议——TCP/IP协议的可靠交付服务的特征
  • [笔记] php常见简单功能及函数
  • 0基础学习移动端适配
  • Apache Spark Streaming 使用实例
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Docker 笔记(2):Dockerfile
  • express.js的介绍及使用
  • Linux Process Manage
  • miaov-React 最佳入门
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • NSTimer学习笔记
  • Python十分钟制作属于你自己的个性logo
  • React 快速上手 - 07 前端路由 react-router
  • Vue ES6 Jade Scss Webpack Gulp
  • 如何合理的规划jvm性能调优
  • 一个SAP顾问在美国的这些年
  • 由插件封装引出的一丢丢思考
  • FaaS 的简单实践
  • 第二十章:异步和文件I/O.(二十三)
  • ​1:1公有云能力整体输出,腾讯云“七剑”下云端
  • #Datawhale X 李宏毅苹果书 AI夏令营#3.13.2局部极小值与鞍点批量和动量
  • $forceUpdate()函数
  • (12)Linux 常见的三种进程状态
  • (26)4.7 字符函数和字符串函数
  • (35)远程识别(又称无人机识别)(二)
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (C语言)字符分类函数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第14章泛型第2节(泛型类的类构造函数)
  • (Qt) 默认QtWidget应用包含什么?
  • (TOJ2804)Even? Odd?
  • (二)Kafka离线安装 - Zookeeper下载及安装
  • (二)PySpark3:SparkSQL编程
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (六)vue-router+UI组件库
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (一)使用IDEA创建Maven项目和Maven使用入门(配图详解)
  • (译)计算距离、方位和更多经纬度之间的点
  • (转)iOS字体
  • (转)Linux整合apache和tomcat构建Web服务器
  • .NET牛人应该知道些什么(2):中级.NET开发人员