题解 | #字符串加解密#

字符串加解密

https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String toEncrypt = in.nextLine();
        String toDecrypt = in.nextLine();
        System.out.println(Code(toEncrypt, true));
        System.out.println(Code(toDecrypt, false));

    }
    private static String Code(String s, boolean encrypt) {
        String en = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        String cp = "BCDEFGHIJKLMNOPQRSTUVWXYZAbcdefghijklmnopqrstuvwxyza";
        String num = "0123456789";
        StringBuilder sb = new StringBuilder();
        for (char i : s.toCharArray()) {
            if (encrypt) {
                if (num.contains(String.valueOf(i))) {
                    int j = num.indexOf(i);
                    if (j >= num.length() - 1) {
                        j = 0;
                    } else {
                        j += 1;
                    }
                    sb.append(num.charAt(j));
                }
                if (en.contains(String.valueOf(i))) {
                    sb.append(cp.charAt(en.indexOf(i)));
                }
            } else {
                if (num.contains(String.valueOf(i))) {
                    int j = num.indexOf(i);
                    if (j == 0) {
                        j = num.length()-1;
                    } else {
                        j -= 1;
                    }
                    sb.append(num.charAt(j));
                }
                if (cp.contains(String.valueOf(i))) {
                    sb.append(en.charAt(cp.indexOf(i)));
                }
            }
        }
        return sb.toString();
    }
}

题目有坑。 说是有数字的时候, 其它不变。但其实每个字符都有变。给的示例也不全。

全部评论

相关推荐

白火同学:1、简历可以浓缩成一页,简历简历先要“简”方便HR快速过滤出有效信息,再要“历”用有效信息突出个人的含金量。 2、教育背景少了入学时间~毕业时间,HR判断不出你是否为应届生。 3、如果你的平台账号效果还不错,可以把账号超链接或者用户名贴到对应位置,一是方便HR知道你是具体做了什么内容的运营,看到账号一目了然,二是口说无凭,账号为证,这更有说服力。
面试被问期望薪资时该如何...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务