so ran piece of code today while working on existing codebase. question why assignment operator not used here.
int getsum(int mvar) { int sum = 0; sum += ((mvar != null) ? mvar : 0); return sum; } it appears assignment operator suffice:
int getsum(int mvar) { int sum = ((mvar != null) ? mvar : 0); return sum; } is there benefit initializing value zero?
to answer question, in example there no point in using "+=", regular assignment operator better
int getsum(int mvar) { int sum = 0; sum += ((mvar != null) ? mvar : 0); return sum; } this code bad example of "+=" because shouldn't used here. instead should be:
int getsum(integer mvar) { return mvar != null? mvar : 0; } you don't see benefit of "+=" because sum 0. so, @ , you're wondering why sum = 0 + mvar; (which same saying sum += mvar when can sum = mvar;
a better example (ofc these values don't make sense, makes "+=" valuable):
int getsum(int mvar) { int sum = 5; sum += ((mvar != null) ? mvar : 10); return sum; } this way if don't use "+=" forced in saying sum = sum + mvar; or else wouldn't correct.
Comments
Post a Comment