Java實現簡單密碼加密功能
阿新 • • 發佈:2020-03-09
本文例項為大家分享了Java實現簡單密碼加密案例,供大家參考,具體內容如下
需求:
首先將一組資料倒序,然後將每位數字都加上5,再用和除以10的餘數代替該數字,
最後將第一位和最後一位數字交換。 請任意給定一個小於8位的整數,
然後,把加密後的結果在控制檯打印出來。
分析:
1.資料小於8位數
2.資料倒序
3.每位數字都加上5,再用和除以10的餘數代替該數字
4.最後將第一位和最後一位數字交換
5.列印輸出
程式碼實現:
public class Encrypt{ public static void main(String[] args){ //定義小於8位的資料 int number = 123456; //定義一個數組,小於8位 int[] arr = new int[8]; //將定義的資料,進行倒序 int index = 0; while(number > 0){ //資料求餘運算,將餘數儲存進陣列中,第一次運算得到6 arr[index] = number%10; index++; //資料除10 number /= 10; } //每位數字都加上5,再用和除以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; //輸出資料 for(int x = 0;x<index;x++){ System.out.println(arr[x]); } } }
執行結果:
可進行優化:
- 通過鍵盤輸入資料(小於八位)
- 通過呼叫方法的方式
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; //把陣列元素拼接成字串返回 //定義一個空字串 String s = ""; for (int x = 0;x<index;x++){ s += arr[x]; } return s; } }
執行結果:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。