java - 如何在数组中找到字母的位置,然后使用另一个数组中的相同位置仅使用数组和循环进行加密
问题描述
我已经从用户关键字创建了我的加密密码。我现在正在尝试使用密码加密一些文本,例如“你好”。我已经完成了一半,我知道我想做什么,但我不知道如何实现它?我已经遍历了输入文本和字母表,一旦它们匹配,我就想使用数组中的位置进入密码数组中的相同位置并从那里打印字母。示例如下。
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 并将其打印到输出。我是否应该打印到新数组然后将该数组转换回字符串以进行加密。
解决方案
根据我得到的信息,您想在密码中的屏幕位置 7 上打印:为此,我认为您不需要最后一个 for 循环。您可以在屏幕上打印 cipher2[i]。
推荐阅读
- apache-poi - Apache POI > 处理特殊格式?
- android - 这里 Android Sdk - onStopoverReached 以错误的索引触发
- c++ - 矢量运算
- javascript - 如何一次只显示一个手风琴
- python - 有没有办法验证一个主题是否被订阅
- css - 在 html 中添加背景图片时遇到问题
- nginx - TYPO3 9.5 对图像/资源的错误处理
- java - 从 ActiveMQXASslConnectionFactory 实例创建 XAConnection 实例失败
- pandas - 如果它们不在特定列表中,则从 Pandas 数据框中删除列
- angular - VSCode 中的 Angular 8.1 项目未显示任何智能感知或提示