题解 | #简单密码#

简单密码

http://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac

重点1:熟悉char字符运算规则,熟悉int类型数字转char类型字符对应的条件

重点2:找规律,3个一组,特殊情况特殊处理

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String next = sc.next();
        char[] c = next.toCharArray();
        for (int i=0; i<c.length;i++) {
          // 小写转数字
          if(c[i]>= 'a' && c[i] <= 'r'){
              // +'0' 之前的结果为int2,3,要想得到 字符'2','3'。。。必须加上缺少的acall码对应的10进制数
              c[i]=(char)((c[i] -'a')/3+2+'0');
          // 小写特殊处理
          }else if(c[i] == 's'){
              c[i]= '7';
          }else if(c[i] >= 't' && c[i] <= 'u') {
              c[i] = (char) ((c[i] - 'a') / 3 + 2 + '0');
              //小写特殊处理
          }else if(c[i] == 'v') {
              c[i] = '8';
          }else if(c[i] >= 'w'&& c[i] <='z'){
              c[i] =  '9';
          // 大写转小写
          }else if(c[i] >= 'A' && c[i] <='Y'){
              c[i] = (char)(c[i]+32+1);
          // 大写特殊处理
          }else if(c[i] == 'Z'){
              c[i] =  'a';
          }
        }
        // 遍历新的字符数组
        for (char c1 : c) {
            System.out.print(c1);
        }

    }
}
全部评论

相关推荐

流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
点赞 评论 收藏
分享
07-09 18:33
门头沟学院 Java
这么逆天每年都有人去???&nbsp;填多益网申就是大型的服从性测试
鲁大牛:辅导员在群里发了这个公司我就申了一下。网申居然要写当场开摄像头写两篇不少于三百字的作文。太逆天了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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