Guava Doubles類

Doubles是double基本類型的實用工具類。

類聲明

以下是com.google.common.primitives.Doubles類的聲明:

@GwtCompatible(emulated=true) public final class Doubles extends Object

字段

S.N.

字段及說明

1

static int BYTES
所需要的字節數來表示基本的double值。

方法

S.N.

方法及說明

1

static List asList(double... backingArray)
返回由指定數組支持的固定大小的列表,類似 Arrays.asList(Object[]).

2

static int compare(double a, double b)
比較兩個指定的double值。

3

static double[] concat(double[]... arrays)
每個數組提供組合成一個單一的數組,則返回值。

4

static boolean contains(double[] array, double target)
返回true,如果target是否存在在任何地方數組元素。

5

static double[] ensureCapacity(double[] array, int minLength, int padding)
返回一個包含相同的值數組的數組,但保證是一個規定的最小長度。

6

static int hashCode(double value)
返回哈希碼的值;等於調用 ((Double) value).hashCode() 的結果.

7

static int indexOf(double[] array, double target)
返回目標數組的首次出現的索引值。

8

static int indexOf(double[] array, double[] target)
返回指定目標的第一個匹配的起始位置數組內,或-1,如果不存在。

9

static boolean isFinite(double value)
返回true,如果值代表一個實數。

10

static String join(String separator, double... array)
返回包含所提供的double 值的字符串,所指定的轉換爲字符串 Double.toString(double), 及相隔分離。

11

static int lastIndexOf(double[] array, double target)
返回target 在數組中最後一個出現的索引值。

12

static Comparator<double[]> lexicographicalComparator()
返回一個比較,比較兩個double陣列字典順序。

13

static double max(double... array)
返回存在於數組的最大值,使用比較爲相同的規則 Math.max(double, double).

14

static double min(double... array)
返回存在於數組的最小值,使用比較爲相同的規則 Math.min(double, double).

15

static Converter<String,Double> stringConverter()
返回字符串轉換之間和double採用序列化器對象 Double.valueOf(java.lang.String) and Double.toString().

16

static double[] toArray(Collection<? extends Number> collection)
返回一個包含集合中的每個值的數組,轉換爲double值的方式Number.doubleValue().

17

static Double tryParse(String string)
解析指定的字符串作爲一個雙精度浮點值。

方法繼承

這個類繼承了以下類方法:

  • java.lang.Object

Doubles 示例

使用所選擇的任何編輯器創建下面的java程序 C:/> Guava

GuavaTester.java

import java.util.List; import com.google.common.primitives.Doubles; public class GuavaTester { public static void main(String args[]){ GuavaTester tester = new GuavaTester(); tester.testDoubles(); } private void testDoubles(){ double[] doubleArray = {1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0}; //convert array of primitives to array of objects List<Double> objectArray = Doubles.asList(doubleArray); System.out.println(objectArray.toString()); //convert array of objects to array of primitives doubleArray = Doubles.toArray(objectArray); System.out.print("[ "); for(int i = 0; i< doubleArray.length ; i++){ System.out.print(doubleArray[i] + " "); } System.out.println("]"); //check if element is present in the list of primitives or not System.out.println("5.0 is in list? "+ Doubles.contains(doubleArray, 5.0f)); //return the index of element System.out.println("5.0 position in list "+ Doubles.indexOf(doubleArray, 5.0f)); //Returns the minimum System.out.println("Min: " + Doubles.min(doubleArray)); //Returns the maximum System.out.println("Max: " + Doubles.max(doubleArray)); } }

驗證結果

使用javac編譯器編譯如下類

C:\Guava>javac GuavaTester.java

現在運行GuavaTester看到的結果

C:\Guava>java GuavaTester

看到結果。

[1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]
[ 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 ]
5.0 is in list? true
5.0 position in list 4
Min: 1.0
Max: 9.0