Что на самом деле было сделано, так это создать набор значений либо в strings.xml, либо в других пользовательских XML-файлах и дать им описательные имена. Эти значения становятся статичными во время компиляции, каждое значение XML делает, и тогда я могу просто ссылаться на них по их идентификаторам.
Итак, в XML я делаю:
<string name="descriptive_name_that_is_easily_read_in_switch_case">
What I put here really doesn't matter</string>
Затем в выключателе / корпусе
switch(someValue){
case R.id.descriptive_name_that_is_easily_read_in_switch_case:{
<code>
}
break;
}
Прелесть этого в том, что я могу удалить enum / static инициализацию из кода, сделать его более читабельным и по-прежнему повторно использовать значения во всей программе.
Конечно, бывают случаи, когда вы хотите, чтобы ваши перечисления / статические значения были видны только в определенном классе или методе. Тогда это не то, что вы бы сделали.