标签:Java int 第三天 System 小农 static 返回值 方法 public
Day03
第六章 集成开发环境IDEA
6.1 IDEA的安装
IDEA安装包下载Other Versions - IntelliJ IDEA
IDEA安装教程
IDEA常用快捷键
快捷键 | 功能 |
---|---|
Alt+Enter | 导入包,自动修正代码 |
Ctrl+Y | 删除光标所在行 |
Ctrl+D | 复制光标所在行的内容,插入光标位置下面 |
Ctrl+Alt+L | 格式化代码 |
Ctrl+/ | 单行注释,再按取消注释 |
Ctrl+Shift+/ | 选中代码注释,多行注释,再按取消注释 |
Alt+Ins | 自动生成代码,toString,get,set等方法 |
Alt+Shift+上下箭头 | 移动当前代码行 |
第七章 方法
7.1 复习方法基础入门知识
/*
* 复习一下此前学习的方法基础入门知识
* 定义格式:
* public static void 方法名称(){
* 方法体
* }
*
* 调用格式
* 方法名称();
*
* 注意事项:
*1.方法定义的先后顺序无所谓。
*2.方法定义必领是挨着的。不能在一个方法的内部定交另外一个方法。
*3.方法定义之后。自己不会执行的:如具希望执行,一定要进行方法的调用。
* */
public class Demo01Method {
public static void main(String[] args) {
printMethod();
}
public static void printMethod(){
for (int j = 0; j < 5; j++) {
for (int i = 0; i < 20; i ++){
System.out.print("*");
}
System.out.println();
}
}
}
7.2 方法定义
/*
* 方法其实就是若干语句的功能集合
*
* 方法好比是一个工厂
* 蒙牛工厂 原料:奶牛、饲料、水
* 产出物:奶制品
*
* 参数(原料):就是进入方法的数据
* 返回值(产出物):就是从方法中出来的数据
*
* 定义方法的完整格式:
* 修饰符 返回值类型 方法名称(参数类型 参数名称,……){
* 方法体
* return 返回值;
* }
*
* 修饰符:现阶段的固定写法,public static
* 返回值类型:也就是方法最终产生的数据结果是什么类型
* 方法名称:方法的名字,规则和变量一样,小驼峰
* 参数类型:进入方法的数据是什么类型
* 参数名称:进入方法的数据对应的变量名称
* PS:参数如果有多个,使用逗号进行分隔
* 方法体:方法需要做的事情,若干行代码
* return:两个作用,第一停止当前方法,
* 第二将后面的返回值还给调用处返回值:也就是方法执行后最终产生的数据结果
* 注意:return后面的“返回值”,必须和方法名称前面的“返回值类型”,保持对应。
*
* 定义一个两个int数字相加的方法,三要素
* 返回值类型:int
* 方法名称:sum
* 参数列表:int a, int b
*
* 方法的三种调用格式:
* 1.单独调用:方法名称(参数);
* 2.打印调用:System.out.println(方法名称(参数));
* 3.赋值调用:数据类型 变量名称 = 方法名称(参数);
*
* 注意:此前学习的方法,返回值类型固定写为void,这种方法只能够单调调用,
不能进行打印调用或者赋值调用。
* */
public class Demo02MethodDefine {
public static void main(String[] args) {
System.out.println("===========");
System.out.println(sum( 10, 20));//30
int number = sum(15, 25);
System.out.println("变量的值:" + number);
}
public static int sum(int a, int b){
System.out.println("方法执行啊!");
int result = a + b;
return result;
}
}
7.3 有参数和无参数
/*
* 有参数:小括号当中有内容,当一个方法需要一些数据条件,才能完成任务的时候,就是有参数。
* 例如两个数字相加,必须知道两个数字是各自多少,才能相加。
*
* 无参数:小括号当中留空,一个方法不需要任何数据条件,自己就能独立完成任务,就是无参数。
* 例如定义一个方法,打印固定10次HelloWorld。
* */
public class Demo03MethodParam {
public static void main(String[] args) {
method1(10, 20);
method2();
}
//两个数字相乘,做乘法,必须知道两个数字各自是多少,否则无法进行计算
//有参数
public static void method1(int a, int b){
int result = a * b;
System.out.println("结果是:" + result);
}
//例如打印输出固定10次文本字符串
public static void method2(){
for (int i = 0; i < 10; i++) {
System.out.println("Hello,World" + i);
}
}
}
7.4 有返回值和无返回值
/*
* 题目要求:定义一个方法,用来求出两个数字之和,(你帮我算,算完之后把结果告诉我。)
* 题目变形:定义一个方法,用来打印两个数字之和,(你来计算,算完之后你自己负责显式结果,不用告诉我。)
*
* 注意事项:
* 对于有返回值的方法,可以使用单独调用、打印调用或者赋值调用
* 但是对于无返回值得方法,只能使用单独调用,不能使用打印调用或者赋值调用。
* */
public class Demo04MethodRetum {
public static void main(String[] args) {
int num = getSum(10, 20);
System.out.println("返回值是:" + num);
System.out.println("=================");
printSum(100, 200);
}
//我是一个方法,我负责两个数字相加
//我有返回值int,谁调用我,我就把计算结果告诉谁
public static int getSum(int a, int b){
int result = a + b;
return result;
}
//我是一个方法,我负责两个数字相加。
//我没有返回值,不会把结果告诉任何人,而是我自己进行打印输出。
public static void printSum(int a, int b){
int result = a + b;
System.out.println("结果是:" + result);
}
}
7.5 方法练习
7.5.1 练习一
/*
* 题目要求:
* 定义一个方法,用来判断两个数字是否相同。
* */
public class Demo01MethodSame {
public static void main(String[] args) {
System.out.println(isSame(1, 1));
System.out.println(isSame(1, 0));
}
/*
* 三要素:
* 返回值类型:boolean
* 方法名称:isSame
* 参数列表:int a, int b
* */
public static boolean isSame(int a, int b){
boolean same;
if(a == b){
same = true;
}else{
same = false;
}
//same = a == b ? true : false;
//same = a == b;
return same;
}
}
7.5.2 练习二
/*
* 题目要求:
* 定义一个方法,用来求出1-100之间所有数字的和值
* */
public class Demo02MethodSum {
public static void main(String[] args) {
System.out.println(getSum());
}
/*
* 三要素:
* 返回值:有返回值,计算结果是一个int数字
* 方法名称:getSum
* 参数列表:数据范围已经确定,是固定的,所以不需要告诉我任何条件,不需要参数
* */
public static int getSum(){
int sum = 0;
for (int i = 0; i < 101; i++) {
sum += i;
}
return sum;
}
}
7.5.3 练习三
/*
* 题目要求:
* 定义一个方法,用来打印指定次数的HelloWorld。
* */
public class Demo03MethodPrint {
public static void main(String[] args) {
printCount(10);
}
/*
* 三要素
* 返回值类型:只是进行一大堆打印操作而已,没有计算,也没有结果要告诉调用处
* 方法名称:printCount
* 参数列表:到底要打印多少次?必须告诉我,否则我不知道多少次,没法打印,次数,int
* */
public static void printCount(int num){
for (int i = 0; i < num; i++) {
System.out.println("HelloWorld" + (i + 1));
}
}
}
7.6 使用方法注意事项
- 使用方法的时候,注意事项:
- 1.方法应该定义在类当中,但是不能在方法当中再定义方法。不能嵌套。
- 2.方法定义的前后顺序无所谓。
- 3.方法定义之后不会执行,如果希望执行,一定要调用:单独调用、打印调用、赋值调用。
- 4.如果方法有返回值,那么必须写上“return返回值;”,不能没有。
- 5.return后面的返回值数据,必须和方法的返回值类型,对应起来。
- 6.对于一个void没有返回值的方法,不能写return后面的返回值,只能写return自己,或者return可以省略不写。
- return后面没有值,只表示结束方法的执行
- 7.一个方法当中可以有多个return语句,但是必须保证同时只有一个会被执行到。
7.7 方法重载
/*
* 对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法名称,太麻烦。
* 方法的重载(Overload),多个方法的名称一样,但是参数列表不一样。
* 好处,只要记住唯一一个方法名称,就可以事项类似的多个功能。
*
* 方法重载与下列因素相关:
* 1.参数个数不同
* 2.参数类型不同
* 3.参数的多类型顺序不同
*
* 方法重载与下列因素无关:
* 1.与参数的名称无关
* 2.与方法的返回值类型无关
* */
public class Demo01MethodOverload {
public static void main(String[] args){
System.out.println(sum(1, 2));
System.out.println(sum(1, 2, 3));
System.out.println(sum(1, 2, 3, 4));
}
public static int sum(int a, int b){
return a + b;
}
public static int sum(int a, int b, int c){
return a + b + c;
}
public static int sum(int a, int b, int c, int d){
return a + b + c + d;
}
}
7.7.1 重载练习一
/*
*题目要求:
*比较两个数据是否相等。
*参数类型分别为两个byte类型,两个short类型,两个int类型,两个Long类型,并在main方法中进行测试。
*/
public class Demo02MethodOverloadSame {
public static void main(String[] args) {
byte a = 10;
byte b = 20;
System.out.println(isSame(a, b));
System.out.println(isSame((short)a, (short)b));
System.out.println(isSame(10, 20));
System.out.println(isSame(10L, 20L));
}
public static boolean isSame(byte a, byte b){
boolean same;
if(a == b){
same = true;
}else{
same = false;
}
return same;
}
public static boolean isSame(short a, short b){
boolean same = a == b ? true : false;
return same;
}
public static boolean isSame(int a, int b){
boolean same = a == b;
return same;
}
public static boolean isSame(Long a, Long b){
boolean same = a == b;
return same;
}
}
标签:Java,int,第三天,System,小农,static,返回值,方法,public 来源: https://blog.csdn.net/qq_45265623/article/details/122354293
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。