• java set转list,数组与list的转换


    读zookeeper的源码(zookeeper.java)时发现的,平时没有怎么注意:

     private final ZKWatchManager watchManager;
    
        List<String> getDataWatches() {
            synchronized(watchManager.dataWatches) {
                List<String> rc = new ArrayList<String>(watchManager.dataWatches.keySet());
                return rc;
            }
        }
        List<String> getExistWatches() {
            synchronized(watchManager.existWatches) {
                List<String> rc =  new ArrayList<String>(watchManager.existWatches.keySet());
                return rc;
            }
        }
        List<String> getChildWatches() {
            synchronized(watchManager.childWatches) {
                List<String> rc = new ArrayList<String>(watchManager.childWatches.keySet());
                return rc;
            }
        }

     另数组与list的转换:

    数组-->list

    String[] userid = {"aa","bb","cc"};
    List<String> userList = new ArrayList<String>();
    Collections.addAll(userList, userid);

    数组-->list

    String[] userid = {"aa","bb","cc"};
    List<String> userList = Arrays.asList(userid);
    另:Arrays.asList()返回一个受指定数组支持的固定大小的列表。所以不能做Add、Remove等操作。
    List list = new ArrayList(Arrays.asList(userid));这样操作就可以了。

    list-->数组

    List<String> strList = new ArrayList<String>();
    strList.add("aa");
    strList.add("bb");
    Object[] objs = strList.toArray();

    参考文献:

    【1】http://jingyan.baidu.com/article/86f4a73e607f2937d7526972.html

    【2】https://github.com/apache/zookeeper

  • 相关阅读:
    C++对象模型
    GUID 转 char *
    MFC中App,Doc,MainFrame,View各指针的互相获取
    MFC中设置某个VIEW为当前视图
    MFC中如何在CMainFrame类中访问CxxxView视图类中的成员
    GetMessage 和 PeekMessage 区别
    STL 常用容器
    收发ICMP封包,实现ping
    软件弹窗广告
    python 输入一个字符串,打印出它所有的组合
  • 原文地址:https://www.cnblogs.com/davidwang456/p/5000470.html
Copyright © 2020-2023  润新知