Java方法
2021-01-18 20:19
标签:不同 自身 求和 自己 包括 要求 就是 原则 sum Java方法式语句的集合,就是一段用来完成特定功能的代码片段,类似于其它语言的函数,Java是值传递类型。 设计原则:方法的本意是功能块,就是实现某个功能的语句块的集合。设计方法的时候,最好保持方法的原子性:就是一个方法只完成一个功能,这样有利于后期扩展。 格式: 代码讲解: 方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。 调用时,会根据不同的参数自动匹配对应的方法。 方法重载的规则: 方法名必须相同; 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等); 方法的返回类型可以相同也可以不相同; 仅仅返回类型不同不构成方法重载 代码详解: 在运行程序时候想把数据传递到程序中时,可以靠传递命令行参数给main()方法。 代码: 使用cmd命令行运行 Java支持传递同类型的可变参数给一个方法。在方法声明中,在指定参数类型后加一个省略号。 注意:一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,如何普通参数必须在它之前声明。 举例代码: 递归的基本思想就是“自己调用自己”,一个使用递归技术的方法将会直接或者间接的调用自己。 递归结构包括两个部分: 递归头。如果没有头,将陷入死循环,也就是递归的结束条件。 递归体。调用自身方法。 递归的缺陷: 简单的递归代码: Java方法 标签:不同 自身 求和 自己 包括 要求 就是 原则 sum 原文地址:https://www.cnblogs.com/ice-point/p/12912025.html[修饰符1 修饰符2 …] 返回值类型 方法名(形式参数列表){
Java语句;… … …
}
public class Demo01 {
/**main方法:程序的入口*/
public static void main(String[] args) {
int num1 = 10;
int num2 = 20;
//调用求和的方法:将num1与num2的值传给add方法中的n1与n2
// 求完和后将结果返回,用sum接收结果
int sum = add(num1, num2);
System.out.println("sum = " + sum);//输出:sum = 30
//调用打印的方法:该方法没有返回值
print();
}
/** 求和的方法 */
public static int add(int n1, int n2) {
int sum = n1 + n2;
return sum;//使用return返回计算的结果
}
/** 打印的方法 */
public static void print() {
System.out.println("方法的学习....");
}
}
方法的重载
public class 方法重载demo {
public static void main(String[] args) {
System.out.println(add(3,5));
System.out.println(add(3,5,10));
System.out.println(add(3.0,5));
System.out.println(add(3,5.0));
}
/** 求和的方法 */
public static int add(int n1,int n2){
int sum =n1+n2;
return sum;
}
// 方法名相同,参数个数不同,构成重载
public static int add(int n1, int n2, int n3) {
int sum = n1 + n2 + n3;
return sum;
}
// 方法名相同,参数类型不同,构成重载
public static double add(double n1, int n2) {
double sum = n1 + n2;
return sum;
}
// 方法名相同,参数顺序不同,构成重载
public static double add(int n1, double n2) {
double sum = n1 + n2;
return sum;
}
// //编译错误:只有返回值不同,不构成方法的重载
// public static double add(int n1, int n2) {
// double sum = n1 + n2;
// return sum;
// }
// //编译错误:只有参数名称不同,不构成方法的重载
// public static int add(int n2, int n1) {
// double sum = n1 + n2;
// return sum;
// }
}
命令行传参
public class CommandLine {
public static void main(String[] args) {
for (int i =0;i
方法中的可变参数
public class 可变参数 {
public static void main(String[] args) {
printMax(34,33,45,65,99,10,2);//可以传递参数
printMax(new int[]{1,4,5,6,9});//也可以传递数组
}
//定义一个可变参数方法
public static void printMax(int...num){
if (num.length ==0){
System.out.println("没有输入数字");
return;
}
int result = num[0];
for (int i= 1;i
递归
public class 递归 {
public static void main(String[] args) {
System.out.println(f(4));
}
public static int f(int n){
if (n==1){
return 1;
}else{
return (n*f(n-1));
}
}
}
下一篇:用python检查矩阵的计算