随机生成验证码(JAVA代码)
需求
定义方法实现随机产生一个5位的验证码,每位可能是数字,大写字母,小写字母。
分析
1.定义一个方法,生成验证码返回:方法参数是位数,方法的返回值类型是String;
2.在方法内部使用for循环生成指定位数的随机字符,并连接起来;
3.把连接好的随机字符作为一组验证码进行返回。
正文:
导入生成随机数的包
import javax.lang.model.element.NestingKind;
import java.util.Random;
定义一个方法返回一个随机验证码:(需要申明返回值类型:String ,需要申明参数:int n)
public static String createRandomCode (int n) {}
1.定义一个字符串变量记录生成的随机字符,创建一个随机数对象
String code = "";
Random r = new Random();
2.定义一个for循环,循环n次,依次生成随机字符
for (int i = 0; i < n; i++) {}
3.在循环内部,每次循环生成一个随机字符:英文大写 小写 数字 (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.循环结束后,返回String类型的变量即是所求的验证码结果。
return code;
定义一个主方法(main)接口,调用生成验证码的方法,输出结果。
public static void main(String[] args) {//调用获取验证码的方法得到一个随机的验证码String code = createRandomCode(5);System.out.println("随机验证码:" + code);}
完整代码:
/*
需求:定义方法实现随机产生一个5位的验证码,每位可能是数字,大写字母,小写字母*/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 是否需要申明参数:int n*/public static String createRandomCode (int n) {//3.定义一个字符串变量记录生成的随机字符String code = "";Random r = new Random();//2.定义一个for循环,循环n次,依次生成随机字符for (int i = 0; i < n; i++) {//3.生成一个随机字符:英文大写 小写 数字 (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循环,循环n次;
3.随机生成0,1,2的数据,依次代表当前位置要生成数字,大写字母,小写字母;
4.把0,1,2交给switch生成对应类型的随机字符,把字符交给String变量;
5.循环结束后,返回String类型的变量即是所求的验证码结果。
随机生成验证码(JAVA代码)相关推荐
- 随机验证码如何在html里设置颜色,js随机生成验证码以及随机颜色
Javascript通过Math.random()随机生成验证码. 代码如下: 随机验证码 .p1{ width:100px; height:30px; border:1px solid black; ...
- html验证码功能如何实现原理,基于JS实现一个随机生成验证码功能
效果展示 实现原理 1. html:一般就是一个div: 2. JS:1)将所有的验证码所用的字符放在一个字符串中 2)在这个字符串的字符个数以内,随机生成索引号 3)根据索引号查找对应字符,拼接成验 ...
- 随机生成验证码及发送短信验证码
验证码 包括过期时间和redis缓存以及校验 1.设置过期时间 private Date getNextDayZeroTime() {Calendar calendar = Calendar.getI ...
- php随机生成验证码,php随机生成数字,php随机生成数字加字母!
<?php /** 方法类* */ class functions {/*** PHP随机生成验证码函数** @param array* @return mixed*/function rand ...
- php随机生成验证码代码
<?php session_start(); //产生一个随机的字符串验证码 $checkcode=""; for ($i=0;$i<4;$i++){$checkcod ...
- Java随机生成验证码
import java.util.Random;public class Test4 {public static void main(String[] args) {/*生成验证码内容:可以是小写字 ...
- 综合整理的一个可以直接使用的生成验证码的代码
学习javaweb时,首先拿了一个用户注册界面试试手,写完了之后觉得应该在注册加上一个验证码验证,于是从网上找如何在项目中添加验证码,找了很多博客,综合了一下整理了一份可以直接向项目中直接添加的代码, ...
- html+js实现生成验证码实例代码分享
介绍 今天分享下利用html的canvas标签生成画布,在画布上利用随机生成的数字画上验证码,背景为随机生成的颜色和杂乱的直线与点点. 进阶:利用表单插件属性绑定验证码数据(json)可以在发送时候或 ...
- 前端js——验证码登录(canvas画布),随机生成验证码,判断正确性
1.html canvas画布: 元素用于图形的绘制,canvas 元素本身是没有绘图能力的,通过脚本 (通常是JavaScript)来完成. 标签通常需要指定一个id属性 (脚本中经常引用), wi ...
- python随机生成验证码_Python生成随机验证码的两种方法
# -*- coding: utf-8 -*- import random def generate_verification_code_v2(): ''' 随机生成6位的验证码 ''' code_l ...
最新文章
- 深度linux添加xp,Linux和Windos XP下向路由表添加路由
- 三维空间两直线/线段最短距离、线段计算算法 【转】
- Logistic Regression:最基础的神经网络
- 张建锋:一两年内,阿里巴巴100%的业务都会上公共云
- ZZULIOJ 1066:字符分类统计
- sklearn 线性回归linear regression做分类任务
- 设计模式之UML关系图
- opencv之调取摄像头拍照
- 自动控制原理知识点整合归纳(韩敏版)
- java栈里储存的是什么_JVM中的堆和栈到底存储了什么
- Attention-guided Context Feature Pyramid Network for Object Detection
- Windows-EFS加密文件
- 三子棋小游戏(经过轻微改编可变为五子棋)
- Python3使用Xpath解析网易云音乐歌手页面
- 推荐一款开源的ICO制作神器——greenfish
- [Mac]开启鼠标键
- 数模算法:应用Logistic规律构建种群竞争模型
- 2023首届大学生算法大赛 - 村庄
- Linux运维:Shell脚本实现ssh免密登录远程服务器
- Armadillo | 复数小记
热门文章
- Python requests+BeautifulSoup 采集 安居客_新房信息
- 火狐浏览器扩展程序源代码的查看
- 大型交通流仿真平台——Matsim中文使用手册05
- Windows10最常用的软件推荐V1.7
- 有用facs做计算机表情识别的嘛,人脸表情识别可以测谎吗
- awk命令详解+示例
- 滨州智能dcs系统推荐_FM163E和利时DCS组件系统滨州
- Himall商城Html文本帮助类HtmlContentHelper(2)
- linux系统商店下载的软件到哪了,linux下使用第三方商店安装应用
- UOS系统应用商店提示安装失败