Double Classe

Definição

A Double classe encapsula um valor do tipo double primitivo em um objeto.

[Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)]
public sealed class Double : Java.Lang.Number, IConvertible, IDisposable, Java.Lang.IComparable
[<Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)>]
type Double = class
    inherit Number
    interface IConvertible
    interface IComparable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herança
Atributos
Implementações

Comentários

A Double classe encapsula um valor do tipo double primitivo em um objeto. Um objeto do tipo Double contém um único campo cujo tipo é double.

Além disso, essa classe fornece vários métodos para converter um double em um String e um String em um double, bem como outras constantes e métodos úteis ao lidar com um double.

<-- Android removido: parágrafo no ValueBased

Essa é uma classe baseada em valor ; os programadores devem tratar instâncias #equals(Object) iguais a intercambiáveis e não devem usar instâncias para sincronização ou comportamento imprevisível. Por exemplo, em uma versão futura, a sincronização pode falhar. -->

<h2>equivalênciaRelation>Igualdade de ponto flutuante, equivalência e comparação</h2>

Os valores de ponto flutuante IEEE 754 incluem valores finitos não zeros, zeros assinados (+0.0 e -0.0), infinitos assinados Double#POSITIVE_INFINITY infinito positivo e Double#NEGATIVE_INFINITY infinito negativo) e Double#NaN NaN (não um número).

Uma <relação> em<equivalência/em> em um conjunto de valores é uma relação booliana em pares de valores reflexivos, simétricos e transitivos. Para obter mais discussões sobre relações de equivalência e igualdade de objetos, consulte a Object#equals Object.equals especificação. Uma relação de equivalência particiona os valores em que opera em conjuntos chamados classes de equivalência. Todos os membros da classe de equivalência são iguais uns aos outros na relação. Uma classe de equivalência pode conter apenas um único membro. Pelo menos para alguns fins, todos os membros de uma classe de equivalência são substituíveis uns pelos outros. Em particular, em uma expressão numérica valores equivalentes podem ser <substituídos></em> um pelo outro sem alterar o resultado da expressão, o que significa alterar a classe de equivalência do resultado da expressão.

Notavelmente, a operação interna em == valores de ponto flutuante é <não></em> uma relação de equivalência. Apesar de não definir uma relação de equivalência, a semântica do operador IEEE 754 == foi deliberadamente projetada para atender a outras necessidades de computação numérica. Há duas exceções em que as propriedades de uma relação de equivalência não são atendidas por == valores de ponto flutuante:

<ul>

<li>Se v1 e v2 ambos são NaN, então v1 == v2 tem o valor false. Portanto, para dois argumentos NaN, a <propriedade em>reflexive</em> de uma relação de equivalência é <em>não</em> atendida pelo == operador.

<li>Se v1 representa +0.0 enquanto v2 representa -0.0, ou vice-versa, então v1 == v2 tem o valor true mesmo +0.0 que e -0.0 são distinguíveis em várias operações de ponto flutuante. Por exemplo, 1.0/+0.0 avalia como infinito positivo enquanto 1.0/-0.0 é avaliado como <>infinito negativo</em> e infinito positivo e infinito negativo não são iguais uns aos outros nem equivalentes uns aos outros. Assim, enquanto uma entrada zero assinada geralmente determina o sinal de um resultado zero, devido à divisão por zero e +0.0-0.0 pode não ser substituída uma pela outra em geral. O sinal de uma entrada zero também tem um efeito não substituível no resultado de alguns métodos de biblioteca matemática.

</ul>

Para comparações ordenadas usando os operadores de comparação internos (<, <=etc.), os valores de NaN têm outra situação anômala: um NaN não é menor que, nem maior que, nem igual a qualquer valor, incluindo a si mesmo. Isso significa que a trichotomia da comparação não <><contém/em> espera.

