AuD
Lecture 'Algorithmen und Datenstrukturen' (code examples)
Number.java
Go to the documentation of this file.
1package aud.example.expr;
2
6public class Number extends Terminal {
7
8 double value_;
9
11 public Number(double value) { value_=value; }
12
13 @Override public double getValue() { return value_; }
14
15 @Override public Type getType() { return Type.TNumber; }
16
17 @Override public Number clone() { return new Number(value_); }
18
19 @Override public String toString() {
20 String text=String.format("%.12g",value_);
21
22 // remove trailing zeros (HACK due to java's limited formatting)
23 if (text.contains(".") && !text.contains("eE"))
24 text=text.replaceFirst("\\.?0*$","");
25
26 return text;
27 }
28}
Node representing constant number.
Definition: Number.java:6
Type getType()
Get type identifier.
Definition: Number.java:15
Number clone()
Get a copy: a new AtomicExpression of same type/content.
Definition: Number.java:17
Number(double value)
create number
Definition: Number.java:11
double getValue()
get value
Definition: Number.java:13
Node represents a terminal AtomicExpression.
Definition: Terminal.java:12
type identifiers returned by getType