版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、java方法的调用基础入门1方法/*方法格式:修饰符返回值类型方法名(参数类型参数名b参数类型参数名2.) 方法体语句;return返回值;方法:完成特定功能 的代码块。 注意:在很多语言里面有函数的定义,而在java中函数被称 为方法。详细解释:修饰符:目前就用public statico后面我们再详细的讲解英他的修饰符。返回值类型:就是功能结果的数据类 型。方法名:符合命名规则即可。方便我们的调用。参数: 实际参 数:就是实际参与运算的。形式参数;就是方法定义上的,用于接收实 际参数的。参数类型:就是参数的数据类型参数名:就是变量名方法 体语句:就是完成功能的代码。return:结束方法的
2、。返回值:就是功 能的结果,由return带给调用者。 要想写好一个方法,就必须明确两个作。*/a:返回值类型结果的数据类型b:参数列表你要传递几个参数,以及每个参数的数据类型需求:求两个数据之和的案例方法 的执行特点:不调用,不执行。 如何调用呢?(有明确返回值的调用)a:单独调用,一般來说没有意义,所以不推荐。b:输出调用,但是不够好。 因为我们可能需要针对结果进行进一步的操c:赋值调用,推荐方案。方式2:输出调用class function demo public static void main(string args) /system.out.println(sum(x,y); in
3、t x = 10; int y = 20; 方式 1:单独调用 /sum(x,y); /*/system.out.println(30); /方式 3:赋值调用int result = sum(x,y); /result 在这里可以进行操作 system.out.println(result); 需求:求两个数据z和的案例 两个明确: 返回值类型:int参数列表: 2 个,都是 int 类型。public static int sum(int a,int b) /如何实现呢?/int c = a + b; /return c; /c就是a+b,所以,我可以直接返回 a+b return a +
4、 b;2方法注意事项/*/class functiondemo2 public static void main(string args) public static intsum(int a)nt b) return a + b; /* 错误的 public static intsum(int a,int b) */ /sum(10,20); /int x = 10; /int y = 20; /错误 /sum(int xjnt y);return a + b;方法的注意事项:a:方法不调用不执行b:方法与方法是平级关系,不能嵌套定义c:方法定义的时候参数之间用逗号隔开d:方 法调用的时候不
5、用在传递数据类型e:如果方法有明确的返回值,一定要有 return带回一个值3输出形状/*class functiondemo3 /for循环嵌套输出public static void main(string args) 图形 for(int x=0; x<4; x+) system.out.println(""); 需求:我要在控制台输出一个6行7列的星形图形for(int x=0; x<6; x+) for(int y=0; y<7; y+) for(int y=0; y<5; y+) system.out.pr
6、intln();system.out.print(,*h);需求:在控制台输出如下的形状* * void类型返回值的方法调用:单独调用 输出调用(错误) 赋值调用(错误) /* system.out.pnnt(,*n); system.out.println();system.out.println(hh); 如果需耍继续改变,我们就应该考虑使用方法改进。单独调用 pringxing(3,4); system.out.println("");pringxing(6,7); system.out.printlnc1"); pringxing(8,9); 输出调用此处
7、不允许使用 '空'类型 /system.out.println(pringxing(3,4);赋值调用非法的表达式开始/void v = pringxing(3,4);写一个什么样 子的方法呢?写一个m行n列的代码 两个明确:返回值类型:这个时候没有明确的返回值,不写东西还不行,所以, 这里记住是void */ public static void pringxing(int m,int n) for(int x=0;x<m; x+) for(int y=0; y<n; y+) system.out.println();system.
8、outprint(”*”); 参数列表:int mjnt n4数的求和需求:我要求数的和 我们的需求不断的发生改变,我们就对应的提供了多个求和的方法。但是呢,他们的名字是不一样的。而我们又耍求 方法命名做到:见名知意。但是,很明显,现在没有做到。那么,肿么 办呢?针对这种情况:方法的功能相同,参数列表不同的情况,为了见名 知意,java允许它们起一样的名字。其实,这种情况有一个专业名词:方法重载。*/方法重载:在同一个类中,方法名相同,参数列表不同。与返回值类型无关。参数列表不同:a:参数个数不同b:参数类型不同class functiondemo4 public static void ma
9、in(string args) 需求 1:求两个数的和public static int sum(int ajnt b) 需求 2:求三数的和 /* public staticint suml(int aint b,int c) return a + b + c; system.out.println("int"); returna + b; /jvm会根据不同的参数去调用不同的功能system.out.println(sum(10,20); system.out.println(sum(10,20,30); system.out.println(sum(10,20,30,
10、40); system.out.println(sum(10.5f,20f); */ public static int sum(int ajnt b,int c) 需求 3:求四个数的和 /* public static int sum2(int aint bint c,int d) */ public static int sum(inta,int bint c,int d) public static float sum(float a,float b) system.out.println("float"); return a + b; return a + b +
11、 c + d; return a + b + c + d; return a + b + c;5输出比较大的数/*import java.util.seanner;class function test public static void main(string args) 键盘录入两个数据,返回两个数 中的较大值 /*/创建键盘录入对象scanner sc = newscanner(system.in); system.out.println("请输入第一个数据:”);int a = sc.nextlnt(); system.out.println("请输入第二个数据:
12、”);int b = sc.nextlnt(); int result = getmax(a,b); system.out.pnntln(h较大值是:"+result);需求:两 个数中的较大值 两个明确: 返回值类型:int参数列表:int a,int b public static int getmaxfint ajnt b) /if 语句 /* if(a > b)/system.out.println(a); return a; else /system.out.println(b); returnb; */ 用三元改进 /int c = (a >
13、b)? a: b); /return c; 由于 c 就 是后面的式子 return (a>b)? a : b);6比较两个数是否相等/*/import java.util.seanner;class functiontest2 public static void main(string args) 创建键盘录入对象scanner sc = new seanner(system.in); system.out.println("请输入第个数 据int a = sc.nextlnt();键盘录入两个数据,比较两个数是否相等 分析:比较两个数是否相等结果是一个boolea
14、n类型。 /*/ system.out.println("请输入第二个数据int b =sc.nextlnt(); boolean flag = compare(a,b); system.out.println(flag); 需求: 比 较两个数是否相等两个明确: 返回值类型:boolean参数列表:int a,int b public static boolean compare(int aint b) /讦 语句的格式2 实现 /* if(a = b) return true; else */ 三元改进 /boolean flag =(a=b)? true: false); /r
15、eturn flag;return false; 继续改进 /return (a二二b)? true: false); 最终版 return a=b;7三个数中的最大值/*/import java.util.scanner;class functiontest3 public static void main(string args) 创建键盘录入对象 seanner sc = new seanner(system.in); system.out.println("请输入第个 数据:”);int a = sc.nextlnt(); system.out.printing请输入第二个数
16、据:”); int b =sc.nextlnt(); system.out.println("请输入第三个数据:”);int c = sc.nextlnt(); int max = getmax(azbzc);键盘录入三个数据,返回三个数中的最大值 /*/system.out.println("三个数据中的最大值是:"+max);需求;返回三个数中的最大值两个明确: 返回值类型:int参数列表: int ajnt bzint c public static int getmax(int a,int bzint c)a; else return c; else */
17、 if(b > c) return b; else return c; 用三元改 /* 讦(a > b) return (a>c? a:c); else */ 继续改进 /return (a>b)? (a>c? a: c): (b>c? b: c); 不建议,写代码一定要注意阅读性强int temp = (a>b)? a: b); int max = (temp>c)? temp: c); return max; return (b>c? b: c);8输出星型图案/*
18、/import java.util.seanner;class functiontest4 public static void main(string args) 创建键盘录入对象 scannersc = new scanner(system.in);键盘录入行数和列数,输出对应的星形 /*/system.out.println("请输入行数:n); int m =sc.nextlnt(); system.out.printing请输入列数'); int n = sc.nextlnt(); /void 类型的方法调用pnngxing(m?n);输出星形 两个明确:返回值类型
19、:void 参数列表:in t mj nt n public static void pri ngxing(in t mj nt n) for(int x=0; x<m; x+) for(int y=0; y<n; y+) system.out.println(); system.out.printc1*");9输出乘法表/*/键盘录入一个数据n(l<=n<=9),输出对应的nn乘法表import java.util.seanner;class functiontest5 /*/ publicpublic static void
20、 main(string args) static void printnn(int n) for(int x=l; x<=n; x+) for(int y=l; y<=x; y+) system.out.println();system.out.print(y+”*"+x+”二"+y*x+”t”);需求:输出对应的 nn 乘法表两个 明确: 返回值类型:void参数列表:intn 创建对象scanner sc = new scanner(system.in); system.out.println("请输入 n 的值:(19)"); int n = sc.nextlnt(); 调用 printnn(n); 10比较两个数据是否相等/*/class functiontest6 public static void main(st
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年上饶幼儿师范高等专科学校单招综合素质笔试模拟试题附答案详解
- 2026年德阳城市轨道交通职业学院高职单招职业适应性考试备考题库有答案解析
- 2026年安徽卫生健康职业学院单招综合素质考试备考题库带答案解析
- 2026年河北能源职业技术学院高职单招职业适应性测试模拟试题有答案解析
- 2026年合肥职业技术学院单招职业技能考试模拟试题带答案解析
- 投资合作框架协议2025年合作条款
- 体检隐私保护合同(2025年协议范本)合同三篇
- 2026年河南地矿职业学院单招综合素质笔试模拟试题带答案解析
- 2026年保定幼儿师范高等专科学校单招综合素质笔试参考题库带答案解析
- 2026年鄂尔多斯生态环境职业学院高职单招职业适应性考试备考试题带答案解析
- 医疗机构中药饮片自查与质量控制
- 2024-2025学年广东省广州市越秀区九年级(上)期末化学试题及答案
- 光伏CAD基础知识培训课件
- 国家民用航空安全保卫质量控制方案
- 基于杜邦分析法的企业盈利能力分析-以格力电器为例
- WPF在医学影像三维显示中的应用-洞察及研究
- 汉服设计培训课件
- 《阿甘正传》读书会
- 2026届浙江省杭州市西湖区学军中学(紫金港校区)高三上学期9月月考英语试题
- 电厂氨使用安全培训课件
- 2025年供销社资产管理员招聘面试预测题及答题技巧
评论
0/150
提交评论