Java Mania

Java Mania

Arrays

配列に関する検索やソートなどの様々なメソッドを扱うクラス。 非常に使いやすく便利なメソッドが多いので、絶対使いこなせるようになって欲しい。
Arraysに関して私が良く忘れる大切な点をひとつ。 binarySearchを実行する前に必ずsortを行なわなければならない。
HomePageTop▲

How To Use -使用方法-

Arraysクラスは下記のように使用する。

メソッドの説明
※全てのメソッドを網羅していないので、詳細はAPIリファレンスを参照する。
public static List asList(Object[] a)
aの配列を元にリストを作成する。
public static int binarySearch(Object[] a,Object key)
aの配列の要素にkeyがあるかどうか検索する。
public static boolean equals(Object[] a,Object[] a2)
aとa2の配列が同じかどうか検索する。
public static void fill(Object[] a,Object val)
aの配列をvalで埋める。
public static void sort(Object[] a)
aの配列をソートする。
HomePageTop▲

Source -ArraysTest.java-

package mania.test;

import java.util.*;

public class ArraysTest
{
  // Arraysの使用方法
  public static void main(String args[])
  {
    System.out.println("===実行結果===");

    String[] array = { "DOG", "PIG", "CAT", "MOUSE" };
    String[] newArray = { "ANIMAL", "ANIMAL", "ANIMAL", "ANIMAL" };

    // ソート前
    System.out.println("ソート前");
    write(array);

    // ソート後
    Arrays.sort(array);
    System.out.println("ソート後");
    write(array);

    // PIGの検索
    System.out.print("PIGの位置:");
    System.out.println(Arrays.binarySearch(array, "PIG"));

    // ANIMALで埋める
    Arrays.fill(array, "ANIMAL");
    write(array);

    // 配列が等しいか確認
    System.out.print("arrayとnewArrayが等しいか:");
    System.out.println(Arrays.equals(array, newArray));
  }

  public static void write(String[] array)
  {
    for(int i = 0; i < array.length; i ++ )
    {
      System.out.print(array[i]);
      System.out.print(" ");
    }
    System.out.println();
  }
}
HomePageTop▲

Results -実行結果-


===実行結果===
ソート前
DOG PIG CAT MOUSE 
ソート後
CAT DOG MOUSE PIG 
PIGの位置:3
ANIMAL ANIMAL ANIMAL ANIMAL 
arrayとnewArrayが等しいか:true

HomePageTop▲

Copyright (C) 2006, JavaMania. All Rights Reserved.