• Java中泛型数组的使用


    package com.srie.testjava;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestClassDefine3<T, S extends T> {
    
        public static void main(String[] args) {
    
            // 这个会有warning;
            TestClassDefine3<String, String>[] tcd3 = new TestClassDefine3[12];
            TestClassDefine3<Integer, Integer> t1i = new TestClassDefine3<Integer, Integer>();
            TestClassDefine3<String, String> t2s = new TestClassDefine3<String, String>();
            // tcd3[0] = t1i; // 这个类型不匹配,会有编译错误;
            tcd3[0] = t2s; // 这个可以添加;
    
            List<String> slist = new ArrayList<String>();
            slist.add("a");
            slist.add("b");
            @SuppressWarnings("unchecked")
            List<String>[] sListArr = new ArrayList[12];
            sListArr[0] = slist;
            // System.out.println(sListArr);
            for (List<String> list : sListArr) {
                if (list != null) {
                    for (String string : list) {
                        System.out.println(string);
                    }
                }
            }
    
        }
    
    }

     反编译之后的结果:

    package com.srie.testjava;
    
    import java.io.PrintStream;
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    
    public class TestClassDefine3<T, S extends T>
    {
      public static void main(String[] args)
      {
        List[] arrayOfList1;
        TestClassDefine3[] tcd3 = new TestClassDefine3[12];
        TestClassDefine3 t1i = new TestClassDefine3();
        TestClassDefine3 t2s = new TestClassDefine3();
    
        tcd3[0] = t2s;
    
        List slist = new ArrayList();
        slist.add("a");
        slist.add("b");
    
        List[] sListArr = new ArrayList[12];
        sListArr[0] = slist;
    
        int j = (arrayOfList1 = sListArr).length; for (int i = 0; i < j; ++i) { List list = arrayOfList1[i];
          if (list != null)
            for (Iterator localIterator = list.iterator(); localIterator.hasNext(); ) { String string = (String)localIterator.next();
              System.out.println(string);
            }
        }
      }
    }
  • 相关阅读:
    [mysql] 5.1和5.5版本区别
    selenium-51job高级搜索
    selenium-xpath选择操作web元素
    selenium-css选择器高级用法
    selenium-51job自动化测试(css选择器选择元素)
    API测试
    接口测试
    selenium-百度新歌榜
    selenium-frame切换
    selenium等待元素出现和代码抛出异常继续执行
  • 原文地址:https://www.cnblogs.com/stono/p/4812816.html
Copyright © 2020-2023  润新知