您的位置:首页 > 编程语言 > Java开发

[2] JAVA知识补充

2012-06-27 17:12 127 查看
1.Java集合排序及集合类详解

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

2.Java更新XML的四种常用方法简介

/article/8950170.html

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();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: