gpt4 book ai didi

java - java中的函数

转载 作者:行者123 更新时间:2023-12-02 06:21:48 24 4
gpt4 key购买 nike

我正在制作返回类型函数来加密一些字符串

我的代码是

public String encrypt(char x)
{
String enc = "";
switch(x)
{
case 'A' : enc = "B";
break;
case 'a' : enc = "x";
break;
case 'B' : enc = "C";
break;
case 'b' : enc = "w";
break;
case 'C' : enc = "D";
break;
case 'c' : enc = "v";
break;
case 'D' : enc = "E";
break;
case 'd' : enc = "u";
break;
case 'E' : enc = "F";
break;
case 'e' : enc = "t";
break;
case 'F' : enc = "G";
break;
case 'f' : enc = "s";
break;
}
return(enc);
}

public String encryptString(String input)
{
String Encryption = "";
int length = input.length();
int charVal = 0;
for (charVal = 0; charVal<=length;charVal++)
{
char encChar = input.charAt(charVal);
String encrypted = encrypt(encChar);
Encryption = Encryption+encrypted+"";
}
return (Encryption);
}

我无法使用encryptString()与 JOptionPane 的 showInputDialog() .

最佳答案

for (charVal = 0; charVal<=length;charVal++)

应该是

for (charVal = 0; charVal<length;charVal++)

否则input.charAt(charVal);会抛出 StringIndexOutOfBoundsException最后一次迭代。

但是您可以使用 StringBuilder 使您的代码更加高效:

public String encryptString(String input){
StringBuilder sb = new StringBuilder();
for (char c : input.toCharArray())
sb.append(encrypt(c));
return sb.toString();
}

一些注释:

  • 您的 encrypt(char x) 的返回类型方法可以是char
  • 请注意 JOptionPane.showInputDialog返回null如果用户取消输入

关于java - java中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20952047/

24 4 0
文章推荐: java - 如何使用扩展类作为变量?
文章推荐: java - 在某些
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com