public MonetaryFormat code(int codeShift,String code){
  checkArgument(codeShift >= 0);
  final String[] codes=null == this.codes ? new String[MAX_DECIMALS] : Arrays.copyOf(this.codes,this.codes.length);
  codes[codeShift]=code;
  return new MonetaryFormat(negativeSign,positiveSign,zeroDigit,decimalMark,minDecimals,decimalGroups,shift,roundingMode,codes,codeSeparator,codePrefixed);
}

public MonetaryFormat code ( int codeShift , String code ) { checkArgument ( codeShift >= 0 ) ; final String [ ] codes = null == this . codes ? new String [ MAX_DECIMALS ] : Arrays . copyOf ( this . codes , this . codes . length ) ; codes [ codeShift ] = code ; return new MonetaryFormat ( negativeSign , positiveSign , zeroDigit , decimalMark , minDecimals , decimalGroups , shift , roundingMode , codes , codeSeparator , codePrefixed ) ; }
configure currency code for given decimal separator shift . this configuration is not relevant for parsing .
