/**
 * 
 */
package types;

/**
 * @author Giorgio Ravera
 *
 */
public class Numero extends Symbol
{ 
	protected float number;
	
	/**
	 * Costruttore di default.<br />Associa una stringa a un tipo di simbolo.
	 */
	public Numero(String s) 
	{
		super(s, Type.cifra);
		valore = Float.parseFloat(s);
	}
	
	public Numero(float f) 
	{
		super((new Float(f)).toString(), Type.cifra);
		valore = f;
	}

	public boolean equals(Object o)
	{
		if(super.equals(o))
		{
			return this.valore == (((Numero)o).valore);
		}
		else return false;
	}
	
	/*
	 * Verifica se la cifra inserita  un numero
	 */
	public static Symbol castNumber(String s)
	{
		float n = 0;
		try
		{
			n = Float.parseFloat(s);
		}
		catch(NumberFormatException nfe)
		{
			return null;
		}
		return new Numero(n);
	}
	
	public float getNumber() { return valore; }

}