美文网首页
Java面试-笔试题-List l = new Lis

Java面试-笔试题-List l = new Lis

作者: 故作谦卑 | 来源:发表于2018-06-01 22:57 被阅读0次

    以下代码有什么问题?

    import java.util.List;
    
    /**
     * 
     * @author catchegg
     * create date: 2018年6月1日 下午10:16:08
     */
    public class TestClear {
        public TestClear() {}   
        public static void main(String[] args) {
            List<int> l = new List<int>();
            l.clear();
        }
    }
    

    在eclipse直接报错:Syntax error, insert "Dimensions" to complete ReferenceType,语法错误,将“Dimensions”插入到完整ReferenceType 中.
    原因:泛形要求能包容的是对象类型,而基本类型在java里不属于对象,可以使用基本类型的包装类代替。

    修改为List<Integer> l = new List<>();
    继续报错:Cannot instantiate the type List,不能实例化类型List。
    原因:List是接口,不能实例化对象,可以改成其实现类ArrayList。
    List<Integer> l = new ArrayList<>();

    关于clear()方法,它只是清除属性,不会删除对象,通常当我们不需要再使用ArrayList对象时,可以将变量值设为null即l = null ;,以便GC可以运作并回收这部分内存空间。

    以上内容如有错误,欢迎与我讨论,共同进步!

    相关文章

      网友评论

          本文标题:Java面试-笔试题-List l = new Lis

          本文链接:https://www.haomeiwen.com/subject/vtklsftx.html