我對Java很新,我偶然發現了以下問題。替代switch語句,當所有可能的情況下都知道?
我從一個txt文件中讀取電影列表,其中一個字段是電影被分類爲什麼類型的字符串表示,以及1-5的數字表示,表示電影已收到一個或多個獎項。
eks。一部電影在這個領域可能具有以下價值:「12bSt」 這意味着電影是b =傳記,S =體育,2 =獲得了學院獎。 ATM我這樣做:
String[] genreStringToArray(String genre) {
char[] genreCharArray = genre.toCharArray();
this.genreArr = new String[genreCharArray.length];
for (int i = 0; i < genreCharArray.length; i++) {
switch (genreCharArray[i]) {
case 'a': genreArr[i] = "Action"; break;
case 'A': genreArr[i] = "Animation"; break;
case 'b': genreArr[i] = "biographical"; break;
case 'c': genreArr[i] = "comedy"; break;
case 'C': genreArr[i] = "children"; break;
case 'd': genreArr[i] = "drama"; break;
case 'D': genreArr[i] = "documentary"; break;
case 'e': genreArr[i] = "epic"; break;
..... etc
case 2:genreArr[i] = "Academy award"; break;
case 3:genreArr[i] = "Palme d`or"; break;
case 4:genreArr[i] = "Sight & sound"; break;
case 5:genreArr[i] = "AFI top 100"; break;
}
}
return genreArr;
}
我的問題是,什麼樣的實現會比這更有效?
哈哈我想偷這張照片> _ < –
乍一看,它看起來像你的代碼將起作用。有什麼問題? –
@Shredder hehe :) pwnd。 – Jeger