Double 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
该 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.0 而 1.0/-0.0 计算结果 <为 em>负</em> 无穷大,正无穷大和负无穷大既不等于彼此,也不等效于彼此。 因此,虽然有符号零输入通常确定零结果的符号,因为除以零, +0.0 并且 -0.0 通常不能互相替代。 零输入的符号也对某些数学库方法的结果产生不可替代的影响。
</ul>
对于使用内置比较运算符(<等 <=)的有序比较,NaN 值具有另一种异常情况:NaN 既不小于、也不大于,也不等于任何值,包括自身。 这意味着比较的三分法不<<为>/em> 保留。
为了提供适当的语义 equals 和 compareTo 方法,这些方法不能只是包装器 == 或有序的比较操作。
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(String) |
构造一个新分配 |
字段
| 名称 | 说明 |
|---|---|
| Bytes |
用于表示值的 |
| MaxExponent |
有限 |
| MaxValue |
持有类型 |
| MinExponent |
规范化 |
| MinNormal |
一个常量,包含类型 |
| MinValue |
一个常量,包含类型 |
| NaN |
一个常量,包含类型的 |
| NegativeInfinity |
一个常量,包含类型的 |
| PositiveInfinity |
一个常量,包含类型的 |
| Precision |
值符号 |
| Size |
用于表示值的 |
属性
| 名称 | 说明 |
|---|---|
| Class |
返回此 |
| Handle |
基础 Android 实例的句柄。 (继承自 Object) |
| IsInfinite |
|
| IsNaN |
|
| JniIdentityHashCode |
该 |
| JniPeerMembers |
该 |
| PeerReference |
该 |
| ThresholdClass |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 (继承自 Number) |
| ThresholdType |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 (继承自 Number) |
| Type |
表示 |
方法
| 名称 | 说明 |
|---|---|
| ByteValue() |
返回指定数字的值作为一个 |
| Clone() |
创建并返回此对象的副本。 (继承自 Object) |
| Compare(Double, Double) |
比较两个指定 |
| CompareTo(Double) |
以数字方式比较两个 |
| Dispose() |
该 |
| Dispose(Boolean) |
该 |
| DoubleToLongBits(Double) |
根据 IEEE 754 浮点“双格式”位布局返回指定浮点值的表示形式。 |
| DoubleToRawLongBits(Double) |
根据 IEEE 754 浮点“双格式”位布局返回指定的浮点值的表示形式,保留 Not-a-Number (NaN) 值。 |
| DoubleValue() |
返回 |
| Equals(Object) |
指示其他对象是否“等于”此对象。 (继承自 Object) |
| FloatValue() |
以缩小基元转换后的形式 |
| GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
| HashCode(Double) |
返回值的 |
| IntValue() |
以缩小基元转换后的形式 |
| InvokeIsInfinite(Double) |
|
| InvokeIsNaN(Double) |
如果指定的数字是 Not-a-Number (NaN) 值, |
| IsFinite(Double) |
|
| JavaFinalize() |
当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。 (继承自 Object) |
| LongBitsToDouble(Int64) |
返回 |
| LongValue() |
以缩小基元转换后的形式 |
| Max(Double, Double) |
返回两 |
| Min(Double, Double) |
返回两 |
| Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
| NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
| ParseDouble(String) |
返回一个新的 |
| SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
| ShortValue() |
返回指定数字的值作为一个 |
| Sum(Double, Double) |
根据 + 运算符将两 |
| ToArray<T>() |
该 |
| ToHexString(Double) |
返回参数的 |
| ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
| ToString(Double) |
返回参数的 |
| UnregisterFromRuntime() |
该 |
| ValueOf(Double) |
返回一个 |
| ValueOf(String) |
返回一个 |
| 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) |
该 |
显式接口实现
扩展方法
| 名称 | 说明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
获取实例 |
| JavaAs<TResult>(IJavaPeerable) |
尝试强制 |
| JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
| JavaCast<TResult>(IJavaObject) |
该 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
尝试强制 |