日期:2014-05-20  浏览次数:20905 次

怎么在一个24个字的字串中随机插入4个字
怎么在一个24个字的字串中随机插入4个字,并且这个4个字替换以前位置的字,还保持24个字的字串?
要怎么实现呢?

------解决方案--------------------
用Random获取1-24的随机数(或者0-23的随机数)
用同样的方法产生要插入的字,或者你直接指定
public static String replaceIndex(int index,String res,String str){
return res.substring(0, index)+str+res.substring(index+1);
}
index就是要替换的位置,也就是生成的随机数,res是原来的24个字符串,str是要替换成什么,也就是要插入的字。
------解决方案--------------------
建立一个0~23的数组,下标由0开始,生成0~23随机数作为下标,与0交换。下标移向1,生成1~23随机数作为下标,与之交换。同样对下标2再做一次。这3个就是你要的随机数下标位置。
1楼的方法会带来重复,不一定是3个字串
------解决方案--------------------
	public static void main(String[] arg) {
String srcStr = "我的心太乱要一些空白你若是明白让我暂时的离开!?";
String destString = "1234";
int lengh = srcStr.length();
Random random = null;
boolean isTrue = true;
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
while (isTrue) {
random = new Random();
int index = random.nextInt(lengh);
if (!map.containsKey(index)) {
map.put(index, index);
}
if (map.size() == 4) {
isTrue = false;
}
}
char[] srcArray = srcStr.toCharArray();
char[] destArray = destString.toCharArray();
int count = 0;
for (Integer key : map.keySet()) {
srcArray[key] = destArray[count];
count++;
}
System.out.println(String.valueOf(srcArray));

}


我1心太乱2一些空白你若是明4让我暂时的3开!?