Java方法详解


Java方法是语句的集合,它们在一起执行一个功能

public static void main(String[] args) {
   int x=max(30,30); //调用max方法
   System.out.println(x);
}
public static int max(int a,int b){
   int result= 0 ;         //重点
   if (a==b){
       System.out.println("a==b");
       return 0;     //终止方法
  }
   if(a>b){
       result = a;
  }else{
       result = b;
  }
   return result;          //重点
}
  • 值传递(Java)和引用传递

方法重载

重载:就是在一个类中,有相同的函数名称,但形参不同的函数。

  1. 方法名称必须相同;

  2. 参数列表必须不同(个数不同,或参数类型不同,或参数排列顺序不同等);

  3. 方法的返回类型可以相同也可以不同

  4. 仅仅返回类型不同不足以成为方法的重载

命令行传参

有时候你希望运行一个程序时候再传递给它消息。这要靠传递命令行参数给main()函数实现

可变长参数

一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

public static void main(String[] args) {
   max(4,86,4.6,89.6);
   max(new double[]{35,80,56,34});
}
public static void max(double...a){
   if (a.length==0){
       System.out.println("没有任何数据");
       return;
  }
   double b = a[0];
   for (int i = 0; i <a.length ; i++) { //排序
       if (a[i]>b){
           b=a[i];
      }
  }
   System.out.println("最大数是"+b);
}

递归:求阶乘,只能是比较小的基数1. 边界条件。2.前阶段i=1。 3.返回阶段n*(n-1)

public static void main(String[] args) {
   int m = fun(5);
   System.out.println("5的阶乘是:"+m);
}
//递归
public static int fun(int i){
   if (i == 1){
       return 1;
  }else{
       return i*fun(i-1);
  }
}

实现简单的计算器:思路

  1. 写四个方法:加减乘除

  2. 利用循环+switch进行用户交互

  3. 传递需要操作的两个数

  4. 输出结果

public static void main(String[] args) {
   Demo05 demo05 = new Demo05();
   while(1>0){
       Scanner num1 = new Scanner(System.in);
       System.out.println("请输入第一个数:");
       int i = num1.nextInt();
       System.out.println("请输入运算符:");
       String a = num1.next();
       System.out.println("请输入第二个数:");
       int j = num1.nextInt();
       int x = demo05.account(i,a,j);
       System.out.println(i+a+j+"="+x);
       //num1.close();
  }
}
public int account(int a,String c,int b){
   int result = 0;
   switch(c){
       case "+":
           result = a+b;
           break;
       case "-":
           result = a-b;
           break;
       case "*":
           result = a*b;
           break;
       case "/":
           result = a/b;
           break;
       default:
           System.out.println("输入不合法");
           return 0 ;
  }
   return result;
}

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/java/281847.html

(0)
上一篇 2022年8月23日 16:05
下一篇 2022年8月23日 16:46

相关推荐

发表回复

登录后才能评论