替換 case 子句中的字串
假設我們有多個資料來源,包括資料庫,檔案,提示和 argumentList 。根據所選來源,我們改變了我們的方法:
def loadData(dataSource: Symbol): Try[String] = dataSource match {
case 'database => loadDatabase() // Loading data from database
case 'file => loadFile() // Loading data from file
case 'prompt => askUser() // Asking user for data
case 'argumentList => argumentListExtract() // Accessing argument list for data
case _ => Failure(new Exception("Unsupported data source"))
}
我們可以很好地使用 String
代替 Symbol
。我們沒有,因為在這種情況下字串的功能都沒有用。
這使程式碼更簡單,更不容易出錯。