【发布时间】:2019-07-03 18:56:21
【问题描述】:
我需要能够将循环结果保存到一个字符串中,以便能够操纵用户输出。没有数组
我尝试在循环内转换为字符串,这没有多大意义。除非我采用另一种方法,否则我想不出另一种方法来保存结果。我不允许创建数组。
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("Enter phone number: ");
String number = input.nextLine();
String phone ="";
for (int i = 0; i < number.length(); i++){
if (Character.isLetter(number.charAt(i)))
phone = getNumber(Character.toUpperCase(number.charAt(i)));
else
number.charAt(i);
}
System.out.println("Your number is " + phone);
}
public static int getNumber(char uppercaseLetter){
if (uppercaseLetter >= 'W' && uppercaseLetter <= 'Z')
return 9;
else if (uppercaseLetter >= 'T' && uppercaseLetter < 'W')
return 8;
else if (uppercaseLetter >= 'P' && uppercaseLetter < 'T')
return 7;
else if (uppercaseLetter >= 'M' && uppercaseLetter < 'P')
return 6;
else if (uppercaseLetter >= 'J' && uppercaseLetter < 'M')
return 5;
else if (uppercaseLetter >= 'G' && uppercaseLetter < 'J')
return 4;
else if (uppercaseLetter >= 'D' && uppercaseLetter < 'G')
return 3;
else
return 2;
}
}
应该看起来像:即。 352-嘿-呼叫= "你的号码是 352-439-2255"
【问题讨论】:
-
您需要添加到
phone。我建议使用StringBuilder并在循环中的字符上追加
标签: java string loops output letter