1.Random类

随机生成某个整数

	Random r = new Random();
System.out.println(r.nextInt());

伪随机数:第一次打印为随机,再次运行,数字将保持不变

	Random r1 = new Random(10);
System.out.println(r1.nextInt());

随机输出34到179之间的数

分析:.nextInt(15)表示生成0到15之间的随机数

当输出最小为0时,只需加上34;

当输出最小为145时,也只需加上34

	System.out.println(34 + new Random().nextInt(145));

2.UUID:通用唯一识别符(在一台机器上生成的数字)

生成规律:是结合当前的时间和每台机器上的网卡识别符生成的一段字符

	String a =UUID.randomUUID().toString();
System.out.println(a);
【4b8fc3b2-89e9-473a-80d6-c791e4e90826】

3.日期类(需要导包[util包])

import java.util.Date;

public class date类 {
public static void main(String[] args) {
//获取当前的时间
Date date = new Date();
System.out.println(date);
//获取当前的毫秒值
long time = System.currentTimeMillis();
System.out.println(time);
//将毫秒值转换为当前的日期类型
Date date2 = new Date(time);
System.out.println(date2);
//中国日期
String d = date2.toLocaleString();
System.out.println(d);
//将日期转换为当前的毫秒值
System.out.println(date2.getTime()); }
}

当计算员工的工龄,年龄时类型都是date类

4.随即验证码

import java.util.Random;
import java.util.UUID; public class 验证码 {
public static void main(String[] args) {
//UUID的数是随机的
String u = UUID.randomUUID().toString();
System.out.println(u);
//取其前五位
System.out.println(u.substring(0,5));//缺点,字母只到F,原因,UUID为十六进制编写
System.out.println("********************");
//改进:让系统在给定的字符串中随机输出任意字符。
String a = "ABCDEFGHIjKLMNOPQRSTUVWXYZ";
a = a + a.toLowerCase();
a = a + "0123456789";
System.out.println(a);
###
思路:
//先让其随机在字符串长度内截取一个字符(告知其位置)
//先知道字符串有多长
System.out.println(a.length());
//将其位置在字符串长度内随机
int a2 = new Random().nextInt(a.length());
//将随机位置和字符联系在一起
System.out.println(a.charAt(a2));
###
//若输入五位验证码,则循环五次
for(int i = 0;i < 5;i++) {
int a3 = new Random().nextInt(a.length());
System.out.print(a.charAt(a3));
} }
}
在输入五位验证码处替换成更好的代码
//数据无论怎么改,地址都不会变(可变字符串)
StringBuilder sb = new StringBuilder();
for(int i = 0;i < 5;i++) {
int a2 = new Random().nextInt(a.length());
char res = a.charAt(a2);
sb.append(res);//类似于sb = sb + ch;
}
System.out.println(sb);

java42的更多相关文章

随机推荐

  1. 转载-Eclipse无法打开Eclipse MarketPlace的解决办法

    问题描述: Eclipse点击 help-->Eclipse MarketPlace 后无任何反应,无报错,打不开 解决方法: 重新安装一下 epp MarketPlace help--> ...

  2. 11/6笔记 补充(Redis持久化,RDB&&AOF)

    11/6补充笔记 修改redis-6379.conf里面的save10秒2个数据发生改变 (save 10 2) 修改一次数据不发生改变,修改2次数据才发生改变 继续修改数据,发现还是一样的规律 增删 ...

  3. How to Convert and Import VHD to VMDK (VMWare)

    VHD or Virtual Hard Disk is the disk image format used by Microsoft virtualization software such as ...

  4. Java并发原理层面:ReentrantLock中lock()、unlock()全解析

    一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...

  5. [MIT6.006] 14. Depth-First Search (DFS), Topological Sort 深度优先搜索,拓扑排序

    一.深度优先搜索 它的定义是:递归探索图,必要时要回溯,同时避免重复. 关于深度优先搜索的伪代码如下: 左边DFS-Visit(V, Adj.s)是只实现visit所有连接某个特定点(例如s)的其他点 ...

  6. Luogu P6833 【[Cnoi2020]雷雨】

    这道题赛时的时候想了一个奇怪的做法但是没过,后来经过Stay_hungry的提示就码了这道题. 雷电必定会在一点处分叉,分别电击地上的两个点,我们只需要枚举这个分叉点.那么怎么算出这个点和目标点的距离 ...

  7. switch,case语句易误区

    switch case 语句语法格式如下: switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可 ...

  8. Jar 和 war 区别

    jar包:对于学习java的人来说应该并不陌生.我们也经常使用也一些jar包.其实jar包就是java的类进行编译生成的class文件就行打包的压缩包而已.里面就是一些class文件.当我们自己使用m ...

  9. 手把手教你5分钟从零开发一款简易的IDEA插件!项目经验/毕设不愁了!

    我这个人没事就喜欢推荐一些好用的 IDEA 插件给大家.这些插件极大程度上提高了我们的生产效率以及编码舒适度. 不知道大家有没有想过自己开发一款 IDEA 插件呢? 我自己想过,但是没去尝试过.刚好有 ...

  10. Python_获取cookie

    获取cookie from selenium import webdriver from selenium.webdriver.common.by import By # 定位 from seleni ...