java基础笔记(3)----函数
- 前言
引入函数前,所有的代码都写在main主函数中,代码过多,代码冗余,可读性差。引入函数后,函数是实现某一特定功能的代码块。一个类中可以定义多个函数,每个函数和main主函数都是并列关系。
- 函数:
- 语法:public static 返回值类型 函数名(形参列表){ //函数的声明部分。
//函数的实现部分
}
- 函数的三要素-- >返回值类型,函数名,形参列表
- 返回值类型:
- void -->代表该函数执行完即可,没有返回值。
- 八种基本类型,引用类型。 -- >代表该函数必须有返回值。函数中必须要有 return xxx 语句,且xxx类型必须和返回值类型一致。
- 函数名:-- >驼峰命名法:首字母全小写,其后单词首字母大写。
- 形参列表:-->定义函数时,参数的类型、数量和顺序
- 函数的调用:-- >在函数以内进行函数的调用。
- 实参列表:在函数调用时,用于给形参具体传值。
- 返回值:返回值类型如果不是void,可以后去返回值并进行使用。
- 过程:
- 调用函数时跳转到函数定义的位置;
- 实参给形参依次赋值
- 执行函数体语句
- 遇到return或者程序结束,带着返回值返回到函数调用的位置。
代码如下:
|
package com.lvsling.test; public public int s1=TestFunction(2, 3); System.out.println(s1); int s2=TestFunction2(2, 3); System.out.println(s2); } public int i=a+b; return i; } public int i=a*b; return i; } } |
- 自我总结
以上是函数的优点以及函数的具体使用方法,注意函数的三要素即可,返回值类型,函数名,形参列表。
拓展与提升:
- 函数的形参变量名相当于函数的局部变量,只能在函数的内部使用。
- main函数是静态函数,静态函数只能直接调用静态函数,可以非直接调动动态函数
- 函数的递归 -- >函数内部有调用了自身函数,注意要避免无穷递归调用。
代码如下:-->函数的递归调用。
|
package com.lvsling.test; import java.util.Scanner; /* * 计算一个数的阶乘 */ public public System.out.println("输入一个整数:"); Scanner scan = new Scanner(System.in); int x = scan.nextInt(); int result = Recursion(x); System.out.println(result); } //递归函数 public if(x<=0){ return 1; }else{ return x*Recursion(x-1); } } } |
java基础笔记(3)----函数的更多相关文章
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错
原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...
- JAVA基础语法:函数(方法)、类和对象(转载)
4.JAVA基础语法:函数(方法).类和对象 函数 在java中函数也称为方法,是一段具备某种功能的可重用代码块. 一个函数包括这几部分: 函数头 函数头包括函数访问修饰符,函数返回值类型, 函数名, ...
- 黑马程序员----java基础笔记中(毕向东)
<p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...
- 黑马程序员----java基础笔记上(毕向东)
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...
- Java基础笔记05-06-07-08
五.今日内容介绍 1.方法基础知识 2.方法高级内容 3.方法案例 01方法的概述 * A: 为什么要有方法 * 提高代码的复用性 * B: 什么是方法 * 完成特定功能的代码块. 02方法的定义格式 ...
- Java基础笔记1
java (开源,跨操作系统)j2ee jre java基础 javaoop java高级 JDK(JAVA developer Kitool): java开发工具 (开发人员使用) JRE(java ...
- Java基础笔记(一)——JDK、JRE、JVM
JDK.JRE和JVM三者的关系 Java程序执行过程 JVM(java virtual machine) 注:由于各种操作系统(windows.linux等)支持的指令集(二进制可执行代码)不同,程 ...
- Java基础笔记-抽象,继承,多态
抽象类: abstract修饰 抽象方法必须定义在抽象类中,抽象类不能创建对象. 在抽象方法中可以不定义抽象方法,作用是:让该类不能建立对象. 特点是: 1.定义在抽象类中 2.方法和类都用abstr ...
随机推荐
- TI AM335X处理器介绍
AM335X是美国TI(德州仪器)公司基于 ARM Cortex-A8内核的AM335X微处理器,在图像.图形处理.外设方面进行了增强,并全面支持诸如 EtherCAT 和 PROFIBUS等工业接口 ...
- Invalid property 'driver_class' of bean class
1.错误描述 INFO:2015-05-01 13:06:07[localhost-startStop-1] - Initializing c3p0-0.9.2.1 [built 20-March-2 ...
- 百度地图JavaScript API经纬度查询-MAP
百度地图JavaScript API经纬度查询-MAP-ABCDEFGHIJKMHNOPQRSTUVWXYZ: 搜索:<input type="text" size=&quo ...
- Flex动态获取方法报错
1.错误描述 2.错误原因 由于Flex文件修改后,需要将其编译成swf文件,刚修改的方法没有编译,再加上历史缓存的原因,导致报错 3.解决办法 将Flex项目重新clean一下,并将MyEclips ...
- Django学习-6-路由系统
1.url(r'^index/', views.index), 函数处理 url(r'^home/', views.Home.as_view()), 类方法处理 ...
- CF370 D Memory and Scores
dp题 并运用了前缀和 我看题目提示中有fft 我想了下感觉复杂度不过关还是未解 #include<bits/stdc++.h> using namespace std; typedef ...
- hdu5860 Death Sequence
这题一开始写的线段数是从中间开始查找 k个 导致是nlogn 每次查找应该都是从头找每次找的个数不同就好了 还有一种递推的写法我放下面了 #include<bits/stdc++.h> u ...
- mybatis快速入门(六)
前面mybatis的入门程序基本上都写完了,就看大家的灵活运用了,今天来吧前面的整合一下封装一个公共的BaseDao 只需要把前面的改造下然后创建一个BaseDao的接口,其它的继承BaseDao接口 ...
- [Luogu2617]Dynamic Ranking
题面戳这 类似算法总结 1.静态整体Kth 滑稽吧...sort一遍就好了. 时间复杂度\(O(nlogn)\) 空间复杂度\(O(n)\) 2.动态整体Kth 离散化后开一棵权值线段树,每个位置的值 ...
- 【NOI2008】假面舞会(图论,搜索)
题面 Description 一年一度的假面舞会又开始了,栋栋也兴致勃勃的参加了今年的舞会.今年的面具都是主办方特别定制的.每个参加舞会的人都可以在入场时选择一个自己喜欢的面 具.每个面具都有一个编号 ...