当前位置: 代码迷 >> 综合 >> Java方法 day5
  详细解决方案

Java方法 day5

热度:11   发布时间:2023-12-05 13:20:38.0

Java方法

什么是方法?

System.out.println()

类.对象.方法

回顾:方法的命名规则:首字母小写后面驼峰。

 public static void main(String[] args) {int sum = add(1, 2);System.out.println(sum);
?}public static int add(int a,int b){return a+b;}
  • 方法的原子性,一个方法完成一个功能

方法的定义和调用

代码片段完成特定功能

方法包括:

  • 修饰符;static final

  • 返回值类型;void空 int..

  • 方法名(java所有东西都要有名字)

  • 参数类型;可选 理解形参和实参

  • 方法体

return 返回值!!!!

例子:写一个比大小的方法

public static void main(String[] args) {//调用int max = max(10, 20);System.out.println(max);
?}public static int max(int num1,int num2){int result=0;if (num1==num2){System.out.println("num1==num2");return 0;//终止方法}if (num1>num2){result =num1;}else{result=num2;}return result;}

值传递(java)和引用传递

值传递:基本数据类型赋值都属于值传递,值传递传递的是实实在在的变量值,是传递原参数的拷贝,值传递后,实参传递给形参的值,形参发生改变而不影响实参。

引用传递:引用类型之间赋值属于引用传递。引用传递传递的是对象的引用地址,也就是它的本身(自己最通俗的理解)。就是将实参的地址传递给形参,形参改变了,实参当然被改变了,因为他们指向相同的地址。

方法的重载

相同函数名称,形参不同的函数。

规则:

  • 方法名必须相同

  • 参数列表必须不同(个数、类型、参数排列顺序

  • 返回值可相同可不同

  • 仅返回类型不同不算重载

命令行传参

可以依靠命令行参数给main()函数实现。

ublic class Demo3 {public static void main(String[] args) {for (int i = 0; i < args.length; i++) {System.out.println("args["+i+"]:"+args[i]);
?}}
}

 

可变参数

--不定项参数

在指定参数类型后加省略号,必须是最后一个参数!

public static void main(String[] args) {Demo04 demo04 = new Demo04();demo04.test(1,43,5,63,5);}public void test(int... i){System.out.println(i[0]);System.out.println(i[1]);System.out.println(i[2]);System.out.println(i[3]);System.out.println(i[4]);
?}

递归讲解***

就是:自己调用自己!!!

public class Demo06 {public static void main(String[] args) {System.out.println(f(5));
//5*f(4)*f(3)*f(2)*f(1)}public static int f(int n){if (n==1){return 1;}else{return n*f(n-1);}}
}
、、递归思想

边界条件:边界 f(1)开始有值

前阶段:参数不等于1之前

返回阶段:n*(n-1)

  相关解决方案