【发布时间】:2020-12-03 19:04:40
【问题描述】:
我需要写一条消息,然后按照一定的数字将每个字母更改为另一个
例如:如果我的消息是 abcd 并且选择的数字是 5,那么我的消息必须变成 fghi。
我只是创建了一个遍历表 char 的 for 循环,并创建了一个包含所有字母表和每个字母的 switch case。我认为这就像 python,我可以循环到表的开头,但它告诉我索引超出了范围。我的可能性是什么?
char[] abc = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
for (int i = 0; 1 <= mesgIn.length; i++){
switch(mesgIn[i]) {
case 'a' -> mesgIn[i] = mesgIn[rot];
case 'b' -> mesgIn[i] = abc[1 + rot];
case 'c' -> mesgIn[i] = abc[2 + rot];
编辑:int rot 是我想要做的字母旋转次数。等于用户想要的wtv
编辑 2:发现更容易做到这一点。我只是在 abc[] 中添加了两次字母,所以 abc[0] 是 'a',但 abc[26] 也是如此
【问题讨论】:
标签: java arrays indexing message