/loss of precision -this is compilation error iresult (inti dfractional part is lost /iresult is since the note that since java will not perform implicit casts where precision is lostthe explicit cast in the last line above is required since java there is new kind of implicit castfor going between number objectslike integer and floatand their related base typeslike int and float any time number object is expected as parameter to methodthe corresponding base type can be passed in this casejava will perform an implicit castcalled autoboxingwhich will convert the base type to its corresponding number object likewiseany time base type is expected in an expression involving number referencethat number object is changed to the corresponding base typein an operation called unboxing there are few caveats regarding autoboxing and unboxinghowever one is that if number reference is nullthen trying to unbox it will generate an errorcalled nullpointerexception secondthe operator"=="is used both to test the equality of base type values as well as whether two number references are pointing to the same object so when testing for equalitytry to avoid the implicit casts done by autoboxing and unboxing finallyimplicit castsof any kindtake timeso we should try to minimize our reliance on them if performance is an issue incidentallythere is one situation in java when only implicit casting is allowedand that is in string concatenation any time string is concatenated with any object or base typethat object or base type is automatically converted to string explicit casting of an object or base type to string is not allowedhowever thusthe following assignments are incorrectstring (string wrong/this is string "value (string ;/this is wrongstring /this is wrongto perform conversion to stringwe must instead use the appropriate tostring method or perform an implicit cast via the concatenation operation thusthe following statements are correct