|
package com.security;public class Caesar {/** * @param args * 凯撒加密算法,将字母移动一定的位置实现加密,属于对称加密,加密解密的密钥是一样的 * 加密命令: java Caesar 明文 key * 解密命令: java Caesar 密文 -key * * */public static void main(String[] args) {String str = args[0];System.out.println(str);int key = Integer.parseInt(args[1]);String es = "";for (int i = 0; i < str.length(); i++) {char c = str.charAt(i);if (c >= 'a' && c <= 'z') {c += key % 26;if (c < 'a')c += 26;if (c > 'z')c -= 26;} else if (c >= 'A' && c <= 'Z') {c += key % 26;if (c < 'A')c += 26;if (c > 'Z')c -= 26;}es += c;}System.out.println(es);}} |
|