Java-字符串加密
1设计思想:
改程序是对小写的a到z进行加密,输入一段字符串str,输入加密的密匙k,判断录入的的字符与
‘z’-k+1的大小,比其小的直接加上密匙转化为新的字符,大于的加(k-26)将最后几位字符转到
开头,实现字符串的加密,解密反之。
2程序流程图:


3.源代码:
//本程序对小写a到z的字符加密
//信1603 李敦岳 20163520
//2017.10.26
package zuoye; import java.util.Scanner; public class Ceaser { public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in); System.out.println("请输入要加密信息");
String str=in.nextLine();
System.out.println("请输入加密密匙");
int k=in.nextInt();
Jiami(str,k);
Scanner ou=new Scanner(System.in);
System.out.println("请输入要解密信息");
String str1=ou.nextLine(); System.out.println("请输入加密密匙");
int y=ou.nextInt();
Jiemi(str1,y); }
static void Jiami(String a,int k)
{
int b=a.length();
for(int i=;i<a.length();i++)
{
if(a.charAt(i)<('z'-k+))
{
System.out.print((char)(a.charAt(i)+k));
}
if(a.charAt(i)>=('z'-k+))
{
System.out.print((char)(a.charAt(i)-+k));
}
}
}
static void Jiemi(String b,int k)
{
for(int i=;i<b.length();i++)
{
if(b.charAt(i)<('a'+k))
{
System.out.print((char)(b.charAt(i)+-k));
}
if(b.charAt(i)>=('a'+k))
{
System.out.print((char)(b.charAt(i)-k));
}
}
}
}
4结果截图:

Java-字符串加密的更多相关文章
- java字符串加密解密
java字符串加密解密 字符串加密解密的方式很多,每一种加密有着相对的解密方法.下面要说的是java中模拟php的pack和unpack的字符串加密解密方法. java模拟php中pack: /** ...
- 使用C# DES解密java DES加密的字符串
转自 microAllen 最近需要使用C#的DES解密工具类解密字符串,但是要解密的字符串是使用java进行DES加密的,去网上查了关于C#和java关于DES加密解密的资料,发现可以相互加密解 ...
- Java对字符串加密并返回星号※
If you don't look back, you'll never know I waiting for you behind you. Java对字符串加密并返回星号※ PasswordUt ...
- Java md5加密 控制台传入与web传入参数 结果不匹配 || 相同字符串加密结果不同,如何保证JAVA MD5加密结果在不同的环境下都相同
开发中遇到md5加密不一致问题,排除了上下文编码,加密内容问题. 爬了各类资料,最终找到了原因. /** 对字符串进行MD5加密 */ private static String encodeByMD ...
- java笔试之字符串加密
有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙.下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS.如果单词中包含有重复的字母,只保留第1个,其余几个丢弃.现在,修改 ...
- java字符串MD5加密后再转16进制
话不多说上码 pom.xml <!-- MD5 --> <dependency> <groupId>org.apache.commons</groupId&g ...
- js和java MD5加密
项目中用到js MD5加密和后台java MD5加密,刚开始加密后两个不一致,网上找了好久终于找到一个啦,记下来: md5.js /* * A JavaScript implementation of ...
- java AES 加密与解密
package com.ss.util.secret; import java.io.UnsupportedEncodingException; import java.security.Inva ...
- Java Base64加密、解密原理Java代码
Java Base64加密.解密原理Java代码 转自:http://blog.csdn.net/songylwq/article/details/7578905 Base64是什么: Base64是 ...
- Java 前端加密传输后端解密以及验证码功能
目录(?)[-] 加密解密 1 前端js加密概述 2 前后端加密解密 21 引用的js加密库 22 js加密解密 23 Java端加密解密PKCS5Padding与js的Pkcs7一致 验证码 1 概 ...
随机推荐
- LINE@生活圈招募好友秘笈
什么是「获得更多好友」页面? 您可从 LINE@ app >管理>获得更多好友 进入此页面. ▼ 「获得更多好友」新介面中,募集好友的四大秘诀 秘诀一.「以社群网站或电子邮件分享」 • ...
- selenium +chrome headless Adhoc模式渲染网页
mannual和adhoc模式比较 Manual vs. Adhoc In the script above, we start the ChromeDriver server process whe ...
- selenium+phantomjs渲染网页
from selenium import webdriverfrom selenium.webdriver.common.desired_capabilities import DesiredCapa ...
- [Unity3D] 01 - Try Unity3D
01. Move and Rotate 标准全局坐标系 Keyboard using UnityEngine; using System.Collections; public class NewBe ...
- 《NodeJs开发指南》第五章微博开发实例的中文乱码问题
在<NodeJs开发指南>第五章,按照书中的要求写好微博实例后,运行代码,发现中文显示出现乱码,原因是:views文件夹下的ejs文件的编码格式不是utf-8. 解决方法:以记事本方式打开 ...
- 【Cesium】坐标理解(转)
https://blog.csdn.net/qq_34149805/article/details/78393540 1. 经纬度转换为世界坐标 第一种方式:直接转换: Cesium.Cartesia ...
- 分析JobInProgress中Map/Reduce任务分配
1.JobTracker能否决定给当前的TaskTracker节点分配一个Job的具体的哪一个任务? 2.什么是map本地任务? 3.nonRunningMapCache的作用是什么? 4.从Task ...
- 深入理解Auto Layout 第一弹
本文转载至 http://zhangbuhuai.com/2015/07/16/beginning-auto-layout-part-1/ By 张不坏 2015-07-16 更新日期:2015-07 ...
- 《转载》为什么我要在2018年学习Python?
本文转载自36kr 从网页编程到时髦的人工智能,机器学习,这个享有"瑞士军刀(万能工具)"盛誉的Python语言, 你学会了吗? 编者注: 根据维基百科的解释,"Pyth ...
- easy-ui curd方法
/** _ooOoo_ o8888888o 88" . "88 (| -_- |) O\ = /O ____/`---'\____ .' \\| |// `. / \\||| : ...