使用类型转换生成六位验证字符,实现用户输入验证码的功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用类型转换生成六位验证字符,实现用户输入验证码的功能相关的知识,希望对你有一定的参考价值。

1. 程序设计思想

   先用Math.random()函数产生0~1之间的随机数,然后用int intVal = (int)(Math.random() * 26 + 97)使数的范围扩大到97~122,这样就包括了从a~z所有的字母了,用6次循环输出6个字母,然后将其转化为字母,用result存储,输出result,再要求用户输入验证码,如果输入的验证码正确,则输出"验证码正确"否则输出"验证码错误,请重新输入"

2. 程序流程图技术分享技术分享技术分享技术分享   

 技术分享

 

 

3.源代码

package demo;

import java.util.Scanner;

public class RandomStr

{

public static void main(String[] args)

{

//定义一个空字符串

String result = "";

//进行6次循环

for(int i = 0 ; i < 6 ; i ++)

{

//生成一个97~122的int型的整数

int intVal = (int)(Math.random() * 26 + 97);

//将intValue强制转换为char后连接到result后面

result = result + (char)intVal;

}

System.out.println(result);

System.out.println("请输入验证码:");

Scanner scan=new Scanner(System.in);

 String shuru=scan.next();

 if(shuru.equals(result)==true)

{System.out.println("验证码正确");}

else

System.out.println("验证码错误,请重新输入");

 

  }

}

4.实验结果截图

 技术分享

 

5.实验总结

该程序中非常重要的就是随机数的产生,先用Math.random()函数产生0~1之间的随机数,然后用int intVal = (int)(Math.random() * 26 + 97)使数的范围扩大到97~122,这样就包括了从a~z所有的字母了,这个非常巧妙的运用。出现的错误就是输入字符串的时候,不会输入,经过查询后解决,还有java中判断两个数是否正确不能简单的用等于号,要用equal函数,否则不管输入什么,输出的都是 一样的,没有判断的过程。

 

以上是关于使用类型转换生成六位验证字符,实现用户输入验证码的功能的主要内容,如果未能解决你的问题,请参考以下文章

RandomStr实验报告(验证码实验)

要求根据RandomStr.java:使用类型转换生成六位验证字符串,示例程序每次运 行时,都会生成不同的字符串。

根据RandomStr.java:使用类型转换生成六位验证字符串。

实验四

实验4&5

Django中验证码的实现