题解 | #字符串加解密#

字符串加解密

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

import java.util.Scanner;

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

    }
    public static String encode(String pas) {
        String res = "";
        char[] chs = pas.toCharArray();
        for (char c : chs) {
            if (Character.isLetter(c)) {
                if (c >= 'a' && c <= 'z') {
                    if (c == 'z') {
                        res += 'A';
                    } else {
                        res += Character.toUpperCase((char)(c + 1));
                    }
                } else {
                    if (c == 'Z') {
                        res += 'a';
                    } else {
                        res += Character.toLowerCase((char)(c + 1));
                    }
                }
            }
            if (Character.isDigit(c)) {
                if (c == '9') {
                    res += 0;
                } else {
                    res += (char)(c + 1);
                }
            }

        }
        return res;
    }
    public static String decode(String pas) {
        String res = "";
        char[] chs = pas.toCharArray();
        for (char c : chs) {
            if (Character.isLetter(c)) {
                if (c >= 'a' && c <= 'z') {
                    if (c == 'a') {
                        res += 'Z';
                    } else {
                        res += Character.toUpperCase((char)(c - 1));
                    }
                } else {
                    if (c == 'A') {
                        res += 'z';
                    } else {
                        res += Character.toLowerCase((char)(c - 1));
                    }
                }
            }
            if (Character.isDigit(c)) {
                if (c == '0') {
                    res += 9;
                } else {
                    res += (char)(c - 1);
                }
            }

        }
        return res;
    }
}

全部评论

相关推荐

湫湫湫不会java:1.在校经历全删了2.。这些荣誉其实也没啥用只能说,要的是好的开发者不是好好学生3.项目五六点就行了,一个亮点一俩行,xxx技术解决,xxx问题带来xxx提升。第一页学历不行,然后啥有价值的信息也没有,到第二页看到项目了,第一个项目九点,第二个项目像凑数的俩点。总体给人又臭又长,一起加油吧兄弟
点赞 评论 收藏
分享
05-19 15:21
已编辑
华南农业大学 Java
白火同学:你才沟通了200,说实话,北上广深杭这里面你连一座城市的互联网公司都没投满呢,更别说还有各种准一线二线城市了。等你沟通突破了三位数,还没结果再考虑转行的事吧。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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