I tipi primitivi non sono per impostazione predefinita null. Fai il prezzo Doppio e questo risolverà il problema poiché allora sarà nullable. Inoltre, puoi aggiungere un getter personalizzato per evitare di avere il prezzo come oggetto nullo.
public double getPrice(){
if(this.price == null) return 0.0;
return this.price;
}
@Ingore dice a Room di ignorare del tutto il campo, che non è quello che vuoi, in base alla tua risposta.