mk.unknown70

مشکل در نحوه ایجاد و ذخیره کاراکترهای تصادفی در قالب چندین رشته متنی

mk.unknown70 ۱۳۹۷/۰۸/۲۲ 72 زبان برنامه‌نویسی جاوا

با سلام.

قصد دارم برنامه ای بنویسم که در مرحله اول، کاراکتر های موجود در یک آرایه از جنس String رو به شکل تصادفی به هم بچسبونه و یک String به صورت کلمه ای متشکل از اون المان های اون آرایه برام ایجاد کنه به نحوی که کاراکتر تکراری داخل اون کلمه وجود نداشته باشه (مثلاً در اینجا 4 کاراکتر "M" ، "O" ، "A" و "N" هست که انتظار میره کلمه ای مثل MONA یا OMAN رو بهم تحویل بده). کدی که نوشتم در هربار اجرای برنامه عملکرد مورد نظر رو در کنسول به نمایش میذاره. اما میخوام قابلیت دیگه ای به کد اضافه کنم تا تمام حالت های ممکن برای ترکیب این کاراکترها در قالب یک آرایه ذخیره بشه بدون اینکه حرف تکراری داخلشون باشه (مثلاً در اینجا تمام کلماتی که میتونه از ترکیب این 4 حرف ساخته بشه). اگر راهی به ذهنتون میرسه خواهش میکنم راهنماییم کنید. ممنون

    int size = 4;
    ArrayList<Integer> list = new ArrayList<Integer>(size);
    Random rnd = new Random();
    while (list.size()<size) {
        int random = rnd.nextInt(size);
        if (!list.contains(random)) {
            list.add(random);
        }
    }
    String letters = "";
    String[] words = {"M","O","A","N"};
    for(int i=0 ; i<size ; i++){
        letters += words[list.get(i)];
    }
    System.out.println(letters);