指定した長さの乱数を生成

1657 ワード

import java.util.Random;

public class card {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		for(int i=0 ;i<100;i++){
			System.out.println(genRandomNum(12));
		}		
	}

	/**
	 *  
	 * 
	 * @param pwd_len
	 *             
	 * @return  
	 */
	public static String genRandomNum(int pwd_len) {
		// 35 0 ,26 +10 
		final int maxNum = 10;
		int i; //  
		int count = 0; //  
		/*char[] str = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k',
				'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
				'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };*/
		
		char[] str = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

		StringBuffer pwd = new StringBuffer("");
		Random r = new Random();
		while (count < pwd_len) {
			//  , , ,

			i = Math.abs(r.nextInt(maxNum)); //  36-1

			if (i >= 0 && i < str.length) {
				pwd.append(str[i]);
				count++;
			}
		}

		return pwd.toString();
	}
}