2つの秩序あるListを統合し、秩序を維持


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

public class SortList {

	public static List sort(List list1 , List list2){
		List list = new ArrayList();
		int i = 0 , j = 0;
		while(i < list1.size() && j < list2.size()){
			if(list1.get(i) < list2.get(j)){
				list.add(list1.get(i++));
			}else{
				list.add(list2.get(j++));
			}
		}
		while(i < list1.size()){
			list.add(list1.get(i++));
		}
		while(j < list2.size()){
			list.add(list2.get(j++));
		}
		return list;
	}
	
	public static void main(String[] args) {
		List list1 = new ArrayList();
		list1.add(1);
		list1.add(2);
		list1.add(4);
		list1.add(7);
		list1.add(9);
		list1.add(10);
		list1.add(13);
		list1.add(16);
		list1.add(19);
		
		List list2 = new ArrayList();
		list2.add(0);
		list2.add(3);
		list2.add(5);
		list2.add(8);
		list2.add(11);
		list2.add(17);
		list2.add(25);
		list2.add(30);
		
		System.out.println(SortList.sort(list1, list2));
	}
	
}