Guava Doubles 类
Doubles 是一个用于处理原始类型 double 的实用工具类。
类声明
下面是 com.google.common.primitives.Doubles 类的声明 − com.google.common.primitives.Doubles 类 –
@GwtCompatible(emulated = true)
public final class Doubles
extends Object
字段
排名 | 字段与描述 |
---|---|
1 | static int BYTES 表示一个原始double值所需的字节数。 |
方法
序号 | 方法和描述 |
---|---|
1 | static List |
2 | static int compare(double a, double b) 比较两个指定的double值。 |
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) 如果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.valueOf(java.lang.String) 和 Double.toString() 在字符串和双精度数之间进行转换。 |
16 | static double[] toArray(Collection <? extends Number> collection) 返回一个包含 collection 的每个值的数组,将其转换为双精度数值,转换方式与 Number.doubleValue() 相同。 |
17 | static 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? true
5.0 position in list 4
Min: 1.0
Max: 9.0