九天学会Java,第五天,函数定义函数调用
- 变量和数据类型,赋值和输出
- 算术运算
- 选择结构
- 循环结构
- 函数定义,函数调用
- 变量作用域
- 栈,程序运行的基石
- 面向对象
- 异常处理
- 语言提供的公用包
什么是函数,为什么有函数,大家可能有这样的疑问。
举一个例子来回答大家的疑问:比如一个财务软件,里面需要反反复复地把很多账单加起来,过去一周的,过去一月的一年的。为了提高代码的复用性,我们把账单相加这个功能封装成一段独立的小程序。当下次再面临账单相加时,就调用这段小程序。那么这种封装的形式就叫做“函数”
函数的格式
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)
{
执行语句;
return 返回值;//有可能有return,有可能无return
}
函数的定义
我们参考函数的格式定义几个函数
因为我们要在public static void main(String[] args) 中调用函数,所以函数也要定义成static。
static 修饰的方法我们称之为静态方法,属于类级别,不是对象级别。他在类加载的时候就存在了。static 方法只能调用 static 方法
/**
* 本节讲函数的定义和调用
* 同时也复习前面学习的内容
*/
public class FifthLesson {
/**
* 定义一个justPrintMax函数
* void指没有返回值,该函数不会返回任何值
* @param a 参数a
* @param b 参数b
* @param c 参数c
*/
public static void justPrintMax(int a, int b, int c) {
/**
* 当调用者调用该函数
* 参数a,b,c会分别被传值
* 然后进入函数体
*/
/**
* 定义一个int,变量名是max
* 把a的值赋值给max
*/
int max = a;
/**
* 如果b 大于 max,则
* 执行 max = b
* 此时 max是a,b两者的最大值
*/
if (b > max) {
max = b;
}
/**
* 如果c 大于 max,则
* 执行 max = c
* 此时 max是a,b,c三者的最大值
*/
if (c > max) {
max = c;
}
/**
* 输出max值,没有返回
*/
System.out.println(max);
}
/**
* 定义一个getMax函数
* 此函数有返回值
* @param a 参数a
* @param b 参数b
* @param c 参数c
* @return 返回三者的最大值
*/
public static int getMax(int a, int b, int c) {
/**
* 新建一个int,变量名是max
* 把 a 赋值 给 max
*/
int max = a;
/**
* 如果 b 大于 max
* 则执行 max = b
*/
if (b > max) {
max = b;
}
/**
* 如果 c 大于 max
* 则执行 max = c
*/
if (c > max) {
max = c;
}
/**
* 返回max
*/
return max;
}
public static void main(String[] args) {
/**
* 调用justPrintMax函数
* 把3传给a,5传给b,2传给c
*/
justPrintMax(3, 5, 2);
/**
* 调用getMax函数
* 把3传给a,5传给b,2传给c
* 新建变量max
* 取函数返回值,传给max
*/
int max = getMax(3, 5, 2);
System.out.println(max);
}
}
为什么要用函数
- 使程序变得更简短而清晰。
- 有利于程序维护。
- 可以提高程序开发的效率。
- 提高了代码的重用性。
总结
- 函数如果声明成void则没有返回值
- 使用函数之前,要先定义函数
- 使用函数要按函数的定义传递参数
作业
- 写一个函数,输入是String name, 比如输入是“小楠”,输出是 "我爱小楠"
- 写一个函数,输入语文,数学,英语三门课的成绩,输出三门课的平均分
完整章节
九天学会Java,第五天,函数定义函数调用的更多相关文章
- 九天学会Java,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
- 九天学会Java,第二天,算术运算
算术运算 先回顾上次我们提到的编程特性 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 第一天我们讲 ...
- 九天学会Java,第三天,选择结构
选择结构 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 上一节介绍了Java的算术运算,如加减乘除 ...
- 九天学会Java,第四天,循环结构
变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 这次我们讲Java的循环结构.循环结构在编程中广泛使 ...
- JavaScript要点 (五) 函数定义
JavaScript 使用关键字 function 定义函数. 函数可以通过声明定义,也可以是一个表达式. 函数声明分号是用来分隔可执行JavaScript语句. 由于函数声明不是一个可执行语句,所以 ...
- java 第五章 方法定义及调用
1.方法的定义 什么是方法 方法是完成某个功能的一组语句,通常将常用的功能写成一个方法 方法的定义 [访问控制符] [修饰符] 返回值类型 方法名( (参数类型 形式参数, ,参数类型 形式参数, , ...
- 【Python】Java程序员学习Python(五)— 函数的定义和使用
不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...
- 10天学会phpWeChat——第五天:实现新闻投稿功能
在前几讲里,我们逐渐实现了自己小模块的新闻列表展示.新闻详情展示功能,现在您已经初步有能力开发一个phpWeChat小模块了,本文将在已开发的hello world模块基础上,增加一个新的功能--新闻 ...
- Java之--Java语言基础组成—函数
Java语言基础组成-函数 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的函数,函数 ...
随机推荐
- 关于Class.forName(className).newInstance()介绍
Class.forName(xxx.xx.xx) 返回的是一个类 首先你要明白在java里面任何class都要装载在虚拟机上才能运行.这句话就是装载类用的(和new 不一样,要分清楚). 至于什么时候 ...
- tomcat的常用配置方法
1.tomcat配置某个站点的欢迎页面的方法 2.tomcat配置虚拟目录的方法 3.tomcat配置虚拟主机的方法
- 再起航,我的学习笔记之JavaScript设计模式01
我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 在通 ...
- 【http】post和get请求的区别
两种常用的HTTP请求方式:post和get get:从指定的资源进行请求.数据长度有限制(2048个字符)可被缓存.可被保留在浏览器历史记录中,安全性较差.发送敏感信息如密码时不适用. po ...
- 【整理】01. Fiddler 杂记
抓手机包步骤: Tools -- Fiddler Options -- Connections (默认)Fiddler listens on port:8888 (勾选)Allow remote co ...
- Mybatis框架分析
摘要 本篇文章只是个人阅读mybatis源码总结的经验或者个人理解mybatis的基本轮廓,作为抛砖引玉的功能,希望对你有帮助,如果需要深入了解细节还需亲自去阅读源码. mybatis基本架构 myb ...
- github、gitlab 管理多个ssh key
第一种方法: 通过 git 命令行来操作 1.cd ~/.ssh 2.ls 注:如果.ssh 目录下有文件存在那么表示之前添加过 3. ssh-keygen -t rsa -C "xxxxx ...
- vc操作电脑之常用命令
1.重启计算机: ExitWindowsEx(EWX_REBOOT,0); 2.关机: ExitWindowsEx(EWX_SHUTDOWN,0); 3.注销: ExitWindowsEx(EWX_L ...
- 数据库db2错误代码大全
sqlcode sqlstate 说明000 00000 SQL语句成功完成01xxx SQL语句成功完成,但是有警告+012 01545 未限定的列名被解释为一个有相互关系的引用+098 01568 ...
- Luogu P3371 【模板】单源最短路径
题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入输出格式 输入格式: 第一行包含三个整数N.M.S,分别表示点的个数.有向边的个数.出发点的编号. 接下来M行每行包含三 ...