[2] JAVA知识补充

1.Java集合排序及集合类详解

    http://blog.csdn.net/MX_LEE/article/details/2591370

2.Java更新XML的四种常用方法简介 
   http://blog.csdn.net/mengtech/article/details/2279388

3.Java开源及其他开源项目分类列表

http://www.open-open.com/25.htm

4.使用Simian检查Java项目中冗余代码
 http://www.integility.com/eclipse/

5.贾琳的CSDN博客

http://blog.csdn.net/shan9liang?viewmode=contents

 

Map循环:

for(Iterator<Map.Entry<String, String>> it =map.entrySet().iterator(); it.hasNext();)

{

  Map.Entry<String, String> entry =it.next();

  String value = entry.getValue();

}

 

 

import java.util.HashMap;

import java.util.Map;

 /**

 *乒乓球比赛,找出赛手名单

 *<功能详细描述>

 *@author  szchen

 *@version  [版本号,2012-7-13]

 *@see  [相关类/方法]

 *@since  [产品/模块版本]

 */

publicclass PingPangGame

{

    privateintm;

    privateintn;

    privateintcount;

     /**

     *甲队和abc队员

     */

    privatestaticfinal Map<Integer, String>jiaMap =

        new HashMap<Integer, String>()

        {

            privatestaticfinallongserialVersionUID = 1L;

             {

                put(0, "a");

                put(1, "b");

                put(2, "c");

            }

        };

 

    /**

     *已队和xyz队员

     */

    privatestaticfinal Map<Integer, String>yiMap =

        new HashMap<Integer, String>()

        {

            privatestaticfinallongserialVersionUID = 1L;

             {

                put(3, "x");

                put(4, "y");

                put(5, "z");

            }

        };

 

    privatestaticfinal Map<Integer, String>tMap =

        new HashMap<Integer, String>()

        {

            privatestaticfinallongserialVersionUID = 1L;

             {

                putAll(jiaMap);

                putAll(yiMap);

            }

        };

 

    public PingPangGame(int m,int n)

    {

        this.m = m;

        this.n = n;

    }

 

    publicvoid findGroup()

    {

        String value = create();

        convert(value);

    }

 

    privatevoid convert(String value)

    {

        int index = value.indexOf("10");

         if (index == -1)

        {

            return;

        }

         value = value.replaceFirst("10", "01");

        value = replace(value, index).concat(value.substring(index));

        print(value);

         if (value.indexOf('1') != m - n)

        {

            convert(value);

        }

    }

 

    private String replace(String value,int index)

    {

        if (value.length() == 0)

        {

            return value;

        }

         String s = value.substring(0, index);

         if (s.matches("1+"))

        {

            return s;

        }

        else

        {

            returnnew StringBuffer(s).reverse().toString();

        }

    }

 

    private String create()

    {

        char[] arr =newchar[m];

        for (int i = 0; i < m; i++)

        {

            if (i < n)

            {

                arr[i] = '1';

            }

            else

            {

                arr[i] = '0';

            }

        }

        String value = String.valueOf(arr);

 

        print(value);

 

        return value;

    }

 

    privatevoid print(String value)

    {

        int index1 = value.indexOf('1');

        int index2 = value.lastIndexOf('1');

        if ((index1 == 0 && index2 == 3) || (index1 == 2 && index2 == 3)

            || (index1 == 2 && index2 == 5)

            || (jiaMap.containsKey(index1) &&jiaMap.containsKey(index2))

            || (yiMap.containsKey(index1) &&yiMap.containsKey(index2)))

        {

            return;

        }

        System.out.printf("%2d. ", ++count);

        char[] arr = value.toCharArray();

        for (int i = 0, n = arr.length; i < n; i++)

        {

            if (arr[i] == '1')

            {

                System.out.print(tMap.get(i));

            }

        }

        System.out.println();

    }

 

    publicstaticvoid main(String[] args)

    {

        PingPangGame game = new PingPangGame(6, 2);

        game.findGroup();

    }

}

你可能感兴趣的:(java,xml)