0

私は 3 つの arraylist を持っています。ここでは、2 つの arraylist を連結して 3 つ目の arraylist に表示する必要があります。私のコーディングは以下のとおりです。

コーディング::

List<String> firstName  = new ArrayList<String>();
List<String> lastName  = new ArrayList<String>();
         /////inserting first name
         String string1 = "aaa";
         firstName.add(string1);
         String string2 = "bbb";
         firstName.add(string2);
         ///////inserting last name
         String string3 = "yyy";
         lastName.add(string3);
         String string4 = "zzz";
         lastName.add(string4);

 /////////first name 
        Iterator<String> iterator = firstName.iterator();
        while(iterator.hasNext()){
         String FirstName = iterator.next();
         System.out.println(" FirstName   "+FirstName);
        }
 //////////////last name
        Iterator<String> iterator1 = lastName.iterator();
        while(iterator1.hasNext()){
         String LastName = iterator1.next();
         System.out.println(" LastName  "+LastName);
        }
List<String> name=new ArrayList<String>();
        ///////////name=firstname+lastname
        Iterator<String> iterator11 = lastName.iterator();
        while(iterator11.hasNext()){
         name=firstName+lastName;///////here getting error
               ////////////what should I do here to add two arraylist<String> value
         System.out.println(" Name = FirstName+LastName  "+name);
        }

私が欲しい出力::

FirstName   aaa
FirstName   bbb
LastName  yyy
LastName  zzz
Name = FirstName+LastName aaayyy
Name = FirstName+LastName bbbzzz

しかし、2つのarrayListを連結して3番目のarrayListに表示する方法がわかりません。助けてください..よろしくお願いします..

4

6 に答える 6

7

リストのサイズが等しい場合は、それらを一緒に繰り返すことができます。

Iterator<String> iterator = firstName.iterator();
Iterator<String> iterator1 = lastName.iterator();

while(iterator.hasNext() && iterator1.hasNext()){
    String FirstName = iterator.next();
    String LastName = iterator1.next();
    // add FirstName and LastName to the new list here
}

アップデート

Iterator<String> iterator = firstName.iterator();
Iterator<String> iterator1 = lastName.iterator();
List<String> newList = new ArrayList<String>();

while(iterator.hasNext() && iterator1.hasNext()){
    String FirstName = iterator.next();
    String LastName = iterator1.next();
    newList.add(FirstName + " " + LastName);
}
于 2012-06-18T09:26:19.487 に答える
4
List<String> newList = new ArrayList<String>(firstName);
newList.addAll(lastName);

newList には firstName と LastName の要素が含まれます

編集:上記のコードは 2 つのリストを連結し、名リストの最後に姓を追加しています。リストの長さが同じ場合は、次を試すことができます。

List<String> newList = new ArrayList<String>();
for(int i=0;i<fistName.length();i++)
{
    newList.Add(firstName.get(i)+lastName.get(i));
}

Iterator<String> iter = newList.iterator();
while(iter.hasNext()){
    System.out.println(" Name = FirstName+LastName  "+iter.next());
    }

これにより、必要なリストが表示されます。

于 2012-06-18T09:23:50.123 に答える
1

ループで行う必要があります。

List<String> name=new ArrayList<String>();
for(i=0;i<firstname.length()&&i<lastname.length();i++){
    name.add(firstname.get(i) + lastname.get(i));
}
于 2012-06-18T09:27:30.263 に答える
0
ArrayList<String> fname=new ArrayList<String>();
fname.add("deepak");
fname.add("avinash");
fname.add("amit");
ArrayList<String> lname=new ArrayList<String>();
lname.add("goswami");
lname.add("singh");
lname.add("jha");
ArrayList<String> name=new ArrayList<String>();
Iterator<String> it1=fname.iterator();
Iterator<String> it2=lname.iterator();
while(it1.hasNext() && it2.hasNext()){
    String f=it1.next();
    String l=it2.next();
    name.add(f+" "+l);
}
for(String str:name){
    System.out.println(str);
}

} }

出力:

ディーパック・ゴスワミ・アビナッシュ・シン・アミット・ジャー

于 2014-12-19T18:08:44.437 に答える
0

したがって、他の 2 つのリストの要素を対ごとに連結して形成される文字列のリストを作成する必要があります。

最も簡単な方法は、ループを記述することです。

 ArrayList<String> l1 = ...
 ArrayList<String> l2 = ...
 ArrayList<String> l3 = new ArrayList<String>(l1.size());
 for (int i =- 0; i < l3.size(); i++) {
     l3.add(l1.get(i) + l2.get(i));
 }

l1これは、とl2が同じ長さであることを前提としています。ArrayList(注: ここでの宣言では意図的にリスト実装クラスを使用しています。このコードは を使用している場合にのみ適切であるLinkedListためget(i)です。

于 2012-06-18T09:29:26.207 に答える
0
public static void main(String[] args) {

    List<String> firstName = new ArrayList<String>();
    List<String> lastName = new ArrayList<String>();
    String string1 = "aaa";
    firstName.add(string1);
    String string2 = "bbb";
    firstName.add(string2);
    // /////inserting last name
    String string3 = "yyy";
    lastName.add(string3);
    String string4 = "zzz";
    lastName.add(string4);

    Iterator<String> iterator = firstName.iterator();
    Iterator<String> iterator1 = lastName.iterator();
    List<String> name = new ArrayList<String>();


    while (iterator.hasNext()&& iterator1.hasNext() ) {

        name.add(iterator.next()+" "+iterator1.next());
    }

    Iterator<String> iterator11 = name.iterator();
    while(iterator11.hasNext())
        System.out.println(iterator11.next());

}
于 2012-06-18T09:39:54.923 に答える