Enum
枚举是一个特殊的类,里面包含了一些特殊的对象,这些对象是枚举类的实例,不会发生改变,这些特殊对象一般采用大写标识符。
枚举采用 enum 关键字。枚举对象之间用逗号分隔,如果对象后还有其他语句,就需要用分号结尾。
枚举类的对象是在内部自动创建的,不能在外部创建对象。
示例
package chapter04_OOP;
public class MyEnum {
public static void main(String[] args) {
System.out.println(City.BJ.name);
System.out.println(City.BJ.code);
System.out.println(City.SZ.name);
}
}
// 枚举类型
enum City {
BJ("beijing", 10001),
SZ("shenzhen", 10002);
public String name;
public int code;
City(String name, int code) {
this.name = name;
this.code = code;
}
}
递归
递归:Recursion 指的是在方法体内部调用方法自身。
递归方法必须要有出口,否则会出现死循环。
示例
典型的 Fibonacci 数列 1 1 2 3 5 8 13
package chapter04_OOP;
public class Recursion {
public static void main(String[] args) {
int ret;
ret = fibonacci(6);
System.out.println(ret);
}
public static int fibonacci(int n) {
if (n==1 || n==2) { // 递归的出口
return 1;
}
return fibonacci(n-1) + fibonacci(n-2);
}
}