我正在努力做到这一点,以便在字符串的长度是三的倍数的条件下,我可以获取单独的三字符子字符串并将它们转换为整数。分割子字符串转换成的整数应该用作数组中的相对位置,该数组包含 ASCII 表的所有打印字符。
String IntMessage = result.toString();
if
{
(IntMessage.substring(0,1)=="1" && IntMessage.length()%3==0)
for(j=0;j < IntMessage.length()-2;j += 3)
n = Integer.parseInt(IntMessage.substring(j,j+3));
mess += ASCII[n-32];
return mess;
在其他情况下,该方法应获取字符串的前两个字符并将它们初始化为变量 i。在这种情况下,变量 mess 被初始化为 ASCII 数组中索引为 i-32 的字符。然后有一个 for 循环,将剩余的字符分割成三位数的子字符串,然后根据它们在 ASCII 数组中的对应位置将它们取出并更改为字符串。该数组中的字符串变量不断地添加到变量 mess 中,以便获得 IntMessage 字符串的 BigInteger 到 String 的转换。
int i = Integer.parseInt(IntMessage.substring(0,2));
mess=ASCII[i-32];
for(l=2; l< IntMessage.length() - 2; l+=3)
r = Integer.parseInt(IntMessage.substring(l,l+3));
mess+=ASCII[r-32];
return mess;
由于某种原因,该方法不起作用,我想知道我是否做错了什么。我知道如何获取输入字符串并将其转换为一系列数字,但我也想做相反的事情。有什么可以帮忙的吗?