Java - Оптимизация кода

201
30 марта 2017, 19:16

Можно как-то оптимизировать, метод изложенный ниже.У меня создаются картинки различного цвета с помощью генератора случайных чисел, всё работает хорошо, но вот кода слишком много получается..

private void pickColor() {
    switch (rand.nextInt(12)) {
        case 0:
            colorBall = R.drawable.red;
        case 1:
            colorBall = R.drawable.blue;
        case 2:
            colorBall = R.drawable.night_blue;
        case 3:
            colorBall = R.drawable.green;
        case 4:
            colorBall = R.drawable.acqamarin;
        case 5:
            colorBall = R.drawable.night_acqamarin;
        case 6:
            colorBall = R.drawable.grey;
        case 7:
            colorBall = R.drawable.orange;
        case 8:
            colorBall = R.drawable.pink;
        case 9:
            colorBall = R.drawable.tomato;
        case 10:
            colorBall = R.drawable.violet;
        case 11:
            colorBall = R.drawable.yellow;
        default:
            colorBall = R.drawable.blue;
    }
}
Answer 1

Можно поместить все в массив и обращаться по индексу

Image colorBalls[] = new Image {
    R.drawable.red,
    R.drawable.blue,
    R.drawable.night_blue,
    R.drawable.green,
    R.drawable.acqamarin,
    R.drawable.night_acqamarin,
    R.drawable.grey,
    R.drawable.orange,
    R.drawable.pink,
    R.drawable.tomato,
    R.drawable.violet,
    R.drawable.yellow,
    R.drawable.blue
};
colorBall = colorBalls[rand.nextInt(12)];
READ ALSO
Sqlite android не создаются таблицы

Sqlite android не создаются таблицы

При запуске приложение не создает таблицы в sqlite

408
Сделать ограничение

Сделать ограничение

У меня есть поле, в которое я ввожу имя пользователя, а проверка на валидацию следующая:

226
Как избавится от ошибки с переменными char

Как избавится от ошибки с переменными char

Смысл в программе в том что она должна вывести на консоль 4 значения: Potatos, Tomatos, Apple, OrangeНо вместо этого выводит предупреждение [Warning] deprecated conversion...

229
Перевод hex в код символа

Перевод hex в код символа

У меня есть переменная типа String, в которой лежит следующее значение: "0xF9"Как мне получить выходной символ, код которого равен hex значению в этой...

337