加密字符串

时间:2015-02-10 15:41:12

标签: java encryption

我想知道如果我要加密40个字符该怎么办,但我只能使用我所做的代码加密第一个字符。

    System.out.println("Enter character: ");
    sentence = scan.nextLine();
    String random;
    System.out.println("Enter random character: ");
    random = scan.nextLine();


    conv = random.charAt(sentence.indexOf(sentence));
    back = sentence.charAt(random.indexOf(conv));

    System.out.println("U want to encrypt or decrypt?");
    answer = scan.nextLine();



   if(answer.equals("encrypt"))
   {
    System.out.println("The original character is:" +sentence);
    System.out.println("The encrypted character is:" +conv);
   }
   else
    {
    System.out.println("The decrypted character is:" +back);

    }
    // TODO code application logic here
    }

}

1 个答案:

答案 0 :(得分:0)

很明显,当您只将语句排除一次时,只有一个字符会被加密。您需要使用循环来遍历输入字符串中的所有字符。让我举个例子:

String conv = "";
for (int i = 0; i < senentence.length(); i++) {
    conv.append(...);
}

您追加的内容取决于您使用的算法以及输入的字符串的长度。使用random.charAt(i)只会使用随机字符串,并最终抛出异常。