Guava Doubles 类

来源:这里教程网 时间:2026-02-17 21:39:13 作者:

Guava Doubles 类

Doubles 是一个用于处理原始类型 double 的实用工具类。

类声明

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

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

字段

排名字段与描述
1static int BYTES 表示一个原始double值所需的字节数。

方法

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

继承的方法

这个类继承了以下类的方法:

java.lang.Object

Double类的示例

使用任意文本编辑器在例如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? true5.0 position in list 4Min: 1.0Max: 9.0

相关推荐