zoukankan      html  css  js  c++  java
  • 图文验证码—数字验证技术

    验证码—数字验证技术

    在Java中,提供了一种可以生成随机数据的类,那就是java.util.Random类。在使用该类时,需要通过实例化一个Random对象创建一个随机数据生成器,其语法格式如下:

    Random r=new Rnadom();

    其中,r是指定Random对象。

    以这种方式实例化对象时,Java编译器以系统当前时间作为随机数生成器的种子,因为每时每刻的时间不可能相同,所以产生的随机数也将不同,但是如果运行速度太快,也会产生两次运行结果相同的随机数。这时,可以在实例化Random对象时,设置随机数生成器的种子,其语法格式如下:

    Rnadom r=new Random(seedValue);

    其中,r是指定Random对象,seedValue是指随机数生成器的种子。

    例如,生成以当前时间加1作为随机数生成器的种子实例化Random对象的代码如下:

    Random r =new Random(new java.util.Date().getTime()+1);

    在Random类中提供了获取各种数据类型随机数的方法,下面列举几个常用的方法。

    public int nextInt()方法:返回一个随机整数。

    public int nextInt(int n)方法:返回一个大于等于0小于n的随机整数。

    public long nextLong()方法:返回一个随机长整型值。

    public boolean nextBoolean()方法:返回一个随机布尔型值。

    public float nextFloat()方法:返回一个随机浮点型值。

    public double nextDouble()方法:返回一个随机双精度型值。

    public double nextGaussian()方法:返回一个概率密度为高斯分布的双精度型值。

    例如,生成以当前时间加1作为随机数生成器的种子,生成随机整数的代码如下:

    Random r =new Random(new java.util.Date().getTime()+1);

    System.out.println(r.nextInt());

    运行上面的代码将生成如图1所示的随机数。

            773467653

  • 相关阅读:
    strcpy实现 处理地址重叠,返回值问题
    lua的table的删除操作
    防御式编程
    软技能:代码之外的生存指南
    adb命令行输出logcat日志
    SyntaxError: Non-ASCII character 'xe5' in file test.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
    cocos2dx lua 图片去色shader
    cocos studio
    35 个 Java 代码性能优化总结
    Java必备技能:clone浅克隆与深克隆
  • 原文地址:https://www.cnblogs.com/zkn11199/p/5551757.html
Copyright © 2011-2022 走看看