首页 > 解决方案 > 如何在数组中找到字母的位置,然后使用另一个数组中的相同位置仅使用数组和循环进行加密

问题描述

我已经从用户关键字创建了我的加密密码。我现在正在尝试使用密码加密一些文本,例如“你好”。我已经完成了一半,我知道我想做什么,但我不知道如何实现它?我已经遍历了输入文本和字母表,一旦它们匹配,我就想使用数组中的位置进入密码数组中的相同位置并从那里打印字母。示例如下。

String input = "HELLO";
String output;

char[] alphToChar2 = alphabet.toCharArray();
char[] cipher2 = cipher;
char[] textasarray = input.toCharArray();


for(int j = 0; j<textasarray.length; j++) { //loop through text
    for (int i = 0; i<alphToChar2.length; i++) { // loop through alphabet
     {
        if (alphToChar2[j] == textasarray[i]); //if alphabet letter is equal to text letter
            for(int p = 0; p<cipher.length; p++) //looping through cipher 

然后我想使用该字母在字母表中的位置,并使用加密数组中相同位置的字母进行加密。

例如,“H”位于字母数组中的第 7 位。现在我想使用密码数组中的位置 7 并将其打印到输出。我是否应该打印到新数组然后将该数组转换回字符串以进行加密。

标签: javaarraysencryption

解决方案


根据我得到的信息,您想在密码中的屏幕位置 7 上打印:为此,我认为您不需要最后一个 for 循环。您可以在屏幕上打印 cipher2[i]。


推荐阅读