To add to what Richard and Carlo have said ...
When you convert a string to a number, you aren't just stripping away leading zeros - you also convert the number to a value that the computer can understand: binary, stored in a fixed-size variable which for a Java integer is 32 bits. So your example of "032" is converted and stored internally as:
00000000000000000000000000100000
And so is "32", and "0000032" because this is a fixed size variable. Although the input string could have between 0 and ∞ leading zeros none of them are significant as a numeric value.
Numbers only acquire leading zeros when they are converted back to a string for presentation, either in a report, to a printer, or directly to the user via his display. Then, you use a formatting code which specifies how many digits the number should display at a minimum, as Richard demonstrated.