`
longming_xu
  • 浏览: 84814 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
文章分类
社区版块
存档分类
最新评论

学习:List list = new ArrayList()与ArrayList list = new ArrayList();的区别.

 
阅读更多
<转载学习>List list = new ArrayList()与ArrayList list = new ArrayList();的区别.

List是一个接口,而ListArray是一个类。 ListArray继承并实现了List。

List list = new ArrayList();这句创建了一个ArrayList的对象后把上溯到了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。

为什么一般都使用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?

问题就在于List有多个实现类,现在你用的是ArrayList,也许哪一天你需要换成其它的实现类,如 LinkedList或者Vector等等,这时你只要改变这一行就行了:List list = new LinkedList(); 其它使用了list地方的代码根本不需要改动。假设你开始用 ArrayList alist = new ArrayList(), 这下你有的改了,特别是如果你使用了 ArrayList特有的方法和属性。  所以建议大家,如果没有特别需求的话,最好使用List list = new LinkedList(); ,便于程序代码的重构.
0
0
分享到:
评论

相关推荐

    使用对象ArrayList填充DataGrid,C#源代码ArrayList MyList = new ArrayList();

    使用对象ArrayList填充DataGrid,C#源代码ArrayList MyList = new ArrayList();

    list.size()==0与list==null、emptyList

    list.size()与list==null的区别 两者的区别是显而易见的,下面这两段就能显示两者差别: List list1 = new ArrayList(); System.out.println(list1.size());//0 List list2 = null; System.out.println(list2.size()...

    Java期末考试试题(一)

    B .List myList=new ArrayList(); C.ArrayList myList=new List(); D. List myList=new List(); 2.paint()方法使用哪种类型的参数? A Graphics B Graphics2D C String D Color 3.指出正确的表达式 A ...

    ArrayList.txt

    ArrayList&lt;String&gt; list=new ArrayList(); 2、ArrayList(int initialCapacity)  //这是第三个构造方法,构造了一个指定大小但内容为空的链表。 //initialCapacity参数就是初始容量大小。 //如果你需要创建一...

    java实现innerjoin关联算法

    List,Object&gt;&gt; list1 = new ArrayList(); List,Object&gt;&gt; list2 = new ArrayList(); List,Object&gt;&gt; list3 = new ArrayList(); 现在需要根据一个输入的字符"list1.column1=list2.column2,list1.column3=list3.column4...

    viewpager相关

    views = new ArrayList(); LayoutInflater layoutInflater = getLayoutInflater(); View view1 = layoutInflater.inflate(R.layout.view1, null); View view2 = layoutInflater.inflate(R.layout.view...

    C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据)

     在工作中经常遇到C#数组、ArrayList、List、Dictionary存取数据,但是该选择哪种类型进行存储数据,对于初学者的我一直不知道该怎么取舍。于是抽空好好看了下他们的用法和比较,在这里总结下来,后面有需要改进的...

    C# Array和ArrayList,List区别

    C# Array和ArrayList,List区别

    Android代码-高自由度的标签选择器

    TagSelectorView TagSelectorView A tag selector with animation 已更新v2.0 注意2.0与1.0并不兼容,2.0之前最后版本号为 1.2.2.3 ... Setup repositories { ...List dataBeanList = new ArrayList(); for (int i

    hibernate sprint 封装应用

    List fls = new ArrayList(); fls.add(new QCls("XM", QCls._STRING_, QCls._F_LIKE_, xm).getThis()); fls.add(new QCls("RXSJ", QCls._INT_, QCls._F_EQUAL_, rxsj).getThis()); fls.add(new QCls("YXDM", QCls._...

    控制台下变色龙扑克游戏

    System.Collections.ArrayList list = new System.Collections.ArrayList(); for (int i = 3; i &lt;= 6; i++) { for (int j = 1; j &lt;= 13; j++) { Poker p = new Poker(); switch (j) { case 1: p = new ...

    SwipeListViewTest项目

    List&lt;String&gt; list = new ArrayList(Arrays.asList(obj)); return list; } private int getDeviceWidth() { return getResources().getDisplayMetrics().widthPixels; } private void reload() { // ...

    谷歌处理JSON数据的jar包Gson.jar

    List&lt;String&gt; list = new ArrayList(); list.add("zhangsan"); list.add("lisi"); list.add("wangwu"); Gson gson = new Gson(); String json = gson.toJson(list); out.write(json);就可以把处理好的...

    Struts2实现分页

    Pager page=new Pager(); public Pager getPage() { return page; } public void setPage(Pager page) { this.page = page; } public Users getUser() { return user; } public void setUser...

    08spring4_dynamicproxy.rar

    // ProxyInovationHandler pih =new ProxyInovationHandler(); // pih.setTarget(userService); // UserService proxy =(UserService)pih.getProxy(); // proxy.search(); ProxyInovationHandler ph =new ...

    object与 json 相互转换工具类

    List&lt;String&gt; list1 = new ArrayList(); String str1 = g1.toJson(list1); //json 转list Gson g2 = new Gson(); List&lt;String&gt; list2 = g2.fromJson(str1, new TypeToken&lt;List&lt;String&gt;&gt;(){}.getType());

    java List排序工具类

    java List排序工具类 使用示例: ... List&lt;Person&gt; list = new ArrayList(); list.add(person); list.add(person1); list.add(person2); list.add(person3); list.add(person4); return list; }

    高仿微信界面

    fragmentList = new ArrayList(); fragmentList.add(new Fragment_tab01()); fragmentList.add(new Fragment_tab02()); fragmentList.add(new Fragment_tab03()); mAdapter = new MyFragmentPagerAdapter...

    Java form图形界面版的单机斗地主游戏-附源代码.rar

     List currentList[] =new ArrayList[3]; // 当前的出牌  List playerList[] = new ArrayList[3]; // 定义3个玩家表  List lordList;//地主牌  Card card[] = new Card[56]; // 定义54张牌  JTextField ...

Global site tag (gtag.js) - Google Analytics