Переключение с использованием строк
Ты не можешь. Java 1.6 не поддерживает операторы switch со строками.
Java 1.7 возможно будет (это одна из особенностей Project Coin ), но для 1.6 вы должны либо использовать enum (лучший выбор), либо использовать карту иным образом.
Псевдо-переключатель с использованием карты
Вот как:
Создать интерфейс:
interface SiteListProvider{
SitesList provide();
}
Теперь создайте карту, которая отображает строки для различных реализаций SiteListProvider
:
Map<String, SiteListProvider> providers =
new HashMap<String, SiteListProvider>();
providers.put("foo", new SiteListProvider(){
public SitesList provide(){
return new SiteList("foo", "bar", "baz");
}
});
providers.put("phleem", new SiteListProvider(){
public SitesList provide(){
return new SiteList("otherstuff");
}
});
А теперь используйте это так:
SiteList siteList = providers.get(localName).provide();