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

【转贴】一段精彩的源代码,值得好好学习!

2009-12-26 01:46 295 查看
public class ABCDE

{

    public static void main(String[] args)

    {

        ABCDE a = new ABCDE();

        String after = a.order("abcde");

        System.out.println(after);

    }

    public String order(String str)

    {

        char[] ch = str.toCharArray();  //转换str为字符数组并赋值给ch

        boolean[] check = new boolean[ch.length];   //以ch相同的长度产检一个布尔类型的数组

        StringBuffer newOrder = new StringBuffer();

        for (int i = 0; i < ch.length; i++)

        {

            int temp = (int) (Math.random() * ch.length);

            while (check[temp]) // 当check数组、temp位置是true的时候,开始循环

            {

                temp = (int) (Math.random() * ch.length);

                //如果是true(已添加,则跳过,重新random)

            }

            check[temp] = true; //如果false,则赋值true,标记为已添加(False为未添加)

            newOrder.append(ch[temp]);

        }

        return newOrder.toString();

    }

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string random class
相关文章推荐