因此,我在這裏閱讀了一些關於stackoverflow的文章,感覺我的大部分工作都是正常的,但他們通常沒有關於如何使用getters/setters的示例Java enum getter轉換爲int的錯誤
我非常接近解決這個問題,只是很難找出這最後一部分
目前我正在使用的程序中的所有商店都使用openShop(id);但我想能夠使用openShop(「GENERAL_STORE」);因爲這樣可以更容易維護,而且不需要查看ID就可以輕鬆查看。
任何想法我做錯了什麼?
private enum shopName {
GENERAL_STORE(577);
private final int id;
shopName(int id) {
this.id = id;
}
public int getId() {
return this.id;
}
};
public void openShop(String name) {
int shopId = shopName(name).getId(); //line with error
//int shopId = shopName.shopName(name).getId(); //I've also tried this
openShop(shopId);
}
public void openShop(int id) {
/* blah */
}
這裏是我得到
$ ./compiler.sh
file.java:#: error: cannot find symbol
int shopId = shopName(name).getId();
^
symbol: method shopName(String)
location: class File
1 error
花了一個小時試圖弄清楚,謝謝。 –
@JeanHobbit歡迎您:) – Pshemo
@JeanHobbit調試的第一步就是將複合語句分解爲單獨的語句。它會告訴你,問題不在你認爲的地方。 – chrylis