将七进制字符串转换为int整数(整数转换为七进制),将字符按顺序排列,输出加密后的6为验证码

本文主要是介绍将七进制字符串转换为int整数(整数转换为七进制),将字符按顺序排列,输出加密后的6为验证码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

将七进制字符串转换为int整数 

public static void main(String[] args) {//                   被转换的数字  基数int num=Integer.parseInt("123",7);System.out.println(num);//        System.out.println((int)'0');
//        System.out.println((int)'1');
//        System.out.println((int)'2');
//        System.out.println((int)'3');
//        System.out.println('3'-'0');num=parseInt("-123",7);System.out.println(num);}public static int parseInt(String number,int radix){int end=0;int s=1;if (number.charAt(0)=='-'){s=-1;end=1;}int weight=1;int sum=0;for (int i=number.length()-1;i>=end;i--){char c=number.charAt(i);int n=c-'0';if (n<0||n>=radix){throw new NumberFormatException("数字错误"+c);}sum += n * weight;weight *= radix;}return s==-1? -sum:sum;//这里也能用乘法,不过乘法的性能慢}

将整数转换为其他进制 

public class Demo02 {public static void main(String[] args) {String str=Integer.toString(66,7);System.out.println(str);str=toString(-166,16);System.out.println(str);}static final char[] digi={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};public static String toString(int num,int radix){boolean negative=false;if (num<0){negative=true;num=-num;}char[] chars=new char[32];int index=chars.length-1;do {int last=num % radix;char c=digi[last];chars[index--]=c;num /=radix;}while (num!=0);if (negative){chars[index--]='-';}return new String(chars,index+1,chars.length-index-1);}
}

将字符串安A-Z计算出数量 

package cn.tedu.test;public class Demo03 {public static void main(String[] args) {System.out.println((int)'a');System.out.println((int)'z');System.out.println((int)'A');System.out.println((int)'Z');int[] counter=new int[26];String str="你好QWERTYUIOPAAABBBSDFGHJKLZXCVBNMZZZZZZ";for (int i=0;i<str.length();i++){char c=str.charAt(i);if (c>='A' && c<='Z'){counter[c-'A']++;}}for(char c='A';c<='Z';c++){System.out.println(c+":"+counter[c-'A']);}}}

将字符串安A-Z计算出数量 并且按照从大到小的数量排列 

package cn.tedu.test;import java.util.Arrays;public class Demo04 {public static void main(String[] args) {/*    int[][] counter={{'A',0},{'B',0},{'C',0},{'D',0},{'E',0},{'F',0},{'G',0},{'H',0},{'I',0},{'G',0},{'K',0},{'L',0},{'M',0},{'N',0},{'O',0},{'P',0},{'Q',0},{'I',0},{'S',0},{'T',0},{'U',0},{'V',0},{'W',0},{'X',0},{'Y',0},{'Z',0}};*/int [][] counter=new int [26][2];for (char c='A';c<='Z';c++){counter[c-'A'][0]=c;}String str="你好QWERTYUIOPAAABBBSDFFHGJKJHGDKMVGHJKLZXCVBNMZZZZZZ";for (int i=0;i<str.length();i++){char c=str.charAt(i);if (c>='A' && c<='Z'){counter[c-'A'][1]++;}}Arrays.sort(counter,(arr1,arr2)->arr2[1]-arr1[1]);for(int[] arr:counter){System.out.println((char)arr[0]+":"+arr[1]);}}}

 随机生成六位数,并对算法加密,小写变大写,大写变小写,数字复制n+1次.

package cn.tedu.test;public class test {//随机生成六位数,并对算法加密,小写变大写,大写变小写,数字复制n+1次.public static void main(String[] args) {String m1="QWERTYUIOPASDFGHJKLZXCCVVBNMqwertyuioplmkjnhbgvfcdxsza0123456789";String m2="";StringBuilder buf=new StringBuilder();for (int a=0;a<6;a++){int num = (int) ((Math.random() * 62));String a1 = String.valueOf(m1.charAt(num));System.out.println("输入的字符:"+a1);if (a1.matches("[a-z]")){buf.append(a1.toUpperCase());}else if(a1.matches("[A-Z]")){buf.append(a1.toLowerCase());}else if (a1.matches("[0-9]")){int a2=Integer.parseInt(a1);for (int i = 0; i <a2+1 ; i++) {buf.append(a1);}}String a3=buf.toString();System.out.println("密码为:"+a3);}}
}
public class Demo07 {public static void main(String[] args) {//生产6个字符String chs = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"+"abcdefghijklmnopqrstuvwxyz"+"0123456789-_";char[] code = new char[6];Random r = new Random();for(int i=0; i<code.length; i++){code[i] = chs.charAt(r.nextInt(chs.length()));}System.out.println(code);//进行编码StringBuilder buf = new StringBuilder();for (char c:code) {if(c>='A' && c<='Z'){buf.append((char)(c+32));}else if(c>='a' && c<='z'){buf.append((char)(c-32));}else if(c>='0' && c<='9'){int n = c - '0';for(int i=0; i<=n; i++){buf.append(c);}}else{buf.append("\\").append(c=='-'?'_':'-');}}String encode = buf.toString();System.out.println(encode);
​}}

 

这篇关于将七进制字符串转换为int整数(整数转换为七进制),将字符按顺序排列,输出加密后的6为验证码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/857769

相关文章

JAVA中整型数组、字符串数组、整型数和字符串 的创建与转换的方法

《JAVA中整型数组、字符串数组、整型数和字符串的创建与转换的方法》本文介绍了Java中字符串、字符数组和整型数组的创建方法,以及它们之间的转换方法,还详细讲解了字符串中的一些常用方法,如index... 目录一、字符串、字符数组和整型数组的创建1、字符串的创建方法1.1 通过引用字符数组来创建字符串1.2

Java中的密码加密方式

《Java中的密码加密方式》文章介绍了Java中使用MD5算法对密码进行加密的方法,以及如何通过加盐和多重加密来提高密码的安全性,MD5是一种不可逆的哈希算法,适合用于存储密码,因为其输出的摘要长度固... 目录Java的密码加密方式密码加密一般的应用方式是总结Java的密码加密方式密码加密【这里采用的

C#中字符串分割的多种方式

《C#中字符串分割的多种方式》在C#编程语言中,字符串处理是日常开发中不可或缺的一部分,字符串分割是处理文本数据时常用的操作,它允许我们将一个长字符串分解成多个子字符串,本文给大家介绍了C#中字符串分... 目录1. 使用 string.Split2. 使用正则表达式 (Regex.Split)3. 使用

SpringBoot整合kaptcha验证码过程(复制粘贴即可用)

《SpringBoot整合kaptcha验证码过程(复制粘贴即可用)》本文介绍了如何在SpringBoot项目中整合Kaptcha验证码实现,通过配置和编写相应的Controller、工具类以及前端页... 目录SpringBoot整合kaptcha验证码程序目录参考有两种方式在springboot中使用k

SpringBoot如何集成Kaptcha验证码

《SpringBoot如何集成Kaptcha验证码》本文介绍了如何在Java开发中使用Kaptcha生成验证码的功能,包括在pom.xml中配置依赖、在系统公共配置类中添加配置、在控制器中添加生成验证... 目录SpringBoot集成Kaptcha验证码简介实现步骤1. 在 pom.XML 配置文件中2.

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

使用 Python 和 LabelMe 实现图片验证码的自动标注功能

《使用Python和LabelMe实现图片验证码的自动标注功能》文章介绍了如何使用Python和LabelMe自动标注图片验证码,主要步骤包括图像预处理、OCR识别和生成标注文件,通过结合Pa... 目录使用 python 和 LabelMe 实现图片验证码的自动标注环境准备必备工具安装依赖实现自动标注核心

Java将时间戳转换为Date对象的方法小结

《Java将时间戳转换为Date对象的方法小结》在Java编程中,处理日期和时间是一个常见需求,特别是在处理网络通信或者数据库操作时,本文主要为大家整理了Java中将时间戳转换为Date对象的方法... 目录1. 理解时间戳2. Date 类的构造函数3. 转换示例4. 处理可能的异常5. 考虑时区问题6.

Java中JSON字符串反序列化(动态泛型)

《Java中JSON字符串反序列化(动态泛型)》文章讨论了在定时任务中使用反射调用目标对象时处理动态参数的问题,通过将方法参数存储为JSON字符串并进行反序列化,可以实现动态调用,然而,这种方式容易导... 需求:定时任务扫描,反射调用目标对象,但是,方法的传参不是固定的。方案一:将方法参数存成jsON字

基于C#实现将图片转换为PDF文档

《基于C#实现将图片转换为PDF文档》将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片,所以本文将介绍如何使用C#将JPG/PNG图片转换为PDF文档,需要的可以参考下... 目录介绍C# 将单张图片转换为PDF文档C# 将多张图片转换到一个PDF文档介绍将图片(JPG、PNG)转