Написание Float (не плавать) для посылки

Я хотел бы написать Float, чтобы я мог установить его значение равным нулю... какие-нибудь идеи?

Моя единственная идея теперь состоит в том, чтобы записать отрицательное значение, если Float равно нулю, тогда при чтении участка обработайте отрицательное значение, написав ноль. Это было бы довольно неприятно, так как многие операторы if (конечная цель - написать этот объект JSON, и он должен содержать Float s, а не float.

Спасибо!

редактировать:

Я в настоящее время использую эти методы, чтобы сделать это. Все значения из r.get....() возвращают число с плавающей точкой

private float valueFromFloat(Float f) {
    if (f == null) {
        return -1f;
    } else {
        return f.floatValue();
    }
}

private void writeRoute(Route r) {

    parcel.writeFloat(valueFromFloat(r.getBus()));
    parcel.writeFloat(valueFromFloat(r.getHeavy_rail()));
    parcel.writeFloat(valueFromFloat(r.getWalk()));     
    parcel.writeFloat(valueFromFloat(r.getCar23()));
    parcel.writeFloat(valueFromFloat(r.getLight_rail()));
    parcel.writeFloat(valueFromFloat(r.getCars4()));
    parcel.writeFloat(valueFromFloat(r.getCar()));
    parcel.writeFloat(valueFromFloat(r.getAlternative()));  
    parcel.writeFloat(valueFromFloat(r.getMotorcycle()));
}

1 ответ

Решение

writeValue работает для Float, Double и нескольких других типов

Float x = new Float(3.14);
parcel.writeValue(x);

// later
Float x = parcel.readValue();
Другие вопросы по тегам