2016-03-09 10:38:53 +00:00
|
|
|
package com.bytezone.diskbrowser.visicalc;
|
|
|
|
|
2016-03-11 21:56:02 +00:00
|
|
|
class Number implements Value
|
2016-03-09 10:38:53 +00:00
|
|
|
{
|
2016-03-16 19:32:25 +00:00
|
|
|
private double value;
|
|
|
|
private ValueType valueType;
|
2016-03-09 10:38:53 +00:00
|
|
|
|
2016-03-11 21:56:02 +00:00
|
|
|
public Number (String text)
|
2016-03-09 10:38:53 +00:00
|
|
|
{
|
2016-03-11 21:56:02 +00:00
|
|
|
try
|
|
|
|
{
|
2016-03-16 06:15:39 +00:00
|
|
|
value = Double.parseDouble (text);
|
2016-03-11 21:56:02 +00:00
|
|
|
}
|
|
|
|
catch (NumberFormatException e)
|
|
|
|
{
|
2016-03-16 19:32:25 +00:00
|
|
|
valueType = ValueType.ERROR;
|
2016-03-11 21:56:02 +00:00
|
|
|
}
|
2016-03-09 10:38:53 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2016-03-16 06:15:39 +00:00
|
|
|
public boolean isError ()
|
2016-03-09 10:38:53 +00:00
|
|
|
{
|
2016-03-16 19:32:25 +00:00
|
|
|
return valueType == ValueType.ERROR;
|
2016-03-16 06:15:39 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public boolean isNaN ()
|
|
|
|
{
|
|
|
|
return Double.isNaN (value);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String toString ()
|
|
|
|
{
|
|
|
|
return String.format ("Number: %f", value);
|
2016-03-09 10:38:53 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2016-03-12 05:05:50 +00:00
|
|
|
public double getValue ()
|
2016-03-09 10:38:53 +00:00
|
|
|
{
|
2016-03-12 05:05:50 +00:00
|
|
|
return value;
|
2016-03-09 10:38:53 +00:00
|
|
|
}
|
2016-03-11 21:56:02 +00:00
|
|
|
|
|
|
|
@Override
|
2016-03-16 06:15:39 +00:00
|
|
|
public String getText ()
|
2016-03-11 21:56:02 +00:00
|
|
|
{
|
2016-03-16 06:15:39 +00:00
|
|
|
return null;
|
2016-03-11 21:56:02 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2016-03-16 06:15:39 +00:00
|
|
|
public void calculate ()
|
2016-03-11 21:56:02 +00:00
|
|
|
{
|
|
|
|
}
|
2016-03-16 19:32:25 +00:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public ValueType getValueType ()
|
|
|
|
{
|
|
|
|
return null;
|
|
|
|
}
|
2016-03-09 10:38:53 +00:00
|
|
|
}
|