View Javadoc

1   /*
2    * Jour - java profiler and monitoring library
3    *
4    * Copyright (C) 2004 Jour team
5    *
6    * This library is free software; you can redistribute it and/or
7    * modify it under the terms of the GNU Library General Public
8    * License as published by the Free Software Foundation; either
9    * version 2 of the License, or (at your option) any later version.
10   *
11   * This library is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14   * Library General Public License for more details.
15   *
16   * You should have received a copy of the GNU Library General Public
17   * License along with this library; if not, write to the
18   * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19   * Boston, MA  02111-1307, USA.
20   */
21  package net.sf.jour.rt.swingmonitor.ui;
22  
23  import java.text.DecimalFormat;
24  
25  
26  public class FDouble implements Comparable {
27  	
28  	Double d;
29  	
30      public FDouble(String s) {
31          this.d = new Double(s);
32      }
33  			
34  	public FDouble(double d) {
35  		this.d = new Double(d); 
36  	}
37  	
38  	static DecimalFormat fDoubleFormat;
39  	
40  	static {
41  		fDoubleFormat = new DecimalFormat();
42  		fDoubleFormat.setMinimumFractionDigits(3);
43  		fDoubleFormat.setMaximumFractionDigits(3);
44  	}
45  	
46  	public String toString() {
47  	    if (d.isInfinite() || d.isNaN()) {
48  	        return "n/a";
49  	    }
50  		return fDoubleFormat.format(this.d.doubleValue());
51  	}
52  	
53  	public int compareTo(Object o)  {
54  		if (o instanceof FDouble) {
55  			return this.d.compareTo(((FDouble)o).d);
56  		} else {
57  			return 0;
58  		}
59  	}
60  }