Guava-longs

提供:Dev Guides
移動先:案内検索

グアバ-ロングクラス

Longsは、プリミティブ型longのユーティリティクラスです。

クラス宣言

以下は com.google.common.primitives.Longs クラスの宣言です-

@GwtCompatible
public final class Longs
   extends Object

フィールド

Sr.No Field & Description
1

static int BYTES

プリミティブなlong値を表すのに必要なバイト数。

2

static long MAX_POWER_OF_TWO

longとして表現できる最大の2のべき乗。

方法

Sr.No Method & Description
1

static List<Long> asList(long…​ backingArray)

Arrays.asList(Object [])と同様に、指定された配列に連動する固定サイズのリストを返します。

2

static int compare(long a, long b)

指定された2つの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バイトに格納されているlong値を返します。 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バイトであるlong値をビッグエンディアン順に返します。 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)

配列内の値ターゲットの最後の外観のインデックスを返します。

13

static Comparator<long[]> lexicographicalComparator()

2つの長い配列を辞書式に比較するコンパレーターを返します。

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()の方法でlong値に変換します。

18

static byte[] toByteArray(long value)

値のビッグエンディアン表現を8要素のバイト配列で返します。 ByteBuffer.allocate(8).putLong(value).array()と同等です。

19

static Long tryParse(String string)

指定された文字列を符号付き10進数のlong値として解析します。

継承されるメソッド

このクラスは、次のクラスからメソッドを継承します-

  • java.lang.Object

Longsクラスの例

たとえば、* C:/> Guava。*で選択したエディターを使用して、次のJavaプログラムを作成します。

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