Java Guava Doubles类

1 什么是Guava Doubles类

Doubles 是原始类型 double 的实用程序类。

2 Guava Doubles类的语法

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

3 Guava Doubles类的方法

方法 描述
static List<Double> asList(double... backingArray) 返回由指定数组支持的固定大小列表,类似于 Arrays.asList(Object[])。
static int compare(double a, double b) 比较两个指定的Double值。
static double[] concat(double[]... arrays) 返回每个提供的数组中组合成单个数组的值。
static boolean contains(double[] array, double target) 如果目标作为数组中任何位置的元素存在,则返回 true。
static double[] ensureCapacity(double[] array, int minLength, int padding) 返回包含与数组相同的值的数组,但保证具有指定的最小长度。
static int hashCode(double value) 返回值的哈希码;等于调用 ((Double) value).hashCode() 的结果。
static int indexOf(double[] array, double target) 返回值目标在数组中第一次出现的索引。
static int indexOf(double[] array, double[] target) 返回指定目标在数组中第一次出现的起始位置,如果没有这样的出现,则返回 -1。
static boolean isFinite(double value) 如果 value 表示实数,则返回 true。
static String join(String separator, double... array) 返回一个包含提供的 double 值的字符串,转换为 Double.toString(double) 指定的字符串,并由分隔符分隔。
static int lastIndexOf(double[] array, double target) 返回值目标在数组中最后一次出现的索引。
static Comparator<double[]> lexicographicalComparator() 返回按字典顺序比较两个Double数组的比较器。
static double max(double... array) 返回数组中存在的最大值,使用与 Math.max(double, double) 相同的比较规则。
static double min(double... array) 返回数组中存在的最小值,使用与 Math.min(double, double) 相同的比较规则。
static Converter<String,Double> stringConverter() 返回一个可序列化的转换器对象,该对象使用 Double.valueOf(java.lang.String) 和 Double.toString() 在字符串和Double之间进行转换。
static double[] toArray(Collection<? extends Number> collection) 返回一个包含collection的每个值的数组,以Number.doubleValue()的方式转换为double值。
static Double tryParse(String string) 将指定的字符串解析为双精度Double值。

5 Guava Doubles类的例子

让我们看一个简单的Guava Doubles类示例。

package com.yiidian;

import com.google.common.primitives.Doubles;

import java.util.List;

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));	
   }
}

输出结果为:

 

热门文章

优秀文章