- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 通过JAVA实现OTP验证-下
文章目录前言准备工具一、导入项目二、运行源码三、验证令牌总结前言在上一篇文章中我们讲了动态令牌背后的OTP技术,这篇文章我们可以尝试自己用JAVA实现OTP验证。参考文章通过JAVA实现OTP验证-上准备工具IntelliJ IDEA 源码 - 提取码:Huahcommons-codec-1.9.jar二维码生成网站一、导入项目点击IDEA选项栏中的文件,在点击打开找到自己存放源码文件的路径,再选择源码,点击下面的打开这里我们看到这里报错那是因为我们没有导入org
2021-10-30 13:54:32
1889
3
原创 通过JAVA实现OTP验证-上
文章目录前言动态令牌背后的OTP技术1. 算法:2. 密钥3. 动态因子通过JAVA实现OTP验证前言不知道你们是否经常碰到在登录腾讯游戏时被要求输入动态密码,手机令牌是第二代密码保护的一种密保手段,它是安装在手机上免费使用的软件,安装成功后会在手机上显示6位动态密码,绑定后,您可以通过验证动态密码,进行修改QQ密码、设置登录保护和Q币、Q点消费保护等操作。那么这个动态密码的实现机制是什么呢?这里我们就带大家来了解一下!动态令牌背后的OTP技术OTP( One-Time Password,一次性
2021-10-30 10:02:37
1328
转载 JAVA-如何打包成jar包
主线:编译 - 打包 - 运行准备工作:手动打可直接执行的jar包1) 先使用javac编译java文件,得到class文件2) 新建文件,名字任起,比如可以叫manifest,内容如下(注意:1. 冒号后面加一个空格,2. 最后必须回车到新的空行,否则出错,如下面内容就必须在addJarPkg后面再输入一个回车)Manifest-Version: 1.0Main-Class: addJarPkg3) 把编译好的class文件和第2步新建的文件放入指定文件夹,如test4) 在cmd中运
2021-10-29 21:11:59
97525
12
原创 使用JAVA制作简易的薪资转换工具
文章目录前言一、准备工具1、JAVA版本2、IntelliJ IDEA二、程序运行1、控制台版本2、swing版本三、源代码1、控制台版本源码2、swing版本总结前言Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可
2021-10-28 16:59:17
687
原创 使用JAVA实现对游戏《植物大战僵尸》游戏数据进行修改
@TOC前言上篇文章中我们通过二进制编辑器Hex Editor Neo实现通过修改游戏存储数据已到达修改游戏关卡和游戏中银币的功能,本章节将尝试使用Java程序来编辑游戏在本地存储的数据。请参考文章:《植物大战僵尸》游戏数据修改一、概述1、游戏背景《植物大战僵尸》是一款策略类游戏。 游戏分为 僵尸 与 植物 两方,僵尸将入侵房屋,而玩家则需要种上必要的植物来攻击,抑或抵挡入侵的僵尸。此游戏内僵尸的种类有很多,面对不同种类的僵尸,玩家需要选择不同功能、不同攻击性、不同防御性的植物,以消灭所
2021-10-28 13:04:50
4281
3
原创 《植物大战僵尸》游戏数据修改
本次任务实现修改植物大战僵尸后台数据:修改《植物大战僵尸》的存档位置。能跳到指定关卡5-1修改《植物大战僵尸》的存档文件,让你的游戏账户有1w金币同时通过修改关卡完成下面的任务:- 修改关卡后解锁<迷你游戏>- 修改关卡后解锁<生存模式>准备工作 下载[《植物大战僵尸》] 下载[二进制编码软件]正式开始一、找到游戏数据存档位置通过百度我们可以查询到《植物大战僵尸》用户存档文件路径:我的路径是C:\ProgramData\PopCap Game
2021-10-26 18:13:36
16343
2
原创 Trie(前缀树)
Trie的定义字典树,英文名 trie。顾名思义,就是一个像字典一样的树。Trie,又称前缀树或字典树,是一棵有根树,其每个节点包含以下字段:1.指向子节点的指针数组children。children数组长度为 26,即小写英文字母的数量。此时 children[0] 对应小写字母 a,children[1] 对应小写字母 b,…,children[25] 对应小写字母 z。当然如果要存储更多的字符如数字0-9,或者汉字我们可以用哈希标来存储:如HashMap<Integer, String&
2021-10-19 16:23:03
303
原创 动态规划实现求最长公共子序列
动态规划算法动态规划(Dynamic programming)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时间往往远少于朴素解法。 动态规划背后的基本思想非常简单。大致上,若要解一个给定问题,我们需要解其不同部分(即子问题),再合并子问题的解以得出原问题的解。 通常许多子问题非常相似,为此动态规划法试图仅仅解决每个子问题一次,从而减少计算量: 一旦某个给定子问题的解已经算出,则
2021-10-17 21:11:54
262
1
原创 JAVA 使用 递归实现倒序输出正整数
递归递归(Recursion)是指在函数的定义中使用函数自身的方法。实际上,递归,顾名思义,其包含了两个意思:递 和 归,这正是递归思想的精华所在。递归的基本思想就是把规模大的问题转化为规模小的相似的子问题来解决。需要导入的模块import java.util.Arrays;import java.util.Random;import java.util.Scanner;生成随机数组public int[] random(){ Random r = new Random(10
2021-10-05 20:57:31
2422
1
原创 JAVA 二分搜索法
思路 在一组数组中查找一个数很多人看到这个问题后的最初想法估计都是直接从前面和后面按顺序查找,但是直接查找的复杂度是 O(N),并不是一个好的方案。我们还是要从二分查找法入手。导入模块import java.util.Arrays;import java.util.Scanner;实现输入数组public int[] inputArray(){//输入数组 System.out.println("请输入数组长度:"); Scanner in=new Scan
2021-10-05 18:06:43
132
原创 JAVA 汉诺塔
JAVA 汉诺塔汉诺塔是经典的递归方法的实现案例 代码片。import java.util.Scanner;/** * @author Huahua * @version 2021.9.22 */public class Hanoi { public void hanoi(int n,char a,char b,char c) { if (n == 1)//若只有一个圆盘,则直接从a移到b System.out.println(a+"-&g
2021-10-05 16:20:25
154
原创 基于Python爬取福建省莆田市天气预报数据获取与预处理的设计与实现
目 录@[TOC]1 绪论 @[TOC]1.1 概述随着科技进步,经济快速发展。在人们日常生活中天气的好坏一直扮演着重要的角色,天气也能影响人们心情,好的天气时,大家的心情会随着太阳的出现而变的更加美好,而阴雨连绵的天气中,各种沉闷的气息扑面而来,天气预报的主要内容是一个地区或城市未来一段时期内的阴晴雨雪、最高最低气温、风向和风力及特殊的灾害性天气。就中国而言,气象台准确预报寒潮、台风、暴雨等自然灾害出现的位置和强度,就可以直接为工农业生产和群众生活服务。随着生产力的发展和科学技术的进步,人类活动范
2021-06-26 15:44:24
8516
17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人