Double 类

定义

Double 类在对象中包装基元类型的 double 值。

[Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)]
public sealed class Double : Java.Lang.Number, IConvertible, IDisposable, Java.Interop.IJavaPeerable, 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
继承
属性
实现

注解

Double 类在对象中包装基元类型的 double 值。 类型的 Double 对象包含一个类型为 double..

此外,此类提供了几种方法,用于将 a double 转换为 a String 和 adoubleString,以及其他常量和方法在处理 a double时很有用。

<-- Android 删除:ValueBased 上的段落

这是 基于值的 类;程序员应将 #equals(Object)相等的实例视为可互换的实例,不应将实例用于同步,或者可能发生不可预知的行为。 例如,在将来的版本中,同步可能会失败。 -->

<h2>equivalenceRelation>Floating-point Equality、Equivalence 和 Comparison</h2>

IEEE 754 浮点值包括有限的非零值、有符号零(+0.0-0.0)、有符号无数 Double#POSITIVE_INFINITY正无穷大和 Double#NEGATIVE_INFINITY负无穷大),以及 Double#NaN NaN(非数字)。

一 <组值的等效>关系</em> 是对反反射、对称和可传递值的对的布尔关系。 有关等效关系和对象相等性的详细信息,请参阅 Object#equals Object.equals 规范。 等效关系将它所操作的值分区为称为 等价类的集。 等效类的所有成员在关系下彼此相等。 等效类只能包含单个成员。 至少出于某种目的,等效类的所有成员都相互替代。 具体而言,在数值表达式等效值中,可以<>相互替换</em>,而无需更改表达式的结果,这意味着更改表达式结果的等效类。

值得注意的是,浮点值的<>内置==操作不是</em> 等效关系。 尽管没有定义等价关系,但 IEEE 754 == 运算符的语义是故意设计为满足其他数值计算需求。 浮点值不满足 == 等价关系的属性有两个例外:

<ul>

<li>If v1 and v2 are are NaN, then v1 == v2 has the value false. 因此,对于两个 NaN 参数<,运算符不<满足==等效关系的<>反射></>em> 属性。

<li>如果v1表示+0.0同时v2-0.0表示,反之亦然,则v1 == v2具有值true,即使+0.0并且-0.0可在各种浮点运算下区分。 例如,计算结果为正无穷大, 1.0/+0.01.0/-0.0 计算结果 <为 em>负</em> 无穷大,正无穷大和负无穷大既不等于彼此,也不等效于彼此。 因此,虽然有符号零输入通常确定零结果的符号,因为除以零, +0.0 并且 -0.0 通常不能互相替代。 零输入的符号也对某些数学库方法的结果产生不可替代的影响。

</ul>

对于使用内置比较运算符(<<=)的有序比较,NaN 值具有另一种异常情况:NaN 既不小于、也不大于,也不等于任何值,包括自身。 这意味着比较的三分法不<<为>/em> 保留。

为了提供适当的语义 equalscompareTo 方法,这些方法不能只是包装器 == 或有序的比较操作。 Double#equals equals而是将 NaN 参数定义为彼此相等,并定义为 <+0.0 em>not</em> 等于-0.0,还原反射性。 对于比较,Double#compareTo compareTo定义一个小于+0.0和 NaN 等于自身且被视为大于正无穷大的总顺序-0.0

浮点值转换为整型值的 #doubleToLongBits 位表示的操作语义equalscompareTo

实现的 em 自然排序</em> 与相等相一致。><#compareTo compareTo 也就是说,当和仅当这些对象返回零时compareTo,两个对象将报告为相等equals

equals 包装类实例定义的调整行为并允许 compareTo 包装类的实例能够正常使用传统数据结构。 例如,将 NaN 值 equals 定义为彼此允许 NaN 用作元素 java.util.HashSet HashSet 或作为键 java.util.HashMap HashMap。 同样,定义为 compareTo 总排序,包括 +0.0-0.0和 NaN,允许包装类的实例用作元素 java.util.SortedSet SortedSet 或键 java.util.SortedMap SortedMap

在 1.0 中添加。

适用于 . 的 java.lang.DoubleJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

构造函数

名称 说明
Double(Double)

构造表示基元double参数的新分配Double对象。

Double(String)

构造一个新分配 Double 的对象,该对象表示字符串所表示类型的 double 浮点值。

字段

名称 说明
Bytes

用于表示值的 double 字节数。

MaxExponent

