Java實(shí)現(xiàn)簡單密碼加密功能
本文實(shí)例為大家分享了Java實(shí)現(xiàn)簡單密碼加密案例,供大家參考,具體內(nèi)容如下
需求:
首先將一組數(shù)據(jù)倒序,然后將每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字,最后將第一位和最后一位數(shù)字交換。 請(qǐng)任意給定一個(gè)小于8位的整數(shù),然后,把加密后的結(jié)果在控制臺(tái)打印出來。
分析:
1.數(shù)據(jù)小于8位數(shù)2.數(shù)據(jù)倒序3.每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字4.最后將第一位和最后一位數(shù)字交換5.打印輸出
代碼實(shí)現(xiàn):
public class Encrypt{ public static void main(String[] args){ //定義小于8位的數(shù)據(jù) int number = 123456; //定義一個(gè)數(shù)組,,小于8位 int[] arr = new int[8]; //將定義的數(shù)據(jù),進(jìn)行倒序 int index = 0; while(number > 0){ //數(shù)據(jù)求余運(yùn)算,將余數(shù)存儲(chǔ)進(jìn)數(shù)組中,第一次運(yùn)算得到6 arr[index] = number%10; index++; //數(shù)據(jù)除10 number /= 10; } //每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字 for(int x = 0;x<index;x++){ arr[x] += 5; arr[x] %= 10; } //最后將第一位和最后一位數(shù)字交換 int temp = arr[0]; arr[0] = arr[index-1]; arr[index-1] = temp; //輸出數(shù)據(jù) for(int x = 0;x<index;x++){ System.out.println(arr[x]); } }}
運(yùn)行結(jié)果:
可進(jìn)行優(yōu)化:
通過鍵盤輸入數(shù)據(jù)(小于八位) 通過調(diào)用方法的方式import java.util.Scanner;public class Encrypt { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println('請(qǐng)輸入密碼(小于八位):'); int number2 = sc.nextInt(); String result = Encrypt(number2); System.out.println('加密后的密碼:'+result); } //字符串類型 public static String Encrypt(int number2){ int []arr = new int[8]; int index = 0; while (number2 > 0) { arr[index] = number2 % 10; index++; number2 /= 10; } for (int x = 0; x < index; x++) { arr[x] += 5; arr[x] %= 10; } int temp = arr[0]; arr[0] = arr[index - 1]; arr[index - 1] = temp; //把數(shù)組元素拼接成字符串返回 //定義一個(gè)空字符串 String s = ''; for (int x = 0;x<index;x++){ s += arr[x]; } return s; }}
運(yùn)行結(jié)果:
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. XML在語音合成中的應(yīng)用2. XML 非法字符(轉(zhuǎn)義字符)3. ASP將數(shù)字轉(zhuǎn)中文數(shù)字(大寫金額)的函數(shù)4. .NET Core 分布式任務(wù)調(diào)度ScheduleMaster詳解5. HTML5實(shí)戰(zhàn)與剖析之觸摸事件(touchstart、touchmove和touchend)6. XML入門的常見問題(三)7. jscript與vbscript 操作XML元素屬性的代碼8. .NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別9. HTTP協(xié)議常用的請(qǐng)求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))10. 不要在HTML中濫用div
