Guava Longs類

Longs是基本類型long的實用工具類。

類聲明

以下是com.google.common.primitives.Longs類的聲明:

@GwtCompatible public final class Longs extends Object

字段

S.N.

字段及說明

1

static int BYTES
所需要的字節數來表示一個原始long 值。

2

static long MAX_POWER_OF_TWO
兩個最大冪可以被表示爲一個long。

方法

S.N.

方法及說明

1

static List asList(long... backingArray)
返回由指定數組支持的固定大小的列表,類似Arrays.asList(Object[]).

2

static int compare(long a, long b)
比較兩個指定數的long值。

3

static long[] concat(long[]... arrays)
每個數組提供組合成一個單一的數組,則返回值。

4

static boolean contains(long[] array, long target)
返回true,如果target是否存在在任何地方數組元素。

5

static long[] ensureCapacity(long[] array, int minLength, int padding)
返回一個包含相同的值數組的數組,但保證是一個規定的最小長度。

6

static long fromByteArray(byte[] bytes)
返回long值,其大端表示存儲在頭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)
返回long值,字節表示的是給定的8個字節,在big-endian的順序;相當於 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)
返回目標數組的首次出現的索引值。

10

static int indexOf(long[] array, long[] target)
返回指定目標的第一個匹配的起始位置數組內,或-1,如果不存在。

11

static String join(String separator, long... array)
返回包含由分離器分離所提供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().

17

static long[] toArray(Collection<? extends Number> collection)
返回包含集合的每個值的數組,轉換爲一個long值的方式Number.longValue().

18

static byte[] toByteArray(long value)
返回字節數組值大端在8元素的表示;相當於 ByteBuffer.allocate(8).putLong(value).array().

19

static Long tryParse(String string)
Parses the specified string as a signed decimal long value.

繼承的方法

這個類繼承了以下類方法:

  • java.lang.Object

Longs 示例

使用所選擇的任何編輯器創建下面的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