1. 程式人生 > 程式設計 >Java實現簡單密碼加密功能

Java實現簡單密碼加密功能

本文例項為大家分享了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]);
 }
 
 }
}

執行結果:

Java實現簡單密碼加密功能

可進行優化:

  • 通過鍵盤輸入資料(小於八位)
  • 通過呼叫方法的方式
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;
 }
}

執行結果:

Java實現簡單密碼加密功能

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。