使用subList后,原List不允许再进行修改

 

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

/**
 * 类 Test 的实现描述:TODO 类实现描述
 * @author spring
 * Jul 16, 20129:46:14 AM
 */
public class Test {

    /**
     * @author spring
     * Jul 16, 20129:46:14 AM
     * @param args
     * @throws Exception 
     */
    public static void main(String[] args) {
      
    List<String> list = new ArrayList<String>();
    list.add("a");
    list.add("b");
    
    List<String> subList = list.subList(0,1);
    
    list.add("c");
    
    System.out.println(subList);
    
    }

 在同个方法中,如果对一个List使用过subList截取后,不能再对原List进行修改,否则会有运行时异常。如上面的情况,由于第6行使用过subList,则当第20行再对原list进行修改后,会导致28行出错。

你可能感兴趣的:(subList)