所以我需要一个字符串并将其放入字母整数值。例如,如果我有一个字符串" L"它应该转换为76.使用此方法的所有字符串都已移动到所有大写字母。到目前为止,我一直在做的事情一直在努力,直到它到达一个空间:
public static String toNumberValue(String s){
String numberString = "";
for(int i=0;i<s.length();i++){
int characterCode = (int)(s.charAt(i));
if(characterCode == 32){
numberString = numberString + "00";
}
else
numberString = numberString + characterCode;
}
System.out.println(numberString);
return numberString;
}
当它到达一个空间时它就会停在那里并且不打印其余的字符串。请帮帮忙?
编辑:这是我用过的主要课程。我压缩了Scanner并使用它的.next方法读入输入。
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter string to encode: ");
String wordIn = input.next();
String toEncrypt = wordIn.toUpperCase();
toNumberValue(toEncrypt);
String encryptedString;
//encode number string
//from encoded number string, decode
//from decoded numbers put it back into letters
}
答案 0 :(得分:3)
默认情况下,Scanner
会将输入文本拆分为空格,因此,如果您输入hello world
,则调用scanner.next()
将返回hello
。第二次调用scanner.next()
将返回world
。
<强>更新强>
实际上,更新后的问题中的变量名称命名为:wordIn
,因为这正是您所获得的。一句话。
<强>解决方案强>
使用nextLine()
代替next()
来获取用户输入的整行文字。