как инициализировать результат в методе? - PullRequest
0 голосов
/ 05 августа 2020

результат не инициализируется, как это сделать в этом методе? (Для сохранения функциональности кода)

static int maxNumbers(int r, int s) {

    int result;
    int[] rk = new int[r];

    for (int i = 0; i < rk.length; i++) {
        if (s > 1) {
            rk[i] = (s - 1) + 1;
            s--;
        } else if (s == 1) {
            rk[i] = (s + 1) + 1;
            s = 0;
        } else {
            rk[i] = 1;
        }
    }
    for (int i = 0; i < rk.length; i++) {
        result = rk[0] * 2 * rk[i++]*2;
    }


    return result;
}

1 Ответ

2 голосов
/ 05 августа 2020

Для целочисленного примитива и в отношении вашего примера вы можете просто написать int result = -1;.

Хотя вы устанавливаете свою переменную result во 2-м for l oop, компилятор не может гарантировать, что это for l oop фактически зацикливается, и поэтому переменная будет установлена.

Итак, в конце вы должны проверить результат метода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...