Guava - Doubles 类

Doubles 是基本类型 double 的实用程序类。

类声明

以下是 com.google.common.primitives.Doubles 类的声明 −

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

Fields

Sr.No 字段和描述
1

static int BYTES

表示原始双精度值所需的字节数。

方法

Sr.No 方法及描述
1

static List<Double> asList(double... backingArray)

返回由指定数组支持的固定大小列表,类似于 Arrays.asList(Object[])。

2

static int compare(double a, double b)

比较两个指定的双精度值。

3

static double[] concat(double[]... arrays)

返回每个提供的数组中组合成单个数组的值。

4

static boolean contains(double[] array, double target)

如果目标作为元素出现在数组中的任何位置,则返回 true。

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.toString(double) 指定的字符串,并用分隔符分隔。

11

static int lastIndexOf(double[] array, double target)

返回值目标在数组中最后一次出现的索引。

12

static Comparator<double[]> lexicographicalComparator()

返回一个比较器,按字典顺序比较两个双精度数组。

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.valueOf(java.lang.String) 和 Double.toString() 在字符串和双精度数之间进行转换。

16

static double[] toArray(Collection<? extends Number> collection)

返回一个包含集合中每个值的数组,通过Number.doubleValue()的方式转换为double值。

17

static Double tryParse(String string)

将指定字符串解析为双精度浮点值。

继承的方法

该类继承了以下类的方法 −

  • java.lang.Object

Example of Doubles Class

使用您在 C:/> Guava 中选择的任何编辑器创建以下 java 程序。

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

guava_primitive_utilities.html