1. 程式人生 > 其它 >vue報錯Avoided redundant navigation to current location: “/xx“

vue報錯Avoided redundant navigation to current location: “/xx“

技術標籤:java

列舉類

列舉是從jdk1.5開始引入的,引入新的型別--列舉,列舉指由一組固定的常量組成,屬性就是常量,java中的每一個列舉都繼承自java.lang.Enum類,當定義一個列舉型別時,每一個型別的成員都可以看作是Enum類的例項,這些列舉成員預設為 public static final 修飾,當使用列舉成員時,直接使用列舉名稱呼叫成員即可。

如何宣告列舉型別,和列舉常量?

//建立一個性別的列舉
public enum Gender{
    //屬性就是常量
    男,女;
    //這種建立的好處是?
    //1.型別安全 2.易於輸入 3.程式碼清晰 4.可讀性強大
}

思考一下,我們怎麼樣用上面這個列舉呢?

//建立一個人的類
public class Person{
    //屬性
    private String name;//姓名
    private Gender gender;//性別
    
    public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Gender getGender() {
		return gender;
	}
	public void setGender(Gender gender) {
		this.gender = gender;
	}

    
}

測試列舉類

public class Test{
    public static void main(String[] agrs){
        //建立人的物件
        Person person = new Person();
        //怎麼給屬性賦值
        person.setName("小麗");
        person.setGender(Gerson.女);
        //賦值列舉型別,因為Gerson是列舉型別
        
        //輸出資訊
        System.out.println("名字是:"+person.getName()+"性別:"+person.getGender());
    }
}

練習題

為課程三個單元定義列舉:U1,U2,U3分別是 第一,第二,第三單元,程式設計輸出每個單元的學習目標

public enum Course{
    U1,U2,U3;//代表三個單元
}

測試單元類

public class Test{
    public static void main(String[] args){
        Scanner sc=new Scanner(system.in);
        System.out.println("請輸入1,2,3,");
        int num=sc.nexInt();
        //給三個單元定義一個統一的變數
        CourseUns u;
        //給三個單元賦值
        if(num==1){
            u=Course.u1;
        }else if(num==2){
            u=Course.U2;
        }else {
            u=Course.u3;
        }
        
        //這一題主要是鍛鍊大家用列舉型別作為switch裡面的條件,來執行相應的操作
        switch(u){
            case U1:
                System.out.println("第一單元成績");
                break;
            case U2:
                System.out.println("第二單元成績");
                break;
            case U1:
                System.out.println("第三單元成績");
                break;
            default:
                break;
        }
        
    }
}

Enum類的常用方法

例題一

values():以陣列的形式返回列舉型別的所有成員

通過呼叫列舉型別例項的values()方法可以將列舉的所有成員以陣列形式返回,也可以通過該方法獲取列舉的成員。

下面的示例建立一個包含3個成員的列舉型別Colour顏色類,然後呼叫values()方法輸出這些成員。

public enum Color {
    //定義列舉型別
	YELLOW, RED, GREEW;
}
public static void main(String[] args){
    for(int i=0;i<)public static void main(String[] args) {
		for (int i = 0; i < Color.values().length; i++) {
			System.out.println("列舉成員:" + Color.values()[i]);
		}
    }
}
/*
列舉成員:YELLOW
列舉成員:RED
列舉成員:GREEW
*/

2.ordinal() 獲取列舉成員的索引為位置

通過列舉型別例項的ordinal()方法可以獲取一個成員在列舉的索引的索引位置。下面的例項建立一個3個成員的列舉型別Color類,然後呼叫ordinal()方法輸出成員及對應索引位置

public enum Color {   
	//定義一個列舉類
	GREEN,YELLOW,RED;	
}
public class Test {
	public static void main(String[] args) {
		for (int i = 0; i < Color.values().length; i++) {
			System.out.println("索引" + Color.values()[i].ordinal() + ",值:" + Color.values()[i]);
		}
	}
}
/*
索引0,值:GREEN
索引1,值:YELLOW
索引2,值:RED
*/