1. Java的方法含义
- 我个人理解Java的方法相当于C语言中的函数
2.定义方法
//定义一个简单的加法
public class Demo01 {
//main方法 public 与 static都是修饰符
public static void main(String[] args) {
// int sum = add(2, 3);
// System.out.println(sum);
test();
}
//自己写一个方法,就相当于自己写一个函数 public 与 static都是修饰符
public static int add(int a, int b)
{
return a+b;
}
}
3.方法的重载
//方法的重载
public class Demo03 {
public static void main(String[] args) {
int added = add(10, 30);
System.out.println(added);
//下面这两种都是方法的重构后的使用
// double added = add(10.0, 10.1);
// System.out.println(added);
// double added = add(10.1, 10.2, 10.3);
// System.out.println(added);
}
//构建方法
public static int add(int a,int b)
{
return a+b;
}
//方法的重构:方法名称相同都是add,但是形参列表不同,或者形参的个数不同
public static double add(double a, double b){
return a+b;
}
//方法的重构:方法名称相同都是add,但是形参列表不同,或者形参的个数不同
public static double add(double a,double b,double c){
return a+b+c;
}
}
4.命令行传参(拓展,了解即可)
- 听不懂,所以没认真学
//听不懂,等以后听得懂再来补充
public class Demo04 {
//main方法
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {//args.length数组的长度
System.out.println("arg["+i+"]:"+args[i]);
}
}
}
5.可变参数
- 可变参数相当于让这个数变成了数组
public class Demo05 {
public static void main(String[] args) {
Demo05 demo05 = new Demo05();
demo05.method(1,2,3,4,5,6,778);
}
//重载了很多个,重载的多个可以用可变参数代替
// public void method(){};
// public void method(int i){};
// public void method(int i,int j){};
// public void method(int i,double j){};
//使用可变参数来代替那么多的重载,相当于数组
public void method(int... i){
System.out.println(i[0]);//输出值
System.out.println(i);//输出地址
}
// public void method(int i,int... j){//可变参数必须放最后
// System.out.println(i);//输出i的值
// System.out.println(j[0]);//输出数组j[0]
//
// }
}
- 可变参数的使用
//用可变参数来打印最大值
public class Demo06 {
public static void main(String[] args) {
printMax(2,3,4,5,6,100,1000);//可变参数的使用
printMax(new double[]{2,3,5,4,200,5000});//或者另一种写法
}
//可变参数的定义,使用可变参数来打印最大值
public static void printMax(double... numbers){
if (numbers.length==0)
{
System.out.println("No");
return;
}
double max = numbers[0];
for (int i = 1; i <numbers.length; i++) {
if(max < numbers[i])
{
max = numbers[i];
}
}
System.out.println(max);
}
}
6.递归
- 递归是自己调用自己
-
递归,阶层
//递归,阶层 public class Demo07 { public static void main(String[] args) { int ff = f(5); System.out.println(ff); } public static int f(int n){ if (n==1 || n==0){//递归头,什么时候不调用自身的方法。如果没有头将陷入死循环 return 1; } else{//递归体,什么时候需要调用自身的方法。 return n * f(n-1); } } }