Java生成7位無重複的車牌(3位大寫字母+4位數字)

需求: 假設一個車牌號碼是由(3位大寫字母+4位數字)組成,編寫程序,生成五位不重複的車牌號碼

package Unit78.Task;

import Unit78.TestPassArraySimple;

import javax.lang.model.element.NestingKind;
import javax.swing.plaf.basic.BasicScrollPaneUI;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class LicensePlate {
    public static void main(String[] args) {
        Map<String, Boolean> strBoMap = new HashMap<String, Boolean>();
        String[] res = new String[5];
        String[] res2 = new String[5];
        for (int i = 0; i < 5; i++) {
            res[i] = "";
            String temp = createLiscense();
            while (strBoMap.containsKey(temp) == true) {
                temp = createLiscense();
            }
            strBoMap.put(temp, true);
            res[i] += temp;
        }
//        int j = 0;
//        Iterator<Map.Entry<String, Boolean>> entries = strBoMap.entrySet().iterator();
//        while (entries.hasNext()) {
//            res[j] = "";
//            Map.Entry<String, Boolean> entry = entries.next();
//            res[j] = res[j] + entry.getKey();
//            j++;
//            // System.out.println("key = " + entry.getKey() + ",value = " + entry.getValue());
//        }
        for(String s:res){
            System.out.println(s);
        }
    }

    public static String createLiscense() {
        String res = "";
        int i = 0;
        for (; i < 3; i++) {
            res = res + String.valueOf((char) ('A' + (int) (Math.random() * ('Z' - 'A' + 1))));
        }
        for (; i < 7; i++) {
            res = res + String.valueOf((int) (Math.random() * 10));
        }
        return res;
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章