在Java中, 方法就是使用{}代码块将一些业务代码包裹起来,并为之起名字,称为"方法名" 方法名,需要见名知意,满足"标识符的规则"。
一,有具体返回值类型的方法
格式,固定写法
定义方法
权限修饰符 static 返回值类型 方法名(参数类型1 变量名1 ,参数类型2 变量名2.....){
完成你的代码的业务逻辑:根据需求来完成操作
return 结果;
}
详细解释:
权限修饰符:现在固定使用public :访问权限足够大的
现在写方法:必须带上static 前面的写法:public static
返回值类型:就是数据类型----研究的就是基本数据类型
方法名: 给{}代码块起名字, 见名知意,遵循"标识符规则",小驼峰命名法
add(),求和
sum() ,求和
参数列表:
参数类型 ----:数据类型,现在使用的就是基本数据类型
变量名 ---- :给当前形式参数起名字,见名知意,"小驼峰命名法"
return 结果: 根据你的业务方法, 返回值类型时什么类型,给你返回具体的结果
调用方法:
1)输出调用:不推荐
2)赋值调用:推荐
3)单独调用:用不了
定义一个求两个数据之和的功能(方法)
心中必须有两个明确
1)明确返回值类型---数据类型:基本数据类型 int
2)明确参数类型以及参数个数 2个参数,分别都是int
定义有具体返回值类型的方法注意事项:
1)方法和方法是平级关系,不能嵌套,只能在里面去调用
2)定义方法的时候需要两个明确
a)明确返回值类型
b)明确参数类型以及参数个数(形式参数类型和几个参数)
3)在定义方法的时候,形式参数必须携带数据类型,因为Java 是一个强类型语言!
4)在实际参数 main中,调用方法的时候,实际参数不需要携带数据类型,因为 已经键盘录入,已经定义过了
5)实际参数和形参参数,传参时,数据类型需要一一对应
import java.util.Scanner ;
class Test1{
public static void main(String[] args){
Scanner sc = new Scanner(System.in) ;
System.out.println("请您输入第一个数据:") ;
int a = sc.nextInt() ;
System.out.println("请您输入第二个数据:") ;
int b = sc.nextInt() ;
System.out.println("请您输入第三个数据:") ;
int c = sc.nextInt() ;
int max = getMax(a,b,c) ;
System.out.println("三个数据中最大值是:"+max) ;
}
public static int getMax(int a,int b,int c){
int temp = (a>b) ? a: b ;
int max = (temp >c)? temp :c ;
return max ;
}
}
二.没有具体返回值类型的方法的定义格式
像下面这个需求:
需要将直接输出在控制台的,并没有具体的返回值类型结果,定义方法的时候
还必须遵循java的格式,这个时候Java语法规定,
使用void关键字填充这个格式
权限修饰符 静态修饰符 void 方法名(形式参数列表){
//里面业务逻辑 要么输出/类似于数组中(数据进行互换:排序)
}
定义格式:
public static void 方法名(形式参数列表){
//完成的业务逻辑,输出等等操作,
但是不能有return (必须和有具体返回值类型的方法一块使用)
}
没有具体返回值类型的方法调用
输出调用 :用不了
赋值调用 :用不了
单独调用:推荐
两个明确
1)明确返回值类型
没有具体返回这里类型---使用void (关键字)
2)明确参数类型以及参数个数 没有参数
import java.util.Scanner;
class ChengFa{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数");
int n=sc.nextInt();
printCheng(n);
}
public static void printCheng(int n){
for(int x=1;x<=n;x++){
for(int y=1;y<=x;y++){
int sum=x*y;
System.out.print(x+"*"+y+"="+sum+"\t");
}System.out.println();
}
}
}