[英]Java Enum on a switch statement
我在這里有這段代碼,我真的不明白為什么在switch語句中有一個“ this”關鍵字,請看一下這段代碼
public enum InstrumentType{
GUITAR,BANJO,MANDOLIN,DOBRO, FIDDLE ,BASS,
public String toString(){
switch(this){
case GUITAR:
return "Guitar";
case BANJO:
return "Banjo";
case DOBRO:
return "Dobro";
case FIDDLE:
return "Fiddle";
case BASS:
return "Bass";
case MANDOLIN:
return "Mandolin";
default:
return "Unspecified";
}
}
}
這里本是指當前InstrumentType值
static void MyFunc( )
{
InstrumentType f = InstrumentType.GUITAR;
String s = f.toString();
}
調用f.toString()
。 這將具有GUITAR價值
它引用當前實例。
如果您有一個anum實例“ foo”:
String s = foo.toString();
this
指向它的容器類/結構/枚舉之類的元素。 在這種情況下, this
用於InstrumentType
。 這是大多數OO語言的基本規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.