Para fornecer a semântica apropriada para equals e compareTo métodos, esses métodos não podem simplesmente ser wrappers em torno == ou operações de comparação ordenadas. Em vez disso, Double#equals equals define os argumentos NaN como iguais uns aos outros e define que +0.0eles<não>/em< sejam iguais>, -0.0restaurando a reflexividade. Para comparações, Double#compareTo compareTo define uma ordem total em -0.0 que é menor que +0.0 e em que um NaN é igual a si mesmo e considerado maior que o infinito positivo.

A semântica operacional de equals e compareTo são expressas em termos de #doubleToLongBits conversão em bits dos valores de ponto flutuante em valores integrais.

A <ordenação> natural em/em< implementada por > é comparável consistente com iguais#compareTo compareTo. Ou seja, dois objetos são relatados como iguais por equals se e somente se compareTo nesses objetos retornar zero.

Os comportamentos ajustados definidos para equals e compareTo permitem que instâncias de classes wrapper funcionem corretamente com estruturas de dados convencionais. Por exemplo, definir valores naN como um equals para o outro permite que o NaN seja usado como um elemento de um java.util.HashSet HashSet ou como a chave de um java.util.HashMap HashMap. Da mesma forma, definir compareTo como uma ordenação total, incluindo +0.0, -0.0e NaN, permite que instâncias de classes wrapper sejam usadas como elementos de uma java.util.SortedSet SortedSet ou como chaves de um java.util.SortedMap SortedMap.

Adicionado em 1.0.

Java documentação para java.lang.Double.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Construtores

Nome Description
Double(Double)

Constrói um objeto recém-alocado Double que representa o argumento primitivo double .

Double(String)

Constrói um objeto recém-alocado Double que representa o valor de ponto flutuante do tipo double representado pela cadeia de caracteres.

Campos

Nome Description
Bytes

O número de bytes usados para representar um double valor.

MaxExponent

O expoente máximo que uma variável finita double pode ter.

MaxValue

Uma constante que contém o maior valor finito positivo do tipo double, (2-2<sup-52></sup>)· 2<sup>1023</sup>.

MinExponent

Expoente mínimo que uma variável normalizada double pode ter.

MinNormal

Uma constante que contém o menor valor normal positivo do tipodouble, 2<sup-1022></sup>.

MinValue

Uma constante que contém o menor valor positivo diferente de zero do tipodouble, 2<sup-1074></sup>.

NaN

Uma constante que contém um valor NaN (Não Número) do tipo double.

NegativeInfinity

Uma constante que contém o infinito negativo do tipo double.

PositiveInfinity

Uma constante que contém o infinito positivo do tipo double.

Precision

O número de bits no significando de um double valor.

Size

O número de bits usados para representar um double valor.

Propriedades

Nome Description
Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsInfinite

Retorna true se esse Double valor for infinitamente grande em magnitude, false caso contrário.

IsNaN

Retornará true se esse Double valor for um NaN (Não Número), false caso contrário.

JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniManagedPeerState

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
JniPeerMembers

Obtém os metadados JNI usados para invocar membros desse par Java.

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
ThresholdClass

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Number)
ThresholdType

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Number)
Type

A Class instância que representa o tipo doubleprimitivo.

Métodos

Nome Description
ByteValue()

Retorna o valor do número especificado como um byte.

(Herdado de Number)
Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Compare(Double, Double)

Compara os dois valores especificados double .

CompareTo(Double)

Compara dois Double objetos numericamente.

Construct(JniObjectReference, JniObjectReferenceOptions)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
DisposeUnlessReferenced()

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
DoubleToLongBits(Double)

Retorna uma representação do valor de ponto flutuante especificado de acordo com o layout de bit "formato duplo" do ponto flutuante IEEE 754.

DoubleToRawLongBits(Double)

Retorna uma representação do valor de ponto flutuante especificado de acordo com o layout de bit "formato duplo" do ponto flutuante IEEE 754, preservando os valores naN (Não-um-Número).

DoubleValue()

Retorna o double valor deste Double objeto.

Equals(Object)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
FloatValue()

Retorna o valor disso Double como um float após uma conversão primitiva de estreitamento.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
HashCode(Double)

