随机生成验证码(JAVA代码)
生活随笔
收集整理的這篇文章主要介紹了
随机生成验证码(JAVA代码)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
需求
定義方法實現(xiàn)隨機產生一個5位的驗證碼,每位可能是數(shù)字,大寫字母,小寫字母。
分析
1.定義一個方法,生成驗證碼返回:方法參數(shù)是位數(shù),方法的返回值類型是String;
2.在方法內部使用for循環(huán)生成指定位數(shù)的隨機字符,并連接起來;
3.把連接好的隨機字符作為一組驗證碼進行返回。
正文:
導入生成隨機數(shù)的包
import javax.lang.model.element.NestingKind; import java.util.Random;定義一個方法返回一個隨機驗證碼:(需要申明返回值類型:String ,需要申明參數(shù):int n)
public static String createRandomCode (int n) {}1.定義一個字符串變量記錄生成的隨機字符,創(chuàng)建一個隨機數(shù)對象
String code = ""; Random r = new Random();2.定義一個for循環(huán),循環(huán)n次,依次生成隨機字符
for (int i = 0; i < n; i++) {}3.在循環(huán)內部,每次循環(huán)生成一個隨機字符:英文大寫 小寫 數(shù)字 (0, 1, 2)
int type = r.nextInt(3); //0, 1, 2switch (type) {case 0://大寫字符 (A 65 - Z 65 + 25) (0 - 25) + 65char ch1 = (char) (r.nextInt(26) + 65);code += ch1;break;case 1://小寫字符 (a 97 - Z 97 + 25) (0 - 25) + 97char ch2 = (char) (r.nextInt(26) + 97);code += ch2;break;case 2://大寫字符 (A 65 - Z 65 + 25) (0 - 25) + 65int ch3 = r.nextInt(10);code += ch3;break;4.循環(huán)結束后,返回String類型的變量即是所求的驗證碼結果。
return code;定義一個主方法(main)接口,調用生成驗證碼的方法,輸出結果。
public static void main(String[] args) {//調用獲取驗證碼的方法得到一個隨機的驗證碼String code = createRandomCode(5);System.out.println("隨機驗證碼:" + code);}完整代碼:
/* 需求:定義方法實現(xiàn)隨機產生一個5位的驗證碼,每位可能是數(shù)字,大寫字母,小寫字母*/import javax.lang.model.element.NestingKind; import java.util.Random;public class Demo3 {public static void main(String[] args) {//調用獲取驗證碼的方法得到一個隨機的驗證碼String code = createRandomCode(5);System.out.println("隨機驗證碼:" + code);}/*1.定義一個方法返回一個隨機驗證碼:是否需要申明返回值類型:String 是否需要申明參數(shù):int n*/public static String createRandomCode (int n) {//3.定義一個字符串變量記錄生成的隨機字符String code = "";Random r = new Random();//2.定義一個for循環(huán),循環(huán)n次,依次生成隨機字符for (int i = 0; i < n; i++) {//3.生成一個隨機字符:英文大寫 小寫 數(shù)字 (0, 1, 2)int type = r.nextInt(3); //0, 1, 2switch (type) {case 0://大寫字符 (A 65 - Z 65 + 25) (0 - 25) + 65char ch1 = (char) (r.nextInt(26) + 65);code += ch1;break;case 1://小寫字符 (a 97 - Z 97 + 25) (0 - 25) + 97char ch2 = (char) (r.nextInt(26) + 97);code += ch2;break;case 2://大寫字符 (A 65 - Z 65 + 25) (0 - 25) + 65int ch3 = r.nextInt(10);code += ch3;break;}}return code;} }運行結果展示:
總結:
1.定義一個String類型的變量存儲驗證碼字符;
2.定義一個for循環(huán),循環(huán)n次;
3.隨機生成0,1,2的數(shù)據(jù),依次代表當前位置要生成數(shù)字,大寫字母,小寫字母;
4.把0,1,2交給switch生成對應類型的隨機字符,把字符交給String變量;
5.循環(huán)結束后,返回String類型的變量即是所求的驗證碼結果。
總結
以上是生活随笔為你收集整理的随机生成验证码(JAVA代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP常用函数大全500+
- 下一篇: AD9361 介绍 (上)