Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでコレクションの要素を取得する方法はいくつありますか?


コレクションオブジェクトのコンテンツは、次の3つの方法で取得できます-

foreachループの使用

foreachループまたは拡張forループ。これにより、コレクションオブジェクト全体を順番にトラバースできます。

import java.util.ArrayList;
public class RetrievingData {
   public static void main(String[] args) {
      ArrayList <String> list = new ArrayList<String>();
      //Instantiating an ArrayList object
      list.add("JavaFX");
      list.add("Java");
      list.add("WebGL");
      list.add("OpenCV");
      list.add("OpenNLP");
      list.add("JOGL");
      list.add("Hadoop");
      list.add("HBase");
      list.add("Flume");
      list.add("Mahout");
      list.add("Impala");
      System.out.println("Contents of the array list: ");
      for (String e: list)
         System.out.println(e);
   }
}

出力

Contents of the array list:
JavaFX
Java
WebGL
OpenCV
OpenNLP
JOGL
Hadoop
HBase
Flume
Mahout
Impala

イテレータの使用

Javaには、コレクションオブジェクトの要素を取得するためのIteratorクラスとListIteratorクラスが用意されています。

  • hasNext() これらのインターフェイスのメソッドは、コレクションオブジェクトに次の要素がある場合はtrueを返し、そうでない場合はfalseを返します。

  • next() IteratorおよびListIteratorのメソッドは、コレクションの次の要素を返します。

これらの2つのメソッドを使用して、イテレータオブジェクトからコンテンツを取得できます。

  • 同様に、 previous() ListIteratorのメソッドはコレクションの前の要素を返し、hasPrevious()は現在のコレクションオブジェクトに前の要素があるかどうかを判断します。

IteratorメソッドとListIterator()メソッドを使用して、コレクションのIteratorまたはListIteratorオブジェクトを取得できます。

import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class RetrievingData {
   public static void main(String[] args) {
      ArrayList <String> list = new ArrayList<String>();
      //Instantiating an ArrayList object
      list.add("JavaFX");
      list.add("Java");
      list.add("WebGL");
      list.add("OpenCV");
      list.add("OpenNLP");
      list.add("JOGL");
      list.add("Hadoop");
      list.add("HBase");
      list.add("Flume");
      list.add("Mahout");
      list.add("Impala");
      System.out.println("Contents of the array list (first to last): ");
      Iterator it = list.iterator();
      while(it.hasNext()) {
         System.out.println(it.next());
      }
      System.out.println("Contents of the array list (last to first): ");
      ListIterator lit = list.listIterator();
      while(lit.hasNext()) {
         lit.next();
      }
      while(lit.hasPrevious()) {
         System.out.println(lit.previous());
      }
   }
}

出力

Contents of the array list (first to last):
JavaFX
Java
WebGL
OpenCV
OpenNLP
JOGL
Hadoop
HBase
Flume
Mahout
Impala
Contents of the array list (last to first):
Impala
Mahout
Flume
HBase
Hadoop
JOGL
OpenNLP
OpenCV
WebGL
Java
JavaFX

列挙の使用

Enumerationクラスには、 hasMoreElements()という名前のメソッドが含まれています これは、現在のオブジェクトに現在の位置の後にさらに多くの要素が含まれている場合はtrueを返します(そうでない場合はfalseを返します)。

EnumerationクラスのnextElement()メソッドを呼び出すと、現在の列挙オブジェクトの次の要素が返されます。

これらの2つのメソッドを使用して、コレクションオブジェクトのコンテンツを取得できます。

import java.util.Enumeration;
import java.util.Vector;
public class EnumerationExample {
   public static void main(String args[]) {
      //instantiating a Vector
      Vector<Integer> vec = new Vector<Integer>( );
      //Populating the vector
      vec.add(1254);
      vec.add(4587);
      vec.add(5211);
      vec.add(4205);
      vec.add(1124);
      vec.add(8115);
      //Retrieving the elements using the Enumeration
      Enumeration<Integer> en = vec.elements();
      while(en.hasMoreElements()) {
         System.out.println(en.nextElement());
      }
   }
}

出力

1254
4587
5211
4205
1124
8115

  1. JavaでinvokeLater()メソッドを呼び出すにはどうすればよいですか?

    invokeLater() メソッドは静的です SwingUtilitiesのメソッド クラスであり、タスクを非同期に実行するために使用できます。 AWT イベントディスパッチャスレッド 。 SwingUtilities.invokeLater() メソッドはSwingUtilities.invokeAndWait()のように機能します ただし、リクエストはイベントキューに配置されます そしてすぐに戻る 。 invokeLater() メソッドは、実行可能内のコードのブロックを待機しません ターゲットによって参照されます 実行します。 構文 public static void in

  2. JavaでJComboBoxのアイテムを並べ替えるにはどうすればよいですか?

    JComboBox JComponentのサブクラスです クラスであり、テキストフィールドの組み合わせです。 およびドロップダウンリスト ユーザーはそこから値を選択できます。 JComboBox ActionListener、ChangeListener、を生成できます およびItemListener ユーザーがコンボボックスでアクションを実行するときのインターフェイス。デフォルトでは、JComboBoxはアイテムの並べ替えをサポートしていません。 DefaultComboBoxModel を拡張することで、コードをカスタマイズできます。 クラス。 例 import java.awt