Rumah > Java > javaTutorial > teks badan

Penggunaan asas kelas enumerasi Java

PHPz
Lepaskan: 2023-05-08 18:04:08
ke hadapan
1442 orang telah melayarinya

1. Peraturan penghitungan

  • Objek kelas penghitungan boleh ditakrifkan dalam kelas dan yang baharu tidak disokong Penghitungan Kelas penghitungan mempunyai pembina, sama seperti kelas lain Ia boleh mempunyai berbilang kaedah

  • Kaedah pembinaan kelas penghitungan mestilah peribadi, dan pembolehubah ahli boleh menjadi awam atau. persendirian

  • Sebab: Pembina kelas penghitungan hanya boleh dipanggil dalam kelas ini, kerana objek baharu lain tidak disokong, jadi pembina semula jadi adalah persendirian

  • Kod contoh :
package com.meijulei;
//枚举类
public enum Cat {
    A("小明",12),B("小花",22),C("小红",23),D("小蓝",30),E("小绿",20),F("小黄",32);
    public String name;
    private int age;
    private Cat(){
    }
    private Cat(String a,int b){
        name=a;
        age=b;
    }
    public void m1(){
        System.out.println("姓名为:"+name+",年龄为:"+age);
    }
}
//调用
package com.meijulei;
import com.meijulei.Cat;
public class Test {
    public static void main(String[] args) {
        Cat a=Cat.A;
        a.m1();
    }
}
Salin selepas log masuk

2. Bilangan penghitungan

Nota: Bilangan penghitungan merujuk kepada nombor dalam timbunan, iaitu bilangan objek yang diisytiharkan dalam kelas penghitungan

3. Fungsi yang biasa digunakan dalam kelas enumerasi

Penggunaan asas kelas enumerasi Java**Fungsi Cat.C.ordinal()**, mengira kedudukan objek dalam kelas enumerasi Objek mana dalam tengah (dikira daripada 0) Cat.C.compareTo(Cat.E) membandingkan perbezaan antara dua objek, menolak yang sebelumnya daripada yang terakhir,

A("小明",12),B("小花",22),C("小红",23),D("小蓝",30),E("小绿",20),F("小黄",32);
		System.out.println(Cat.E.ordinal());
        System.out.println(Cat.C.compareTo(Cat.E));
Salin selepas log masuk

//Output

//4

//-2


4. Laksanakan kelas penghitungan

Seterusnya mari kita lihat contoh DEMO mudah:
/**
 * java枚举
 */
public class Enum {
    public static void main(String[] args) {
        System.out.println(Season.SPRING);
        System.out.println(Season.SUMMER);
        System.out.println(Season.AUTUMN);
        System.out.println(Season.WINTER);
    }
}

// 定义的枚举类
enum Season {
    // 枚举定义的常量对象必须在最前面
    SPRING("春天","万物复苏"),
    SUMMER("夏天","烈日炎炎"),
    AUTUMN("秋天","硕果累累"),
    WINTER("冬天","寒冷刺骨");

    private String name;
    private String desc;

    private Season(String name, String desc) {
        this.name = name;
        this.desc = desc;
    }

    public String getName() {
        return name;
    }

    public String getDesc() {
        return desc;
    }

    @Override
    public String toString() {
        return "Season{" +
                "name='" + name + '\'' +
                ", desc='" + desc + '\'' +
                '}';
    }
}
Salin selepas log masuk

Output:

Musim{name='Spring', desc='Revival of All Things'}

Musim{name='Summer', desc='Scorching Sun'}

Musim {name=' musim luruh', desc='fruitful'}
Musim{name='winter', desc='cold'}



5 Langkah berjaga-jaga untuk menggunakan kelas penghitungan

Apabila kita gunakan kata kunci enum untuk membangunkan kelas penghitungan, kelas Eunm akan diwarisi secara lalai, dan ia merupakan kelas diubah suai terakhir

Jika kami menggunakan pembina tanpa parameter, Kemudian anda boleh terus meninggalkan kurungan

// 枚举定义的常量对象必须在最前面
SPRING("春天", "万物复苏"),
SUMMER("夏天", "烈日炎炎"),
AUTUMN("秋天", "硕果累累"),
WINTER("冬天", "寒冷刺骨"),
Other, Shit;

Season() {
}

private Season(String name, String desc) {
    this.name = name;
    this.desc = desc;
}
Salin selepas log masuk
dalam penghitungan

Atas ialah kandungan terperinci Penggunaan asas kelas enumerasi Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!