String[] letter={"a","b","c","d"};
现在要用这里面的所有字母随机排列成字符串,
请问怎么弄?
难点关键在所有的字母都要用的上
比如
abcabcd
acdddccb
acbad生成字符串的长度都无所谓,而且字母的顺序也无所谓,
但是就是必须得所有的字母都用上请问,怎么搞?
谢谢了

解决方案 »

  1.   

    String[] letter={"a","b","c","d"};
    List<String> list = Arrays.asList(letter);
    Collections.shuffle(list, new Random());
    System.out.println(list);
    不过长度是定长的
      

  2.   

    class Test { 

    public static void main(String[] args) throws Exception { 
    String[] letter={"a","b","c","d"};
    for (int i = 5; i < 10; i++) {
    System.out.println (Test.getRandomString(letter, i));
    }
    }  public static String getRandomString(String[] letter, int length) {
    Random random = new Random();
    StringBuffer sb = new StringBuffer();
    for (int i = 0; i < length; i++) {
    sb.append(letter[random.nextInt(4)]);
    }
    return sb.toString();
    }
    }
      

  3.   

    随机生成四个大于0的整数,组成字符串:
    a...ab...bc...cd...d
    然后随机排序