我需要能够使用Polybius Square加密和解密消息。我知道这是如何在纸上工作的,但是当把它变成一个程序时,我不知道从哪里开始。我打算使用哈希地图,但我被告知这是一个不好的方法,并且有更好的方法来做到这一点......但我不知道会采用什么方法。
我已经获得了代码,通过我在项目研讨会上的讲座来帮助我,但我并不完全理解它。我会把它粘贴在下面,如果有人能解释一下,我会非常感激!我过去一直专注于C,所以现在谈到Java时我有点生气。
char [][] poly = {
{",'A','B','D'.....
{'A','P','H','Q'}
}
这是我用来对Polybius广场进行排序的双重阵列吗?
for(int row = 0; row < poly.length; row++) {
}
for(int col = 0; col < poly[row].length; col++) {
}
// c is the char I'm looking for
if(poly[row][col] == c){
}
这用于导航数组并找到我想要的字符?
// how to break a line down to a character
String[] words = line.split(" ");
for(int i=0; i < words.length; i++){
String word = words[i];
for(int j = 0; j <word.length(); j++){
char letter = word.charAt(j);
encrypt(letter);
}
}
这显然打破了一行字母?那我该怎么办?是Java运行时库中的方法encrypt
还是我必须以某种方式自己创建?
我不知道从哪里开始或者最好的方法是什么,我想我可能只是看哈希地图教程并尝试一下?这是我第一次尝试加密,整个过程看起来很难和令人生畏。