41:简单密码

题目描述:

他是这么变换的,大家都知道手机上的字母: 1--1, abc--2, def--3, ghi--4, jkl--5, mno--6, pqrs--7, tuv--8 wxyz--9, 0--0,就这么简单,渊子把密码中出现的小写字母都变成对应的数字,数字和其他的符号都不做变换.

声明:密码中没有空格,而密码中出现的大写字母则变成小写之后往后移一位,如:X,先变成小写,再往后移一位,不就是y了嘛,简单吧。记住,z往后移是a哦。

输入描述:

输入包括多个测试数据。输入是一个明文,密码长度不超过100个字符,输入直到文件结尾

输出描述:输出渊子真正的密文

输入例子:

YUANzhi1987

输出例子:

zvbo9441987

 

 1 import java.util.Scanner;
 2 
 3 public class Main {
 4 
 5     public static void main(String[] args) {
 6         Scanner in  = new Scanner(System.in);
 7         while(in.hasNext())
 8         {
 9             String psw = in.nextLine();
10             String result = translate(psw);
11             System.out.println(result);
12         }
13     }
14 
15     private static String translate(String psw) {
16         if(!psw.isEmpty() && !(psw == null))
17         {   
18             //char[] content = psw.toCharArray();
19             char content = '0';
20             char[] result = new char[psw.length()];
21             char temp;
22             for(int i=0; i<psw.length();i++)
23             {
24                 content = psw.charAt(i);
25                 //Upper
26                 if(content <= 'Z' && content >= 'A')
27                 {
28                     temp = Character.toLowerCase(content);
29                     if(temp == 'z')
30                     {
31                         result[i] = 'a';
32                     }
33                     else 
34                         result[i] = (char)(Integer.valueOf(temp)+1);
35                 }
36                 //num
37                 if(content >= '0' && content<='9' )
38                 {
39                     result[i] = content;
40                 }
41                 //Lower
42                 /*if (c >= 'a' && c <= 'z') {
43                     if (c == 's' || c == 'v'|| c == 'y' || c == 'z')
44                         sb.append((c - 'a') / 3 + 1);
45                     else
46                         sb.append((c - 'a') / 3 + 2);*/
47                 if(content <= 'z' && content >= 'a')
48                 {
49                     if(content<='c' && content >= 'a' )
50                     {
51                         result[i] = '2';
52                     }
53                     else if(content<='f' && content >= 'd' )
54                     {
55                         result[i] = '3';
56                     }
57                     else if(content<='i' && content >= 'g' )
58                     {
59                         result[i] = '4';
60                     }
61                     else if(content<='l' && content >= 'j' )
62                     {
63                         result[i] = '5';
64                     }
65                     else if(content<='o' && content >= 'm' )
66                     {
67                         result[i] = '6';
68                     }
69                     else if(content<='s' && content >= 'p' )
70                     {
71                         result[i] = '7';
72                     }
73                     else if(content<='v' && content >= 't' )
74                     {
75                         result[i] = '8';
76                     }
77                     else 
78                         //if(content<='z' && content >= 'w' )
79                     {
80                         result[i] = '9';
81                     }
82                     
83                 }
84             }
85             return String.valueOf(result);
86         }
87         return null;
88     }
89 
90 }
原文地址:https://www.cnblogs.com/newcoder/p/5823505.html