передача ссылки в качестве параметра в Android - PullRequest
3 голосов
/ 17 февраля 2012

Я новичок в Java / Android. Я разработчик c / c ++. Могу ли я знать, как передать ссылку в качестве параметра в Android. Пример кода c, показанного ниже

void main()
{
  int no1 = 3, no2 = 2, sum = 0;
  findsum( no1, no2, sum );
  printf("sum=%d", sum );
}

void findsum( int no1, int no2, int& sum )
{
  sum = no1 + no2;
}

пожалуйста, предложите мне решение

спасибо

Ответы [ 2 ]

7 голосов
/ 17 февраля 2012

Вы не можете передать int как ссылку в Java .int является основным типом, его можно передавать только по значению.

Если вам все еще нужно передать переменную int в качестве ссылки, вы можете обернуть ее в изменяемый класс, например, массив int:

void findsum( int no1, int no2, int[] sum )
{
  sum[0] = no1 + no2;
}

В любом случае, я настоятельно рекомендую вам провести рефакторинг вашегокод должен быть более объектно-ориентированным, например:

class SumOperation {
   private int value;

   public SumOperation(int no1, int no2) {
      this.value = no1 + no2;
   }

   public int getReturnValue() { return this.value; }
}
1 голос
/ 18 февраля 2012

В Java нет передачи по ссылке.

...