5

だからここに私のプログラムがあります:

文字列のみを含む ArrayList を作成します 以下を順番にリストに追加します

  • メアリー
  • ジョン
  • マヘンドラ
  • サラ
  • ホセ
  • ジュディ

拡張された for ループを使用してリストを出力します。 Harry を Mahendra の前に挿入し、John の後にリストから 4 番目の位置を削除します。

ここに私が書いたものがあります:

import java.util.ArrayList;
import java.util.Scanner;

public class Name {
    public static void main(String[] args) {
        ArrayList<String> names = new ArrayList<String>();
        Scanner input = new Scanner(System.in);
        names.add(input.nextLine());
        names.add(input.nextLine());
        names.add(input.nextLine());
        names.add(input.nextLine());
        names.add(input.nextLine());
        names.add(input.nextLine());
        names.add(input.nextLine());

        for (String n : names) {
        System.out.println(n);
        }
    }
}

追加と削除に問題があると思います。私は他のすべてがうまくいくはずだと信じています。

4

2 に答える 2

1

indexOf() を使用すると、特定のエントリの位置を見つけることができ、add(index, object) を使用すると、インデックスに挿入できます。

public static void main(String[] args) {
    List<String> names = new ArrayList<String>();

    names.add("Mary");
    names.add("John");
    names.add("Mahendra");
    names.add("Sara");
    names.add("Jose");
    names.add("Judy");

    names.add(names.indexOf("Mahendra"), "Harry");

    for (String name : names) {
        System.out.println(name);
    }
}
于 2012-11-02T03:27:53.237 に答える
1

以下のメソッドを使用して挿入および削除することをお勧めします。

void    add(int index, E element)
 E      remove(int index)

たとえばMahendra、インデックス 2 (インデックスは 0 から始まる) にある場合Harry、 の前に追加するにMahendraは、次のようにします。

  names.add(2, "Harry"); //This will push Mahendra at index 3

現在のインデックス 4 を削除するには、

  names.remove(4);

現在インデックス 5 になっている以前のインデックス 4 を削除するには、

  names.remove(5);
于 2012-11-02T03:19:53.440 に答える