Class Decimal

java.lang.Object
java.lang.Number
xyz.ukrainskiys.decimal.Decimal
All Implemented Interfaces:
Serializable, Comparable<Decimal>

public class Decimal extends Number implements Comparable<Decimal>, Serializable
See Also:
  • Constructor Details

    • Decimal

      public Decimal(BigDecimal bigDecimal)
      
       new Decimal() == 0
       new Decimal(BigDecimal.valueOf(666)) == 666
       Decimal.of(666) == 666
       Decimal.of(6.66) == 6.66
       Decimal.ofKopecks(12345) == 123.45
    • Decimal

      public Decimal()
  • Method Details

    • of

      public static Decimal of(int value)
    • of

      public static Decimal of(long value)
    • of

      public static Decimal of(double value)
    • of

      public static Decimal of(String value)
    • of

      public static Decimal of(BigDecimal value)
    • ofKopecks

      public static Decimal ofKopecks(long kopecks)
    • more

      public boolean more(Decimal other)
      
       Decimal.HUNDRED.more(Decimal.TEN) == true
       Decimal.HUNDRED.less(Decimal.TEN) == false
       Decimal.HUNDRED.more(100) == false
    • more

      public boolean more(BigDecimal other)
    • more

      public boolean more(int value)
    • more

      public boolean more(long value)
    • more

      public boolean more(double value)
    • more

      public boolean more(String value)
    • less

      public boolean less(Decimal other)
    • less

      public boolean less(BigDecimal other)
    • less

      public boolean less(int value)
    • less

      public boolean less(long value)
    • less

      public boolean less(double value)
    • less

      public boolean less(String value)
    • max

      public Decimal max(Decimal value)
    • min

      public Decimal min(Decimal value)
    • add

      public Decimal add(Decimal other)
    • add

      public Decimal add(BigDecimal other)
    • add

      public Decimal add(int value)
    • add

      public Decimal add(long value)
    • add

      public Decimal add(double value)
    • add

      public Decimal add(String value)
    • subtract

      public Decimal subtract(Decimal other)
    • subtract

      public Decimal subtract(BigDecimal other)
    • subtract

      public Decimal subtract(int value)
    • subtract

      public Decimal subtract(long value)
    • subtract

      public Decimal subtract(double value)
    • subtract

      public Decimal subtract(String value)
    • multiply

      public Decimal multiply(Decimal other)
    • multiply

      public Decimal multiply(BigDecimal other)
    • multiply

      public Decimal multiply(int value)
    • multiply

      public Decimal multiply(long value)
    • multiply

      public Decimal multiply(double value)
    • multiply

      public Decimal multiply(String value)
    • safeDivide

      public Decimal safeDivide(Decimal other)
      
       Decimal.HUNDRED.safeDivide(10) == 10
       Decimal.HUNDRED.safeDivide(33) == 3.0303030303
    • safeDivide

      public Decimal safeDivide(BigDecimal other)
    • safeDivide

      public Decimal safeDivide(int value)
    • safeDivide

      public Decimal safeDivide(long value)
    • safeDivide

      public Decimal safeDivide(double value)
    • safeDivide

      public Decimal safeDivide(String value)
    • ofPercent

      public Decimal ofPercent(int percent)
      
       Decimal.of(200).ofPercent(50) == 100
    • is

      public boolean is(Decimal other)
      
       Decimal.of(10).is(BigDecimal.TEN) == true
       Decimal.of(10.00).is(10) == true
    • is

      public boolean is(BigDecimal other)
    • is

      public boolean is(int value)
    • is

      public boolean is(double value)
    • is

      public boolean is(long value)
    • safeSetScale

      public Decimal safeSetScale(int scale)
      
       Decimal.of(3.0303030303).safeSetScale(1) == 3.0
       Decimal.of(3.0303030303).setScaleWithKopecks() == 3.03
    • setScaleWithKopecks

      public Decimal setScaleWithKopecks()
    • getBigDecimal

      public BigDecimal getBigDecimal()
    • intValue

      public int intValue()
      Specified by:
      intValue in class Number
    • longValue

      public long longValue()
      Specified by:
      longValue in class Number
    • floatValue

      public float floatValue()
      Specified by:
      floatValue in class Number
    • doubleValue

      public double doubleValue()
      Specified by:
      doubleValue in class Number
    • compareTo

      public int compareTo(Decimal o)
      Specified by:
      compareTo in interface Comparable<Decimal>
    • toString

      public String toString()
      Overrides:
      toString in class Object