home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / rt.jar / java / text / DecimalFormatSymbols.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  4.8 KB  |  216 lines

  1. package java.text;
  2.  
  3. import java.io.IOException;
  4. import java.io.ObjectInputStream;
  5. import java.io.Serializable;
  6. import java.util.Hashtable;
  7. import java.util.Locale;
  8. import java.util.ResourceBundle;
  9.  
  10. public final class DecimalFormatSymbols implements Cloneable, Serializable {
  11.    private char zeroDigit;
  12.    private char groupingSeparator;
  13.    private char decimalSeparator;
  14.    private char perMill;
  15.    private char percent;
  16.    private char digit;
  17.    private char patternSeparator;
  18.    private String infinity;
  19.    private String NaN;
  20.    private char minusSign;
  21.    private String currencySymbol;
  22.    private String intlCurrencySymbol;
  23.    private char monetarySeparator;
  24.    private char exponential;
  25.    static final long serialVersionUID = 5772796243397350300L;
  26.    private static final int currentSerialVersion = 1;
  27.    private int serialVersionOnStream = 1;
  28.    private static final Hashtable cachedLocaleData = new Hashtable(3);
  29.  
  30.    public DecimalFormatSymbols() {
  31.       this.initialize(Locale.getDefault());
  32.    }
  33.  
  34.    public DecimalFormatSymbols(Locale var1) {
  35.       this.initialize(var1);
  36.    }
  37.  
  38.    public char getZeroDigit() {
  39.       return this.zeroDigit;
  40.    }
  41.  
  42.    public void setZeroDigit(char var1) {
  43.       this.zeroDigit = var1;
  44.    }
  45.  
  46.    public char getGroupingSeparator() {
  47.       return this.groupingSeparator;
  48.    }
  49.  
  50.    public void setGroupingSeparator(char var1) {
  51.       this.groupingSeparator = var1;
  52.    }
  53.  
  54.    public char getDecimalSeparator() {
  55.       return this.decimalSeparator;
  56.    }
  57.  
  58.    public void setDecimalSeparator(char var1) {
  59.       this.decimalSeparator = var1;
  60.    }
  61.  
  62.    public char getPerMill() {
  63.       return this.perMill;
  64.    }
  65.  
  66.    public void setPerMill(char var1) {
  67.       this.perMill = var1;
  68.    }
  69.  
  70.    public char getPercent() {
  71.       return this.percent;
  72.    }
  73.  
  74.    public void setPercent(char var1) {
  75.       this.percent = var1;
  76.    }
  77.  
  78.    public char getDigit() {
  79.       return this.digit;
  80.    }
  81.  
  82.    public void setDigit(char var1) {
  83.       this.digit = var1;
  84.    }
  85.  
  86.    public char getPatternSeparator() {
  87.       return this.patternSeparator;
  88.    }
  89.  
  90.    public void setPatternSeparator(char var1) {
  91.       this.patternSeparator = var1;
  92.    }
  93.  
  94.    public String getInfinity() {
  95.       return this.infinity;
  96.    }
  97.  
  98.    public void setInfinity(String var1) {
  99.       this.infinity = var1;
  100.    }
  101.  
  102.    public String getNaN() {
  103.       return this.NaN;
  104.    }
  105.  
  106.    public void setNaN(String var1) {
  107.       this.NaN = var1;
  108.    }
  109.  
  110.    public char getMinusSign() {
  111.       return this.minusSign;
  112.    }
  113.  
  114.    public void setMinusSign(char var1) {
  115.       this.minusSign = var1;
  116.    }
  117.  
  118.    char getExponentialSymbol() {
  119.       return this.exponential;
  120.    }
  121.  
  122.    void setExponentialSymbol(char var1) {
  123.       this.exponential = var1;
  124.    }
  125.  
  126.    String getCurrencySymbol() {
  127.       return this.currencySymbol;
  128.    }
  129.  
  130.    void setCurrencySymbol(String var1) {
  131.       this.currencySymbol = var1;
  132.    }
  133.  
  134.    String getInternationalCurrencySymbol() {
  135.       return this.intlCurrencySymbol;
  136.    }
  137.  
  138.    void setInternationalCurrencySymbol(String var1) {
  139.       this.intlCurrencySymbol = var1;
  140.    }
  141.  
  142.    char getMonetaryDecimalSeparator() {
  143.       return this.monetarySeparator;
  144.    }
  145.  
  146.    void setMonetaryDecimalSeparator(char var1) {
  147.       this.monetarySeparator = var1;
  148.    }
  149.  
  150.    public Object clone() {
  151.       try {
  152.          return (DecimalFormatSymbols)super.clone();
  153.       } catch (CloneNotSupportedException var1) {
  154.          throw new InternalError();
  155.       }
  156.    }
  157.  
  158.    public boolean equals(Object var1) {
  159.       if (var1 == null) {
  160.          return false;
  161.       } else if (this == var1) {
  162.          return true;
  163.       } else if (this.getClass() != var1.getClass()) {
  164.          return false;
  165.       } else {
  166.          DecimalFormatSymbols var2 = (DecimalFormatSymbols)var1;
  167.          return this.zeroDigit == var2.zeroDigit && this.groupingSeparator == var2.groupingSeparator && this.decimalSeparator == var2.decimalSeparator && this.percent == var2.percent && this.perMill == var2.perMill && this.digit == var2.digit && this.minusSign == var2.minusSign && this.patternSeparator == var2.patternSeparator && this.infinity.equals(var2.infinity) && this.NaN.equals(var2.NaN) && this.currencySymbol.equals(var2.currencySymbol) && this.intlCurrencySymbol.equals(var2.intlCurrencySymbol) && this.monetarySeparator == var2.monetarySeparator;
  168.       }
  169.    }
  170.  
  171.    public int hashCode() {
  172.       int var1 = this.zeroDigit;
  173.       var1 = var1 * 37 + this.groupingSeparator;
  174.       var1 = var1 * 37 + this.decimalSeparator;
  175.       return var1;
  176.    }
  177.  
  178.    private void initialize(Locale var1) {
  179.       String[][] var2 = (String[][])cachedLocaleData.get(var1);
  180.       if (var2 == null) {
  181.          var2 = new String[2][];
  182.          ResourceBundle var5 = ResourceBundle.getBundle("java.text.resources.LocaleElements", var1);
  183.          var2[0] = var5.getStringArray("NumberElements");
  184.          var2[1] = var5.getStringArray("CurrencyElements");
  185.          cachedLocaleData.put(var1, var2);
  186.       }
  187.  
  188.       String[] var3 = var2[0];
  189.       String[] var4 = var2[1];
  190.       this.decimalSeparator = var3[0].charAt(0);
  191.       this.groupingSeparator = var3[1].charAt(0);
  192.       this.patternSeparator = var3[2].charAt(0);
  193.       this.percent = var3[3].charAt(0);
  194.       this.zeroDigit = var3[4].charAt(0);
  195.       this.digit = var3[5].charAt(0);
  196.       this.minusSign = var3[6].charAt(0);
  197.       this.exponential = var3[7].charAt(0);
  198.       this.perMill = var3[8].charAt(0);
  199.       this.infinity = var3[9];
  200.       this.NaN = var3[10];
  201.       this.currencySymbol = var4[0];
  202.       this.intlCurrencySymbol = var4[1];
  203.       this.monetarySeparator = var4[2].charAt(0);
  204.    }
  205.  
  206.    private void readObject(ObjectInputStream var1) throws IOException, ClassNotFoundException {
  207.       var1.defaultReadObject();
  208.       if (this.serialVersionOnStream < 1) {
  209.          this.monetarySeparator = this.decimalSeparator;
  210.          this.exponential = 'E';
  211.       }
  212.  
  213.       this.serialVersionOnStream = 1;
  214.    }
  215. }
  216.