1 /*
2 * #%L
3 * prolobjectlink-jpi-jtrolog
4 * %%
5 * Copyright (C) 2012 - 2018 WorkLogic Project
6 * %%
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Lesser General Public License as
9 * published by the Free Software Foundation, either version 2.1 of the
10 * License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Lesser Public License for more details.
16 *
17 * You should have received a copy of the GNU General Lesser Public
18 * License along with this program. If not, see
19 * <http://www.gnu.org/licenses/lgpl-2.1.html>.
20 * #L%
21 */
22 package jTrolog.terms;
23
24 /**
25 * Float class represents the float prolog data type
26 */
27 @SuppressWarnings("serial")
28 public class Float extends Number {
29
30 private float value;
31
32 public Float() {
33 }
34
35 public Float(float v) {
36 value = v;
37 }
38
39 public Float(String v) {
40 value = java.lang.Float.parseFloat(v);
41 }
42
43 /**
44 * Returns the value of the Float as int
45 */
46 public int intValue() {
47 return (int) value;
48 }
49
50 /**
51 * Returns the value of the Float as float
52 */
53 public float floatValue() {
54 return value;
55 }
56
57 /**
58 * Returns the value of the Float as double
59 */
60 public double doubleValue() {
61 return value;
62 }
63
64 /**
65 * Returns the value of the Float as long
66 */
67 public long longValue() {
68 return (long) value;
69 }
70
71 public String toString() {
72 return java.lang.Float.toString(value);
73 }
74
75 public boolean equals(Object n) {
76 if (n instanceof Float)
77 return Number.compareDoubleValues(this, (Number) n) == 0;
78 return false;
79 }
80 }