方法使用
本人是Java小白,只是用一些字自己能理解方法记录,可能不太准确
- 就是一堆函数的简化版
- 可以将多次使用的代码反复调用
- 格式
修饰符 返回类型 方法名(参数类型 参数名){
...
F方法体
...
return 返回值;
}
- 实例
public static void main(String[] args) {
//实际参数:实际调用传递给他的参数
int sum = add(1,3);
int max = Dome02.max(10, 661);
System.out.println(max);
System.out.println(sum);
}
//加法
//形式参数:用来定义的参数
public static int add(int a,int b){
return a+b;
}
方法的重载
- 在同一个类里
- 方法名相同
- 但方法中的参数是不同的,返回值也可以不同
- 只有返回值不同的,不算方法的重载
实例
public static void main(String[] args) {
double max = max(8.0,1.0);
System.out.println(max);
}
//比大小(重载方法)
public static double max(double a,double b){
double result=0;
if (a>b){
result=a;
}else if (a<b){
result= b;
}else {
System.out.println(a+"=="+b);
return 0;
}
return result;//终止方法
}
//比大小(原方法)
public static int max(int a,int b){
int result=0;
if (a>b){
result=a;
}else if (a<b){
result= b;
}else {
System.out.println(a+"=="+b);
}
return result;//终止方法
}
本人是Java小白,只是用一些字自己能理解方法记录,可能不太准确
-
- 值传递
- Java的传递方式
- 通俗点就是你引用方法时所传递的值
- 与原来相比不是同一个内容,可以理解为转存了原来的值
-
- 引用传递
- 通俗点就是你所创建的对象,用一个值来接收了他的数据
- 这个值就是引用
- 引用和原来的属于同一个内容,来自同一个地址
命令行传参(了解一下就行)
-
在运行时给main里传递参数
-
public static void main(String[] args) { for (int i=0;i<args.length;i++){ System.out.println("args["+i +"]"+args[i]);//输出所有传递内容 } }
-
右击当前类
-
Open in>>Explorer
-
进入文件,在路径前输入 cmd (这里后面有个空格)
-
进入cmd后,编译 javac 类名.Java
-
返回包名至com路径,输入cd… 回车 (三次)
-
java 包名+类名 输入的值,回车
-
就会看到输出了传递的内容
可变参数
-
在不确定要传入多少个变量时使用
-
可以说是重载的升级版
-
只能在最后一个参数上使用
实例
public void test(int x,int...i){ if (i.length==0){ System.out.println("没有任何内容"); }else { for (int x = 0; x < i.length; x++) { System.out.println(i[x]); } }
递归
-
A调用B(eg:main方法调用其他方法)
-
A调用A
-
比较占内存,避免大量使用(可以运行一些小的算法)
-
实例·(阶乘算法)
public static void main(String[] args) { //递归 System.out.println(f(5));//120 } //5!= 5*4*3*2*1 阶乘 public static int f(int n){ if (n==1){ return 1; }else { return n*f(n-1); } }