Ignore:
Timestamp:
11/02/08 13:05:01 (16 years ago)
Author:
ra33
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/simple/SString.java

    r235 r376  
    33public class SString extends SPrimitive<String> {
    44        public static String prefix = SVariable.prefix + "s" + SVariable.separator;
     5
     6        Double doubleValue_ = null;
    57
    68        public SString() {
     
    1214        }
    1315
    14         public SString(String value) /*throws Exception*/ {
     16        public SString(String value) /* throws Exception */{
    1517                super(value);
    1618        }
     
    1921        public void parse(String s) {
    2022                value_ = s;
     23                doubleValue_ = null;
    2124        }
    2225
     
    3942        @Override
    4043        public Double doubleValue() {
     44                if (doubleValue_ != null)
     45                        return doubleValue_;
     46
    4147                if (value_.equals(""))
    42                         return 0.0;
    43                 try {
    44                         return Double.parseDouble(value_);
    45                 } catch (NumberFormatException ne) {
     48                        doubleValue_ = 0.0;
     49                else {
     50                        try {
     51                                doubleValue_ = Double.parseDouble(value_);
     52                        } catch (NumberFormatException ne) {
     53                                try{
     54                                doubleValue_ =(double) Long.decode(value_);
     55                                }catch(Exception e){
     56                                        doubleValue_ = Double.NaN;
     57                                }
     58                        }
    4659                }
    47                 return (double) Long.decode(value_);
     60                return doubleValue_;
    4861        }
    4962
     
    6477        public void setValue(SPrimitive v) {
    6578                value_ = v.stringValue();
     79                doubleValue_ = null;
    6680        }
    6781
Note: See TracChangeset for help on using the changeset viewer.