先看一下子题目的要求,类似的思路大概都是这样子
首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代表该数字,最后将第一位和最后一位数字交换请给定任意一个小于8位的整数,然后,将加密后的结果在控制台打印出来
思路:让使用者输入一串数字进行加密,然后用nextLine()方法获得到该数字的字符串类型,然后将其转换为数组(直接用splite(""))就可以直接进行操作,利用数组进行倒序,然后再进行交换.
代码就偷懒不加注释了,都是很简单的方法进行处理,加油一起努力学下去吧!!!
大致代码如下:
public class SETest {
public static void main(String[] args) {
SETest seTest = new SETest();
System.out.println("请输入一个小于8位的整数,然后会将整数加密后输出");
Scanner sc = (new Scanner(System.in));
String number = sc.nextLine();
int[] array1 = seTest.intArray(number);
int[] password = seTest.addPassword(array1);
System.out.println("加密后的结果为: ");
for (int i : password) {
System.out.print(i);
}
}
public int[] intArray(String a) {
String[] split = a.split("");
int[] aa = new int[split.length];
int num = 0;
for (int i = split.length-1; i >= 0; i--) {
aa[num] = Integer.parseInt(split[i]);
num++;
}
return aa;
}
public int[] addPassword(int[] a) {
for (int i = 0; i < a.length; i++) {
a[i] = (a[i]+5)%10;
}
int temp = a[0];
a[0] = a[a.length-1];
a[a.length-1] = temp;
return a;
}
}
你竟然又翻到了最后,么么哒