Сумма Строка и Целое число - PullRequest
0 голосов
/ 04 января 2012

У меня есть это:

Например:

codincidenceSelected.id -> иметь значение "1"

int one -> иметь значение "1"

Когда я суммирую это целое число и строку, это дает мне «Заболеваемость: 11», но я хочу «Заболеваемость: 2», так что мой код не суммирует, это добавляет значение целого числа.

Вот мой код:

 CodIncidence codIncidenceSelected = new CodIncidence();
        app = (netAppApplication)getApplicationContext();
        codIncidenceSelected = app.getcodincidenceActual(); 

        int one = 1;

        String total = codIncidenceSelected.id + one;


        Toast toast=Toast.makeText(this, "Incidence: " + total, 5000);
         toast.show();

Ответы [ 7 ]

1 голос
/ 04 января 2012

Это должно работать.Значение вашего id равно String.Вы должны сначала проанализировать его как Integer, чтобы выполнить вычисления.Затем, взяв значение String, следует проанализировать его как Integer.

    int total = Integer.parseInt(codIncidenceSelected.id) + one;
    String answer = String.valueOf(total);

    Toast toast=Toast.makeText(this, "Incidence: " + answer, 5000);
         toast.show();
1 голос
/ 04 января 2012

попробуйте

String total = String.valueOf(Integer.parseInt(codIncidenceSelected.id) + one );
1 голос
/ 04 января 2012
int total = Integer.parseInt(codIncidenceSelected.id) + one;
0 голосов
/ 04 января 2012

Вы должны сначала преобразовать codIncidenceSelected в int, а затем суммировать их.попробуйте этот метод

Integer.parseInt(codIncidenceSelected).
0 голосов
/ 04 января 2012

Это потому, что Java интерпретирует ваш оператор + как конкатенацию строк.

Если вы хотите суммировать значения, я предлагаю вам сделать что-то вроде:

int total = codIncidenceSelected.id + one;

Toast toast=Toast.makeText(this, "Incidence: " + Integer.toString(total);, 5000);
toast.show();

Этоконечно, предполагается, что codIncidenceSelected.id является Java int.Если это строка, то вам нужно будет сделать:

int id = Integer.parseInt(codIncidenceSelected.id);

Перед суммированием.

Если вы действительно хотите только добавить число 1 к идентификатору, то я также предлагаю вам сделать что-токак следующее:

int total = codIncidenceSelected.id++;

Опять же, предполагая, что codIncidenceSelected.id является целым (иначе сначала преобразуйте в int, как указано выше).

0 голосов
/ 04 января 2012

Извините, я не разработчик Android, но я думаю, сначала вам нужно убедиться, что total это int, а не string, а затем преобразовать codIncidenceSelected.id в int

UPD: о, пока я писал, у вас уже есть ответы, как это сделать)

0 голосов
/ 04 января 2012

Пожалуйста, измените следующую строку

String total = codIncidenceSelected.id + one;

до

int total = Integer.parseInt(codIncidenceSelected.id) + one;

и затем запустите ваш проект.

...