有限 double 变量的最大指数可能具有。

MaxValue

持有类型double最大正有限值的常量(2-2<sup-52></sup>)·2<sup>1023</sup>.

MinExponent

规范化 double 变量的最小指数可能具有。

MinNormal

一个常量,包含类型double为 2<sup-1022></sup> 的最小正正正值。

MinValue

一个常量,包含类型double为 2<sup-1074></sup> 的最小正非零值。

NaN

一个常量,包含类型的 doubleNot-a-Number (NaN) 值。

NegativeInfinity

一个常量,包含类型的 double负无穷大。

PositiveInfinity

一个常量,包含类型的 double正无穷大。

Precision

值符号 double 中的位数。

Size

用于表示值的 double 位数。

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
IsInfinite

true如果此值Double的大小无限大,则返回;否则返回false

IsNaN

true如果此值Double为 Not-a-Number (NaN),false则返回;否则返回。

JniIdentityHashCode

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
JniPeerMembers

Double 类在对象中包装基元类型的 double 值。

PeerReference

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

(继承自 Number)
ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

(继承自 Number)
Type

表示 Class 基元类型的 double实例。

方法

名称 说明
ByteValue()

返回指定数字的值作为一个 byte

(继承自 Number)
Clone()

创建并返回此对象的副本。

(继承自 Object)
Compare(Double, Double)

比较两个指定 double 值。

CompareTo(Double)

以数字方式比较两个 Double 对象。

Dispose()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
Dispose(Boolean)

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
DoubleToLongBits(Double)

根据 IEEE 754 浮点“双格式”位布局返回指定浮点值的表示形式。

DoubleToRawLongBits(Double)

根据 IEEE 754 浮点“双格式”位布局返回指定的浮点值的表示形式,保留 Not-a-Number (NaN) 值。

DoubleValue()

返回 doubleDouble 对象的值。

Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
FloatValue()

以缩小基元转换后的形式Double返回此值float

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
HashCode(Double)

返回值的 double 哈希代码;与 Double.hashCode()..

IntValue()

以缩小基元转换后的形式int返回此值Double

InvokeIsInfinite(Double)

true如果指定的数字无限大,false则返回,否则返回。

InvokeIsNaN(Double)

如果指定的数字是 Not-a-Number (NaN) 值,false则返回true;否则返回。

IsFinite(Double)

true如果参数是有限的浮点值,则false返回其他值(对于 NaN 和无穷大参数)。

JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
LongBitsToDouble(Int64)

返回 double 对应于给定位表示形式的值。

LongValue()

以缩小基元转换后的形式Double返回此值long

Max(Double, Double)

返回两 double 个值中的更大值,就像通过调用 Math#max(double, double) Math.max一样。

Min(Double, Double)

返回两 double 个值中的较小值,就像通过调用 Math#min(double, double) Math.min一样。

Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
ParseDouble(String)

返回一个新的 double 初始化值,由指定的 String值,由 valueOfDouble的方法执行。

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ShortValue()

返回指定数字的值作为一个 short

(继承自 Number)
Sum(Double, Double)

根据 + 运算符将两 double 个值一起相加。

ToArray<T>()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
ToHexString(Double)

返回参数的 double 十六进制字符串表示形式。

ToString()

返回对象的字符串表示形式。

(继承自 Object)
ToString(Double)

返回参数的 double 字符串表示形式。

UnregisterFromRuntime()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
ValueOf(Double)

返回一个 Double 表示指定 double 值的实例。

ValueOf(String)

返回一个 Double 对象,该对象包含 double 由参数字符串 s表示的值。

Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><>

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)

运算符

名称 说明
Explicit(Double to Double)

Double 类在对象中包装基元类型的 double 值。

显式接口实现

名称 说明
IComparable.CompareTo(Object)

Double 类在对象中包装基元类型的 double 值。

IConvertible.GetTypeCode()

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToBoolean(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToByte(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToChar(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToDateTime(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToDecimal(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToDouble(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToInt16(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToInt32(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToInt64(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToSByte(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToSingle(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToString(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToType(Type, IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToUInt16(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToUInt32(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IConvertible.ToUInt64(IFormatProvider)

Double 类在对象中包装基元类型的 double 值。

IJavaPeerable.Disposed()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.Finalized()

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Double 类在对象中包装基元类型的 double 值。

(继承自 Object)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

Double 类在对象中包装基元类型的 double 值。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于