r4zzz4k
12/08/2017, 7:43 PM...
@SerializedName("value2")
var value2: Int,
...
@SerializedName("value4")
var value4: Int? = null,
...
value2 has the type Int, which means any integer value. value4 has the type Int?, which means any integer value or null. It roughly corresponds to int and java.lang.Integer in terms of assignable values (it's a bit more complicated under the hood, Kotlin compiler decides by itself where to use boxing and unboxing of primitives, but that's not important here).