JAVA基础—函数总结

本文深入解析函数的基础概念,包括函数定义、特点、有参无参区分、系统与自定义函数、返回值处理、重载与递归,以及Math和Random类的实用技巧。掌握Java函数调用规则,理解函数分类及其作用,提升代码复用和效率。
摘要由CSDN通过智能技术生成

函数基础知识

函数含义

我们在编写程序中会遇到很多重复的代码,而为了提高代码的复用性,就把该功能独立封装成一段独立的小程序,当下次需要执行加法运算的时候,就可以直接调用这个段小程序即可,那么这种封装形形式的具体表现形式则称作函数。

特点

1、定义函数可以将功能代码进行封装

2、便于对该功能进行复用

3、函数只有被调用才会被执行

4、函数的出现提高了代码的复用性

5、对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写。

注意:

  1. 函数中只能调用函数,不能定义函数,没有定义函数之前,不能调用函数。

  2. 输出语句只能对有具体返回结果的函数的进行打印。

  3. 返回值类型是void的函数,是不可以被输出语句打印的。

  4. 函数需要实现功能,那么函数只实现所需功能即可,不要实现不需要的功能。

优点

1.简化所有的过程
2.实现代码的高度复用

Java中函数属于类,不能把函数在一个函数中,因为函数是类成员。
先把函数定义为静态函数,然后再定义函数。

函数调用

无法自己进行执行,只有调用才可以执行。

Java静态方法无法直接调用非静态方法,只能通过调用静态方法,
有参数的函数使用时必须写出对应函数。

函数之间的调用

(1)静态函数内部调用其他函数
如果在本类当中,静态方法可以直接调用静态方法,
除了在 main 方法中,还可以在自定义的静态方法中直接调用。
如果在本类当中是非静态方法,就必须通过对象来调用。
如果不在一个类当中,静态方法调用其他类中的静态方法,必须通过
类名。
如果在不同类当中,静态方法调用其他类的非静态方法,需要导入该类中的包,以及通过创建对象调用。

(2)非静态方法内部调用
如果在本类中,非静态方法可以直接调用静态方法与非静态方法。
在不同类中,非静态方法调用其他类的静态方法,需要通过导入该类中的包,并且需要通过类名来调用。
在不用类中,非静态方法调用其他类的非静态方法时,需要导入该类中的包,还需要通过创建对象来调用。

函数分类

从不同角度来看可以分为许多不同的类别。

有参函数、无参函数

取决于函数中是否存在参数。

系统函数、第三者函数、自定义函数

取决于函数的定义者

有无返回值函数

取决于有没有返回值return
但遇到return的时候函数立刻返回;return后边不用加东西,在无返回值是也会返回值

函数重载

函数名称相同,参数个数和类型不同,调用书,自动匹配对位。
函数重载是强数据类型语言所持有对象。(java,c,c++等)
在弱数据类型语言中不存在函数重载(js,python,ruby等)

函数递归

函数自己调用自己。

实现递归的三要素
1.方法中出现自己调用自己
2.要有分支
3.要有结束条件

优点:能够把复杂的问题简单解决。
缺点:非常耗费内存容量,容易触发导致内存的溢出。

MATH函数

Math函数想必大家都常见,我给大家列举一些常用math函数

Math.ceil(): 天花板的意思,就是逢余进一
Math.floor() : 地板的意思,就是逢余舍一
Math.rint(): 四舍五入,返回double值。注意.5的时候会取偶数
Math.round(): 四舍五入,float时返回int值,double时返回long值
Math.sqrt() : 计算平方根
Math.cbrt() : 计算立方根
Math.pow(a, b) : 计算a的b次方
Math.max( , ) : 计算最大值
Math.min( , ) : 计算最小值
Math.abs() : 取绝对值

注意:所有进位的函数的入参都要保证是float或者double类型,否则进位函数将毫无意义。

random类

含义

Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值

用法

ranrom生成随机数

生成随机的【0,1)中的数

Random r=new Random();
double d1 = r.nextDouble();

Random类中还提供各种类型随机数的方法:
nextInt():返回一个随机整数(int)
nextInt(int n):返回大于等于0、小于n的随机整数(int)
nextLong():返回一个随机长整型值(long)
nextBoolean():返回一个随机布尔型值(boolean)
nextFloat():返回一个随机浮点型值(float)
nextDouble():返回一个随机双精度型值(double)
nextGaussian():概率密度为高斯分布的双精度值(double)
其中均可通过数学的换算取得

本篇到这里就结束了。望大佬指正,共勉。
几个问题留与自己
1.什么是函数
2.java如何定义的函数
3.函数调用及使用有参的注意事项
4.函数分类及原因
5.return的作用
6.简述函数重载、函数覆盖、和函数重写
7.递归的含义以及方法
8.递归的优缺点

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值