Class Amount
- All Implemented Interfaces:
Serializable,Comparable<Amount>
amount da mesma maneira que o Vision.
Em linhas gerais, todas as variáveis Amount
são arredondadas na segunda casa decimal usando o modo
HALF_UP, e todas as operações aritméticas que
envolvem Amount resultam em Amount.
Nas operações aritméticas que envolvem variáveis Amount,
é preciso converter todas essas variáveis para double
com o método val(). O resultado calculado deve necessariamente
ser convertido para Amount com Amount.toAmount.
Este resultado pode ser atribuído à variável do resultado se ela for Amount,
ou então convertido para o tipo da variável usando val()
(se for double) ou intValue() (se for int).
Cada objeto Amount armazena internamente
um BigDecimal com essas características.
Da mesma forma como um objeto BigDecimal é
imutável, um Amount é imutável.
Propositalmente, não há operações matemáticas públicas que envolvam
objetos BigDecimal. Isto obriga ao uso de Amount.
A classe também fornece métodos estáticos para a conversão de tipos de dados, facilitando a migração automática do código Vision para o código Java.
Cabe lembrar que as operações aritméticas que não envolvem variáveis tipo
amount funcionam no Java da mesma maneira que no Vision.
O uso de argumentos nulos não é previsto, e deve gerar
NullPointerException.
- See Also:
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionadd(int integer) intcompareTo(int integer) intintcompareTo(BigDecimal bigDecimal) static Amountdesc(double total, double porcentagem) Calcula o valor resultante do desconto de um total a partir da porcentagem informada.static AmountCalcula o valor resultante do desconto de um total a partir da porcentagem informada.static AmountCalcula o valor resultante do desconto de um total a partir da porcentagem informada.static AmountCalcula o valor resultante do desconto de um total a partir da porcentagem informada.static doubledescDouble(double total, double porcentagem) Calcula o desconto sem arredondar, e retorna o valor double resultante.static doubledescDouble(double total, Amount porcentagem) Calcula o desconto sem arredondar, e retorna o valor double resultante.static doubledescDouble(Amount total, double porcentagem) Calcula o desconto sem arredondar, e retorna o valor double resultante.static doubledescDouble(Amount total, Amount porcentagem) Calcula o desconto sem arredondar, e retorna o valor double resultante.doubleRetorna o valordoubledesteAmount.booleanVerifica se os BigDecimais internos são iguais.floatinthashCode()Retorna o hash code doBigDecimalinterno.intintValue()Retorna o valorintdesteAmount.longstatic Amountmultiply(double val1, double val2) Calcula a multiplição de dois números e retorna o valor arredondado paraAmount.static AmountCalcula a multiplição de dois números e retorna o valor arredondado paraAmount.static AmountCalcula a multiplição de dois números e retorna o valor arredondado paraAmount.static AmountCalcula a multiplição de dois números e retorna o valor arredondado paraAmount.static Amountmultiply(BigDecimal val1, BigDecimal val2) Calcula a multiplição de dois números e retorna o valor arredondado paraAmount.negate()Conveniência para inverter um amount (multiplicar por -1).static Amountperc(double total, double porcentagem) Calcula o valor percentual de um total a partir da porcentagem informada.static AmountCalcula o valor percentual de um total a partir da porcentagem informada.static AmountCalcula o valor percentual de um total a partir da porcentagem informada.static AmountCalcula o valor percentual de um total a partir da porcentagem informada.intsignum()Facilita as comparações com zero.sub(int integer) static AmounttoAmount(double dbl) Substituito_amount$do Vision.static AmounttoAmount(int integer) Substituito_amount$do Vision.static AmountSubstituito_amount$do Vision.static AmounttoAmount(BigDecimal bigDecimal) Substituito_amount$do Vision.Retorna o valorBigDecimaldesteAmount.static doubletoDouble(double dbl) Substituito_float$do Vision.static doubletoDouble(int integer) Substituito_float$do Vision.static doubleSubstituito_float$do Vision.static doubletoDouble(BigDecimal bigDecimal) Substituito_float$do Vision.static inttoInt(double dbl) Substituito_numeric$do Vision.static inttoInt(int integer) Substituito_numeric$do Vision.static intSubstituito_numeric$do Vision.static inttoInt(BigDecimal bigDecimal) Substituito_numeric$do Vision.static intTransformaTimepara minutos.toString()Formata para impressão em relatórios.doubleval()Atalho paradoubleValue().Methods inherited from class java.lang.Number
byteValue, shortValue
-
Field Details
-
ZERO
-
ONE
-
TWO
-
TEN
-
HUNDRED
-
THOUSAND
-
-
Method Details
-
add
-
add
-
sub
-
sub
-
toBigDecimal
Retorna o valorBigDecimaldesteAmount.Não deve ser usado em meio a cálculos no NXJ. Deve ser usado em outras operações quando o que importa é aplicar o resultado obtido, como no retorno de funções ou ao passar um parâmetro para comandos SQL (
setBigDecimal).- Returns:
- o valor
BigDecimal
-
intValue
public int intValue()Retorna o valorintdesteAmount.Deve ser usado quando o resultado é atribuído a uma variável
intou quando umAmounté convertido paraintem meio a um cálculo. -
doubleValue
public double doubleValue()Retorna o valordoubledesteAmount.Deve ser usado quando o resultado é atribuído a uma variável
doubleou quando umAmounté convertido paradoubleem meio a um cálculo.- Specified by:
doubleValuein classNumber
-
longValue
public long longValue() -
floatValue
public float floatValue()- Specified by:
floatValuein classNumber
-
val
public double val()Atalho paradoubleValue().- Returns:
- o valor
double
-
toDouble
Substituito_float$do Vision.- Parameters:
bigDecimal- o valor a ler- Returns:
- o valor
double
-
toDouble
Substituito_float$do Vision.- Parameters:
amount- o valor a ler- Returns:
- o valor
double
-
toDouble
public static double toDouble(int integer) Substituito_float$do Vision.- Parameters:
integer- o valor a ler- Returns:
- o valor
double
-
toDouble
public static double toDouble(double dbl) Substituito_float$do Vision.- Parameters:
dbl- o valor a ler- Returns:
- o valor
double
-
toInt
Substituito_numeric$do Vision.- Parameters:
bigDecimal- o valor a ler- Returns:
- o valor
int
-
toInt
Substituito_numeric$do Vision.- Parameters:
amount- o valor a ler- Returns:
- o valor
int
-
toInt
public static int toInt(int integer) Substituito_numeric$do Vision.- Parameters:
integer- o valor a ler- Returns:
- o valor
int
-
toInt
public static int toInt(double dbl) Substituito_numeric$do Vision.- Parameters:
dbl- o valor a ler- Returns:
- o valor
int
-
toInt
TransformaTimepara minutos.- Parameters:
time- um horário do dia- Returns:
- os minutos do dia contidos nesse horário
-
toAmount
Substituito_amount$do Vision. Força o uso de duas casas decimais.- Parameters:
bigDecimal- o valor a ler- Returns:
- o valor
Amount
-
toAmount
Substituito_amount$do Vision. Força o uso de duas casas decimais.- Parameters:
amount- o valor a ler- Returns:
- o valor
Amount
-
toAmount
Substituito_amount$do Vision. Força o uso de duas casas decimais.- Parameters:
integer- o valor a ler- Returns:
- o valor
Amount
-
toAmount
Substituito_amount$do Vision. Força o uso de duas casas decimais.- Parameters:
dbl- o valor a ler- Returns:
- o valor
Amount
-
compareTo
-
compareTo
- Specified by:
compareToin interfaceComparable<Amount>
-
compareTo
public int compareTo(int integer) -
signum
public int signum()Facilita as comparações com zero.- Returns:
- -1, 0 ou 1 se for menor, igual ou maior que zero
-
negate
Conveniência para inverter um amount (multiplicar por -1).- Returns:
- o inverso deste amount, da mesma maneira que
BigDecimal.negate().
-
perc
Calcula o valor percentual de um total a partir da porcentagem informada.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor percentual
-
desc
Calcula o valor resultante do desconto de um total a partir da porcentagem informada. Para isso, calcula primeiro o desconto com essa porcentagem, arredonda-o convenientemente, e então subtrai-o do total.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor total menos o desconto
-
descDouble
public static double descDouble(double total, double porcentagem) Calcula o desconto sem arredondar, e retorna o valor double resultante. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
total- o valor totalporcentagem- a porcentagem a descontar- Returns:
- o valor resultante após o desconto, sem arredondar, em
double
-
perc
Calcula o valor percentual de um total a partir da porcentagem informada.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor percentual
-
perc
Calcula o valor percentual de um total a partir da porcentagem informada.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor percentual
-
perc
Calcula o valor percentual de um total a partir da porcentagem informada.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor percentual
-
desc
Calcula o valor resultante do desconto de um total a partir da porcentagem informada. Para isso, calcula primeiro o desconto com essa porcentagem, arredonda-o convenientemente, e então subtrai-o do total.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor total menos o desconto
-
desc
Calcula o valor resultante do desconto de um total a partir da porcentagem informada. Para isso, calcula primeiro o desconto com essa porcentagem, arredonda-o convenientemente, e então subtrai-o do total.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor total menos o desconto
-
desc
Calcula o valor resultante do desconto de um total a partir da porcentagem informada. Para isso, calcula primeiro o desconto com essa porcentagem, arredonda-o convenientemente, e então subtrai-o do total.- Parameters:
total- o totalporcentagem- a porcentagem- Returns:
- o valor total menos o desconto
-
descDouble
Calcula o desconto sem arredondar, e retorna o valor double resultante. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
total- o valor totalporcentagem- a porcentagem a descontar- Returns:
- o valor resultante após o desconto, sem arredondar, em
double
-
descDouble
Calcula o desconto sem arredondar, e retorna o valor double resultante. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
total- o valor totalporcentagem- a porcentagem a descontar- Returns:
- o valor resultante após o desconto, sem arredondar, em
double
-
descDouble
Calcula o desconto sem arredondar, e retorna o valor double resultante. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
total- o valor totalporcentagem- a porcentagem a descontar- Returns:
- o valor resultante após o desconto, sem arredondar, em
double
-
multiply
Calcula a multiplição de dois números e retorna o valor arredondado paraAmount. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
val1-val2-- Returns:
- o produto arredondado como
Amount
-
multiply
Calcula a multiplição de dois números e retorna o valor arredondado paraAmount. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
val1-val2-- Returns:
- o produto arredondado como
Amount
-
multiply
Calcula a multiplição de dois números e retorna o valor arredondado paraAmount. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
val1-val2-- Returns:
- o produto arredondado como
Amount
-
multiply
Calcula a multiplição de dois números e retorna o valor arredondado paraAmount. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
val1-val2-- Returns:
- o produto arredondado como
Amount
-
multiply
Calcula a multiplição de dois números e retorna o valor arredondado paraAmount. Usa internamenteBigDecimalpara contornar eventuais problemas de arredondamento que ocorrem no uso exclusivo de double.- Parameters:
val1-val2-- Returns:
- o produto arredondado como
Amount
-
hashCode
public int hashCode()Retorna o hash code doBigDecimalinterno. -
equals
Verifica se os BigDecimais internos são iguais. -
toString
Formata para impressão em relatórios.
-