Translate

2015年11月23日月曜日

ArrayList

■追加

値のみで、一番最後に追加、
indexと、値でindex番号に追加

import java.util.List;
import java.util.ArrayList;

public class Sample {
 public static void main(String[] args){
  List list = new ArrayList();
  list.add("a");
  list.add("b");
  list.add("d");
  list.add("e");
  
  list.add(2, "c"); //途中に追加
  list.add(list.size(), "f"); //最後に追加

  String[] arrStrings = (String[])list.toArray(new String[list.size()]);
  System.out.println(String.join(", ", arrStrings));


 }
}

一番最後の要素+1(size)より大きい数字を指定するとエラーになる。
java.lang.IndexOutOfBoundsException: Index: 100, Size: 6

addAllはリストごと追加
import java.util.List;
import java.util.ArrayList;

public class Sample {
 public static void main(String[] args){
  List listA = new ArrayList();
  listA.add("a");
  listA.add("b");
  listA.add("c");
  
  List listB = new ArrayList();
  listB.add("d");
  listB.add("e");
  listB.add("f");
  
  listA.addAll(listB);
  
  String[] arrStrings = (String[])listA.toArray(new String[listA.size()]);
  System.out.println(String.join(", ", arrStrings));
 }
}


ほかいろいろ。
import java.util.List;
import java.util.ArrayList;

public class Sample {
 public static void main(String[] args){
  List list = new ArrayList();
  System.out.println(list.isEmpty()); //true 
  
  list.add("a");
  list.add("b");
  list.add("c");
  list.add("b");
  list.add("a");
  
  System.out.println(list.contains("c")); //true
  System.out.println(list.contains("d")); //false
  
  
  System.out.println(list.get(0)); //a
  System.out.println(list.indexOf("b")); //1 最初から探査して最初にマッチする要素
  System.out.println(list.lastIndexOf("b")); //3 最後から探査して最初にマッチする要素
  
  list.set(3,  "z"); //4番目の要素をdに変える
  list.remove("a"); //最初にマッチしたaを消す
  list.remove(list.size() - 1); //最後の要素を消す
  
  String[] arrStrings = (String[])list.toArray(new String[list.size()]);
  System.out.println(String.join(", ", arrStrings)); //b, c, z
 }
}

0 件のコメント: