Java方法
1、何谓方法
Java方法是语句的集合,它们在一起执行一个功能。
方法是解决一类问题的步骤的有序组合
方法包含于类或对象中
方法在程序中被创建,在其他地方被引用
2、方法的定义及调用
Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段。
3、方法重载
重载就是自一个类中,有相同的函数名称,但形式不同的函数
方法的重载的规则
方法的返回类型可以相同也可以不相同
仅仅返回类型不同不足以成为重载
4、命令行传参
package com.lan408.blog.method;
public class demo {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("args[" + i + "]:" + args[i]);
}
}
}
[email protected] method % javac demo.java
[email protected] method % cd ..
[email protected] blog % cd ..
[email protected] lan408 % cd ..
[email protected] com % cd ..
[email protected] src % java demo
错误: 找不到或无法加载主类 demo
原因: java.lang.ClassNotFoundException: demo
[email protected] src % java com.lan408.blog.method.demo
[email protected] src % hello kuerban ni hao
zsh: command not found: hello
[email protected] src % java com.lan408.blog.method.demo this is kuerban
args[0]:this
args[1]:is
args[2]:kuerban
编译的时候不需要加包名,但必须在那个文件下进行
运行的时候就退出到目录文件,然后必须加包名才能运行成功
5、可变参数
JDK 1.5开始,Java支持传递同类型的可变参数给一个方法。
在方法声明中,在指定参数类型后加一个省略号(...)。
public class Demo01 {
public static void main(String[] args) {
Demo01 demo01 = new Demo01();
demo01.test(1,2,3,4,5);
// test(1);
}
//i是数组的形式传来
private void test(int... i) {
System.out.println(i[0]);
}
//这里如果不加static就报错
// private static void test(int i){
// System.out.println(i);
// }
}
//求最大值
public class Demo02 {
public static void main(String[] args) {
printMax(32,54,675,43,23);
printMax(43,566,34,234,56456,43);
}
public static void printMax(double... number){
if (number.length == 0){
System.out.println("No argument passed");
return;
}
double result = number[0];
for (int i = 1; i < number.length; i++) {
if (number[i] > result){
result = number[i];
}
}
System.out.println("The max value is: " + result);
}
}
6、递归
递归就是:A方法调用A方法!就是自己调用自己
递归结构包括两个部分:
递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。
递归体:什么时候需要调用自身方法
//scanner没办法直接获取char类型,可以使用下面的
char ch = scanner.nextLine().charAt(0)
原文:https://www.cnblogs.com/xiaolan408/p/14478059.html