每日一语:时刻回想自己有什么,想要什么,自己为此做了什么?
前言:本文是引用狂神的Java基础,大家也可以去看看狂神的Java课哦,讲的超级不错嘿嘿嘿!!!!
目录
何谓方法
System 是系统类。
那么什么是方法呢?
候,最好保持方法的原子性,就是一个方法只完成1个功能,这样利于我们后期的扩展。
方法的优点
方法的定义
修饰符 返回值类型 方法名(参数类型 参数名){
... 方法体
... return 返回值;
}
修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需 的操作,但没有返回值。在这种情况下,returnValueType 是关键字void。
方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参 数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
形式参数:在方法被调用时用于接收外界输入的数据。
方法体:方法体包含具体的语句,定义该方法的功能。
【演示 加法】
public static int jia(int x ,int y){
return x+y;
方法的调用
当程序调用一个方法时,程序的控制权交给了被调用的方法。当被调用方法的返回语句执行或者到达方法体闭括号时候交还控制权给程序。
当方法返回一个值的时候,方法调用通常被当做一个值。例如:
int larger = max(30, 40);
Java语言中使用下述形式调用方法:对象名.方法名(实参列表)
如果方法返回值是void,方法调用一定是一条语句。
【演示:定义方法并且调用它】
方法的重载
解决方法是创建另一个有相同名字但参数不同的方法,如下面代码所示:
public static double max(double num1, double num2) {
if (num1 > num2) return num1;
else
return num2;
}
public static int max(int num1, int num2) {
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
如果你调用max方法时传递的是int型参数,则 int型参数的max方法就会被调用;
就是说一个类的两个方法拥有相同的名字,但是有不同的参数列表。
可变参数
typeName... parameterName
在方法声明中,在指定参数类型后加一个省略号(...) 。
递归
//5*4*3*2*1
public static void main(String[] args)
{ System.out.println(f(5));
}
public static int f(int n)
{ if (1 == n)
return 1;
else
return n*f(n-1);
}
总结和作业
import java.util.Scanner;
public class jisuan {
public static void main(String[] args) {
while (true) {
Scanner scanner = new Scanner(System.in);
System.out.println("1.加法");
System.out.println("2.减法");
System.out.println("3.乘法");
System.out.println("4.除法");
System.out.println("请输入两个数:");
int x = scanner.nextInt();
int y = scanner.nextInt();
System.out.println("请输入选择:");
int a = scanner.nextInt();
if (a == 0)break;
switch (a){
case 1:
System.out.println("结果为"+jia(x,y));
break;
case 2:
System.out.println("结果为"+jian(x,y));
break;
case 3:
System.out.println("结果为"+cheng(x,y));
break;
case 4:
System.out.println("结果为"+chu(x,y));
break;
}
}
}
public static int jia(int x ,int y){
return x+y;
}
public static int jian(int x ,int y){
return x-y;
}
public static int cheng(int x ,int y){
return x*y;
}
public static int chu(int x ,int y){
return x/y;
}
}