最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java簡(jiǎn)單實(shí)現(xiàn)對(duì)一串?dāng)?shù)字采用相應(yīng)的加密策略后傳輸

 更新時(shí)間:2016年09月30日 11:44:16   投稿:jingxian  
下面小編就為大家?guī)硪黄狫ava簡(jiǎn)單實(shí)現(xiàn)對(duì)一串?dāng)?shù)字采用相應(yīng)的加密策略后傳輸。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

某個(gè)公司采用公用電話傳遞數(shù)據(jù)信息,數(shù)據(jù)是小于8位的整數(shù),為了確保安全,

在傳遞過程中需要加密,加密規(guī)則如下:

首先將數(shù)據(jù)倒序,然后將每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字,

最后將第一位和最后一位數(shù)字交換。 請(qǐng)任意給定一個(gè)小于8位的整數(shù),

然后,把加密后的結(jié)果在控制臺(tái)打印出來。

題目要求:

A:數(shù)據(jù)是小于8位的整數(shù)

定義一個(gè)int類型的數(shù)據(jù)
int number = 123456;

B:加密規(guī)則

a:首先將數(shù)據(jù)倒序

結(jié)果 654321

b:然后將每位數(shù)字都加上5,再用和除以10的余數(shù)代替該數(shù)字

結(jié)果 109876

c:最后將第一位和最后一位數(shù)字交換

結(jié)果 609871

C:把加密后的結(jié)果輸出在控制臺(tái)

通過簡(jiǎn)單的分析,我們知道如果我們有辦法把這個(gè)數(shù)據(jù)變成數(shù)組就好了。

不是直接寫成這個(gè)樣子的:

int[] arr = {1,2,3,4,5,6};

如何把數(shù)據(jù)轉(zhuǎn)成數(shù)組呢?

A:定義一個(gè)數(shù)據(jù)
int number = 123456;

B:定義一個(gè)數(shù)組,這個(gè)時(shí)候問題就來了,數(shù)組的長(zhǎng)度是多少呢?
int[] arr = new int[8]; //不可能超過8
在賦值的時(shí)候,我用一個(gè)變量記錄索引的變化。
定義一個(gè)索引值是0
int index = 0;

C:獲取每一個(gè)數(shù)據(jù)

int ge = number%10
int shi = number/10%10
int bai = number/10/10%10

arr[index] = ge;
index++;
arr[index] = shi;
index++;
arr[index] = bai;

源代碼:

import java.util.Scanner;

class JiaMiMain {
	public static void main(String[] args) {
		// 創(chuàng)建鍵盤錄入對(duì)象
		Scanner sc = new Scanner(System.in);

		// 請(qǐng)輸入一個(gè)數(shù)據(jù)
		System.out.println("請(qǐng)輸入一個(gè)數(shù)據(jù)(小于8位):");
		int number = sc.nextInt();

		// 寫功能實(shí)現(xiàn)把number進(jìn)行加密
		// 調(diào)用
		String result = jiaMi(number);
		System.out.println("加密后的結(jié)果是:" + result);
	}

	/*
	 * 需求:寫一個(gè)功能,把數(shù)據(jù)number實(shí)現(xiàn)加密。 兩個(gè)明確: 返回值類型:String 做一個(gè)字符串的拼接。 參數(shù)列表:int number
	 */
	public static String jiaMi(int number) {
		// 定義數(shù)組
		int[] arr = new int[8];

		// 定義索引
		int index = 0;

		// 把number中的數(shù)據(jù)想辦法放到數(shù)組中
		while (number > 0) {
			arr[index] = number % 10;
			index++;
			number /= 10;
		}

		// 把每個(gè)數(shù)據(jù)加5,然后對(duì)10取得余數(shù)
		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è)字符串返回
		// 定義一個(gè)空內(nèi)容字符串
		String s = "";

		for (int x = 0; x < index; x++) {
			s += arr[x];
		}

		return s;
	}
}

以上就是小編為大家?guī)淼腏ava簡(jiǎn)單實(shí)現(xiàn)對(duì)一串?dāng)?shù)字采用相應(yīng)的加密策略后傳輸?shù)娜績(jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~

相關(guān)文章

最新評(píng)論

莒南县| 环江| 朝阳市| 芷江| 衡南县| 神农架林区| 汉源县| 陇西县| 凤山市| 田林县| 高青县| 阿拉善右旗| 广丰县| 鄂尔多斯市| 黄大仙区| 辉南县| 吉木乃县| 马公市| 宜昌市| 额济纳旗| 平遥县| 仁怀市| 大田县| 高平市| 桂林市| 隆尧县| 汝城县| 报价| 加查县| 广饶县| 耿马| 古丈县| 多伦县| 聊城市| 兰州市| 金门县| 曲靖市| 祁门县| 韶山市| 鲁甸县| 临汾市|