Guava Longs 类
Longs 是一个用于原始类型 long 的实用类。
类声明
下面是 com.google.common.primitives.Longs 类的声明 –
@GwtCompatible
public final class Longs
extends Object
字段
序号 | 字段和描述 |
---|---|
1 | static int BYTES 表示原始 long 值所需的字节数。 |
2 | static long MAX_POWER_OF_TWO 可以表示为长整型的最大二次方数。 |
方法
Sr.No | Method & Description |
---|---|
1 | static List |
2 | static int compare(long a, long b) 比较指定的两个long值。 |
3 | static long[] concat(long[]… arrays) 返回每个提供的数组合并成一个单独的数组的值。 |
4 | static boolean contains(long[] array, long target) 如果目标在数组的任何位置作为元素出现,则返回true。 |
5 | static long[] ensureCapacity(long[] array, int minLength, int padding) 返回一个包含与数组相同值的数组,但保证最小长度为指定长度。 |
6 | static long fromByteArray(byte[] bytes) 返回在字节数组的前8个字节中存储的大端表示的长整型值;等效于 ByteBuffer.wrap(bytes).getLong()。 |
7 | static long fromBytes(byte b1, byte b2, byte b3, byte b4, byte b5, byte b6, byte b7, byte b8) 返回以给定的8个字节的字节表示的长整型值,按照大端顺序;等效于 Longs.fromByteArray(new byte[] {b1, b2, b3, b4, b5, b6, b7, b8})。 |
8 | static int hashCode(long value) 返回值的哈希码;等效于调用 ((Long) value).hashCode() 的结果。 |
9 | static int indexOf(long[] array, long target) 返回数组中第一个出现的目标值 target 的索引。 |
10 | static int indexOf(long[] array, long[] target) 返回数组中指定目标值的首次出现位置的起始位置,如果没有这样的出现,则返回 -1。 |
11 | static String join(String separator, long… array) 返回一个由分隔符 separator 分隔的提供的 long 值组成的字符串。 |
12 | static int lastIndexOf(long[] array, long target) 返回数组中最后一个出现的目标值 target 的索引。 |
13 | static Comparator <long[]> lexicographicalComparator() 返回一个对比两个long数组按字典顺序进行比较的比较器。 |
14 | static long max(long… array) 返回数组中最大的值。 |
15 | static long min(long… array) 返回数组中最小的值。 |
16 | static Converter <String,Long> stringConverter() 返回一个可序列化的转换器对象,使用Long.decode(java.lang.String)和Long.toString()将字符串和long类型相互转换。 |
17 | static long[] toArray(Collection <? extends Number> collection)返回一个包含集合中每个值转换为长整型值的数组,方式与Number.longValue()相似。 18 静态方法 toByteArray(long value) 返回一个包含以大端表示的 value 的 8 个元素的字节数组;等同于 ByteBuffer.allocate(8).putLong(value).array()。 19 静态方法 tryParse(String string) 解析指定的字符串作为有符号的十进制长整型值。 |
继承方法
这个类继承以下类的方法 –
- java.lang.Object
Longs类的示例
使用您选择的任何编辑器在C:/> Guava中创建以下Java程序。 **C:/ > Guava. **
GuavaTester.java
import java.util.List;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
public class GuavaTester {
public static void main(String args[]) {
GuavaTester tester = new GuavaTester();
tester.testLongs();
}
private void testLongs() {
long[] longArray = {1,2,3,4,5,6,7,8,9};
//convert array of primitives to array of objects
List<Long> objectArray = Longs.asList(longArray);
System.out.println(objectArray.toString());
//convert array of objects to array of primitives
longArray = Longs.toArray(objectArray);
System.out.print("[ ");
for(int i = 0; i< longArray.length ; i++) {
System.out.print(longArray[i] + " ");
}
System.out.println("]");
//check if element is present in the list of primitives or not
System.out.println("5 is in list? "+ Longs.contains(longArray, 5));
//Returns the minimum
System.out.println("Min: " + Longs.min(longArray));
//Returns the maximum
System.out.println("Max: " + Longs.max(longArray));
//get the byte array from an integer
byte[] byteArray = Longs.toByteArray(20000);
for(int i = 0; i< byteArray.length ; i++) {
System.out.print(byteArray[i] + " ");
}
}
}
验证结果
使用 javac 编译器编译该类,如下所示−
C:\Guava>javac GuavaTester.java
现在运行GuavaTester以查看结果。
C:\Guava>java GuavaTester
查看结果。
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[ 1 2 3 4 5 6 7 8 9 ]
5 is in list? true
Min: 1
Max: 9
0 0 0 0 0 0 78 32