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

解决方案 »

  1.   

    用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是要替换成什么,也就是要插入的字。
      

  2.   

    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开!?
      

  3.   

    核心是下标获取,字符串怎么存无所谓。
    Random挺好的,0~23