需求

定义方法实现随机产生一个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代码)相关推荐

  1. 随机验证码如何在html里设置颜色,js随机生成验证码以及随机颜色

    Javascript通过Math.random()随机生成验证码. 代码如下: 随机验证码 .p1{ width:100px; height:30px; border:1px solid black; ...

  2. html验证码功能如何实现原理,基于JS实现一个随机生成验证码功能

    效果展示 实现原理 1. html:一般就是一个div: 2. JS:1)将所有的验证码所用的字符放在一个字符串中 2)在这个字符串的字符个数以内,随机生成索引号 3)根据索引号查找对应字符,拼接成验 ...

  3. 随机生成验证码及发送短信验证码

    验证码 包括过期时间和redis缓存以及校验 1.设置过期时间 private Date getNextDayZeroTime() {Calendar calendar = Calendar.getI ...

  4. php随机生成验证码,php随机生成数字,php随机生成数字加字母!

    <?php /** 方法类* */ class functions {/*** PHP随机生成验证码函数** @param array* @return mixed*/function rand ...

  5. php随机生成验证码代码

    <?php session_start(); //产生一个随机的字符串验证码 $checkcode=""; for ($i=0;$i<4;$i++){$checkcod ...

  6. Java随机生成验证码

    import java.util.Random;public class Test4 {public static void main(String[] args) {/*生成验证码内容:可以是小写字 ...

  7. 综合整理的一个可以直接使用的生成验证码的代码

    学习javaweb时,首先拿了一个用户注册界面试试手,写完了之后觉得应该在注册加上一个验证码验证,于是从网上找如何在项目中添加验证码,找了很多博客,综合了一下整理了一份可以直接向项目中直接添加的代码, ...

  8. html+js实现生成验证码实例代码分享

    介绍 今天分享下利用html的canvas标签生成画布,在画布上利用随机生成的数字画上验证码,背景为随机生成的颜色和杂乱的直线与点点. 进阶:利用表单插件属性绑定验证码数据(json)可以在发送时候或 ...

  9. 前端js——验证码登录(canvas画布),随机生成验证码,判断正确性

    1.html canvas画布: 元素用于图形的绘制,canvas 元素本身是没有绘图能力的,通过脚本 (通常是JavaScript)来完成. 标签通常需要指定一个id属性 (脚本中经常引用), wi ...

  10. python随机生成验证码_Python生成随机验证码的两种方法

    # -*- coding: utf-8 -*- import random def generate_verification_code_v2(): ''' 随机生成6位的验证码 ''' code_l ...

最新文章

  1. 深度linux添加xp,Linux和Windos XP下向路由表添加路由
  2. 三维空间两直线/线段最短距离、线段计算算法 【转】
  3. Logistic Regression:最基础的神经网络
  4. 张建锋:一两年内,阿里巴巴100%的业务都会上公共云
  5. ZZULIOJ 1066:字符分类统计
  6. sklearn 线性回归linear regression做分类任务
  7. 设计模式之UML关系图
  8. opencv之调取摄像头拍照
  9. 自动控制原理知识点整合归纳(韩敏版)
  10. java栈里储存的是什么_JVM中的堆和栈到底存储了什么
  11. Attention-guided Context Feature Pyramid Network for Object Detection
  12. Windows-EFS加密文件
  13. 三子棋小游戏(经过轻微改编可变为五子棋)
  14. Python3使用Xpath解析网易云音乐歌手页面
  15. 推荐一款开源的ICO制作神器——greenfish
  16. [Mac]开启鼠标键
  17. 数模算法:应用Logistic规律构建种群竞争模型
  18. 2023首届大学生算法大赛 - 村庄
  19. Linux运维:Shell脚本实现ssh免密登录远程服务器
  20. Armadillo | 复数小记

热门文章

  1. Python requests+BeautifulSoup 采集 安居客_新房信息
  2. 火狐浏览器扩展程序源代码的查看
  3. 大型交通流仿真平台——Matsim中文使用手册05
  4. Windows10最常用的软件推荐V1.7
  5. 有用facs做计算机表情识别的嘛,人脸表情识别可以测谎吗
  6. awk命令详解+示例
  7. 滨州智能dcs系统推荐_FM163E和利时DCS组件系统滨州
  8. Himall商城Html文本帮助类HtmlContentHelper(2)
  9. linux系统商店下载的软件到哪了,linux下使用第三方商店安装应用
  10. UOS系统应用商店提示安装失败