Retorna um código hash para um double valor; compatível com Double.hashCode().

IntValue()

Retorna o valor disso Double como um int após uma conversão primitiva de estreitamento.

InvokeIsInfinite(Double)

Retorna true se o número especificado for infinitamente grande em magnitude, false caso contrário.

InvokeIsNaN(Double)

Retornará true se o número especificado for um valor false Não-um-Número (NaN), caso contrário.

IsFinite(Double)

Retorna true se o argumento for um valor finito de ponto flutuante; retorna false caso contrário (para argumentos NaN e infinito).

JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
LongBitsToDouble(Int64)

Retorna o double valor correspondente a uma determinada representação de bit.

LongValue()

Retorna o valor disso Double como um long após uma conversão primitiva de estreitamento.

Max(Double, Double)

Retorna o maior de dois double valores como se estivesse chamando Math#max(double, double) Math.max.

Min(Double, Double)

Retorna o menor de dois double valores como se estivesse chamando Math#min(double, double) Math.min.

Notify()

Ativa um único thread que está aguardando no monitor desse objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
ParseDouble(String)

Retorna um novo double inicializado para o valor representado pelo especificado String, conforme executado pelo valueOf método de classe Double.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
ShortValue()

Retorna o valor do número especificado como um short.

(Herdado de Number)
Sum(Double, Double)

Adiciona dois double valores juntos de acordo com o operador +.

ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToHexString(Double)

Retorna uma representação de cadeia de caracteres hexadecimal do double argumento.

ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
ToString(Double)

Retorna uma representação de cadeia de caracteres do double argumento.

UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
ValueOf(Double)

Retorna uma Double instância que representa o valor especificado double .

ValueOf(String)

Retorna um Double objeto que contém o double valor representado pela cadeia de scaracteres de argumento.

Wait()

Faz com que o thread atual aguarde até que seja despertado, normalmente sendo <notificado></em> ou <em>interrompido</em>.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Operadores

Nome Description
Explicit(Double to Double)

Converte o valor Doubleespecificado Double em .

Implantações explícitas de interface

Nome Description
IComparable.CompareTo(Object)

Compara esse valor com o objeto especificado para ordenação.

IConvertible.GetTypeCode()

Retorna o código de tipo para esse valor.

IConvertible.ToBoolean(IFormatProvider)

Converte esse valor em Boolean.

IConvertible.ToByte(IFormatProvider)

Converte esse valor em Byte.

IConvertible.ToChar(IFormatProvider)

Converte esse valor em Char.

IConvertible.ToDateTime(IFormatProvider)

DateTime A conversão não tem suporte e é geradaInvalidCastException.

IConvertible.ToDecimal(IFormatProvider)

Converte esse valor em Decimal.

IConvertible.ToDouble(IFormatProvider)

Converte esse valor em Double.

IConvertible.ToInt16(IFormatProvider)

Converte esse valor em Int16.

IConvertible.ToInt32(IFormatProvider)

Converte esse valor em Int32.

IConvertible.ToInt64(IFormatProvider)

Converte esse valor em Int64.

IConvertible.ToSByte(IFormatProvider)

Converte esse valor em SByte.

IConvertible.ToSingle(IFormatProvider)

Converte esse valor em Single.

IConvertible.ToString(IFormatProvider)

Converte esse valor em String.

IConvertible.ToType(Type, IFormatProvider)

Converte esse valor no tipo especificado por conversionType.

IConvertible.ToUInt16(IFormatProvider)

Converte esse valor em UInt16.

IConvertible.ToUInt32(IFormatProvider)

Converte esse valor em UInt32.

IConvertible.ToUInt64(IFormatProvider)

Converte esse valor em UInt64.

IJavaPeerable.Disposed()

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.Finalized()

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

(Herdado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

A Double classe encapsula um valor do tipo double primitivo em um objeto.

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada pelo tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

A Double classe encapsula um valor do tipo double primitivo em um objeto.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a