Skip to content

Instantly share code, notes, and snippets.

@YukiYoshikawa
Created May 6, 2013 13:14
Show Gist options
  • Save YukiYoshikawa/5525035 to your computer and use it in GitHub Desktop.
Save YukiYoshikawa/5525035 to your computer and use it in GitHub Desktop.
package trial.yy.guava.client.primitives;
import com.google.common.primitives.Longs;
import java.util.Arrays;
import java.util.List;
/**
* com.google.common.primitives.Longsを試すためのサンプル
* User: yy
*/
public class LongsClient {
public static void main(String[] args) {
// long[] ⇒ List<Long> の変換
System.out.println("### Longs.asList execute");
long[] srcArray = new long[] { 1L, 2L, 3L, 5L };
List<Long> destList = Longs.asList(srcArray);
System.out.println("destList : " + destList);
// long[] ⇒ List<Long> の変換はArrays.asListではできない
// List<Long> bList = Arrays.asList(srcArray); ← コンパイルエラー
// LongのCollection ⇒ long[] の変換
System.out.println("### Longs.toArray execute");
List<Long> srcList = Longs.asList(1L, 1L, 10L, 100L);
long[] destArray1 = Longs.toArray(srcList);
System.out.println("destArray1 : " + Arrays.toString(destArray1));
// List<Long> ⇒ long[] の変換はCollection.toArrayではできない
// long[] array = (long[]) srcList.toArray(new long[srcList.size()]); ← コンパイルエラー
// 複数のlong配列を結合して一つのlong配列にする
System.out.println("### Longs.concat execute");
long[] srcArray1 = new long[] { 1L, 2L };
long[] srcArray2 = new long[] { 1000L, 2000L };
long[] destArray2 = Longs.concat(srcArray1, srcArray2);
System.out.println("destArray2 : " + Arrays.toString(destArray2));
// long配列の各要素を指定した区切り文字列で連結した文字列を取得
System.out.println("### Longs.join execute");
long[] srcArray3 = new long[] { 2013L, 4L, 10L };
String joinedStr = Longs.join("/", srcArray3);
System.out.println("joinedStr : " + joinedStr);
// long配列の中の最大値、最小値を取得
System.out.println("### Longs.max,min execute");
long[] array1 = new long[] { 10L, 11L, 12L, 5L, 1L, 100L, 200L, 300L };
System.out.println(Arrays.toString(array1) + " max -> " + Longs.max(array1));
System.out.println(Arrays.toString(array1) + " min -> " + Longs.min(array1));
// long配列の中の指定の値を含むかどうかを取得
System.out.println("### Longs.contains execute");
long[] array2 = new long[] { 10L, 11L, 12L, 5L, 1L, 100L, 200L, 300L };
System.out.println(Arrays.toString(array2) + " contains 5 -> " + Longs.contains(array2, 5L));
System.out.println(Arrays.toString(array2) + " contains 0 -> " + Longs.contains(array2, 0L));
// long型の値の比較(compare)
System.out.println("### Longs.compare execute");
System.out.println("1 compare 2 -> " + Longs.compare(1L, 2L));
System.out.println("2 compare 1 -> " + Longs.compare(2L, 1L));
System.out.println("1 compare 1 -> " + Longs.compare(1L, 1L));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment