@Horoko

Как получить значение null класса Integer?

Мне нужно передавать в другую активити значение типа Integer, которое по дефолту должно быть Null, но в get ... Extra, есть только getIntExtra у которой можно получить только примитивные значения, без Null. Сабж. Как мне получть мой null? Если в default value я уже как минимум должен вставить null.

MainActivity.uris.set(intent.getIntExtra("ids",null), urisis);

на null студия ругается потому что метод получает примитивный тип.
  • Вопрос задан
  • 571 просмотр
Решения вопроса 1
Ewintory
@Ewintory
Java / Android developer
Integer является Serializable. Поэтому, если хотите именно так передавать, то getIntent().getSerializableExtra() вам в помощь. Только при получении, перед кастованием проверяйте на null.

Но я бы на вашем месте передавал примитивный тип, а вместо null использовал например дефолтное значение -1.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@xdeveloper
чуть замороченней использовать Parcelable.
кода больше писать, но можно сложные объекты передавать.

public class Ride implements Parcelable { ....}

Intent intent = new Intent(context, ReportActivity.class);
intent.putExtra(Ride.class.getCanonicalName(), ride);
context.startActivity(intent);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы