gpt4 book ai didi

java - 如何将所有这些索引放入 char 数组?

转载 作者:行者123 更新时间:2023-12-02 10:39:32 25 4
gpt4 key购买 nike

我找不到一种方法可以将加密的字符放入字符数组中,以便我可以将消息放在一行上。如果有人能给我一个简单的问题解决方案或以任何方式帮助我,那就太好了!

import java.util.*;

public class MyClass {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);

// can get the index without key. DONE
// encrypt message. finish equation.

int encryptKey, encryptedIndex;
int plainLetterIndex = 0;
int loadingBar = 3;
char encryptedChar;
char[] alphaArray = {'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'};
String redo, message;

System.out.println("Welcome to the encrypter and decrypter program. The program will take the message");
System.out.println("and either encrypt it or decrypt it. Depending on what you choose to do.");

System.out.println("");

do {
System.out.println("Please enter your message!");
message = sc.nextLine();
message = message.toUpperCase();

System.out.print("Would you like to re-enter your message? (Y/N)");
redo = sc.nextLine();

} while (redo.equals("Y") || redo.equals("y"));

// declaring arrays
char[] messageArray = message.toCharArray();
char[] encryptedMessageArray = new char[messageArray.length];

// asking for key
System.out.println("Please input the 'key' you would like to use to encrypt your message.");

while(true){
try{
encryptKey = Integer.parseInt(sc.nextLine());
break;
} catch (NumberFormatException ignore){
System.out.println("You have entered an incorrect number, please try again!");
}
}


System.out.println(" ");

for (int i = 0; i < messageArray.length; i++) {

//System.out.println(messageArray[i]);

for (int k = 0; k < alphaArray.length; k++) {

if (messageArray[i] == alphaArray[k]) {
plainLetterIndex = k;

encryptedIndex = (char)(plainLetterIndex + encryptKey) % 26;
encryptedChar = alphaArray[encryptedIndex];

//encryptedMessageArray = encryptedChar;

System.out.print(encryptedChar);
}
}
}
sc.close();
}
}

最佳答案

encryptedMessageArray 使用索引变量,每次将字符放入 encryptedMessageArray 时增加它

int index = 0;
for (int i = 0; i < messageArray.length; i++) {

//System.out.println(messageArray[i]);

for (int k = 0; k < alphaArray.length; k++) {

if (messageArray[i] == alphaArray[k]) {
plainLetterIndex = k;

encryptedIndex = (char)(plainLetterIndex + encryptKey) % 26;
encryptedChar = alphaArray[encryptedIndex];

encryptedMessageArray[index] = encryptedChar;
index++;

}
}

}

System.out.println();
System.out.println(encryptedMessageArray);

关于java - 如何将所有这些索引放入 char 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53027795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com