Java實現(xiàn)簡單密碼加密功能
本文實例為大家分享了Java實現(xiàn)簡單密碼加密案例,供大家參考,具體內(nèi)容如下
需求:
首先將一組數(shù)據(jù)倒序,然后將每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字,最后將第一位和最后一位數(shù)字交換。 請任意給定一個小于8位的整數(shù),然后,把加密后的結(jié)果在控制臺打印出來。
分析:
1.數(shù)據(jù)小于8位數(shù)2.數(shù)據(jù)倒序3.每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字4.最后將第一位和最后一位數(shù)字交換5.打印輸出
代碼實現(xiàn):
public class Encrypt{ public static void main(String[] args){ //定義小于8位的數(shù)據(jù) int number = 123456; //定義一個數(shù)組,,小于8位 int[] arr = new int[8]; //將定義的數(shù)據(jù),進行倒序 int index = 0; while(number > 0){ //數(shù)據(jù)求余運算,將余數(shù)存儲進數(shù)組中,第一次運算得到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]); } }}
運行結(jié)果:
可進行優(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('請輸入密碼(小于八位):'); 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ù)組元素拼接成字符串返回 //定義一個空字符串 String s = ''; for (int x = 0;x<index;x++){ s += arr[x]; } return s; }}
運行結(jié)果:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python GUI庫圖形界面開發(fā)之PyQt5動態(tài)(可拖動控件大小)布局控件QSplitter詳細使用方法與實例2. ASP將數(shù)字轉(zhuǎn)中文數(shù)字(大寫金額)的函數(shù)3. XML 非法字符(轉(zhuǎn)義字符)4. ASP 處理JSON數(shù)據(jù)的實現(xiàn)代碼5. js開發(fā)中的頁面、屏幕、瀏覽器的位置原理(高度寬度)說明講解(附圖)6. CSS清除浮動方法匯總7. 不要在HTML中濫用div8. vue跳轉(zhuǎn)頁面常用的幾種方法匯總9. CSS3實例分享之多重背景的實現(xiàn)(Multiple backgrounds)10. XML入門的常見問題(三)
