Java黑皮书课后题第6章:*6.21(电话按键盘)国际标准的字母/数字匹配图如编程练习题4.15所示。编写一个测试程序,提示用户输入字符串形式的电话号码。程序将字母(大写或小写)翻译成数字

本程序根据国际标准的字母/数字匹配图,将用户输入的包含字母的电话号码字符串中的字母转换为对应的数字。用户输入字符串,程序通过`getNumber`方法将大写或小写字母转换,其他字符保持不变。`getNumber`方法根据ASCII码进行判断并返回相应数字或保留原字符。
摘要由CSDN通过智能技术生成

6.21(电话按键盘)

题目

题目描述与运行示例

6.21(电话按键盘)国际标准的字母/数字匹配图如编程练习题4.15所示,编写一个方法,返回给定大写字母的数字,如下所示:
public static int getNumber(char uppercaseLetter)
编写一个测试程序,提示用户输入字符串形式的电话号码,输入的数字可能会包含字母。程序将字母(大写或小写)翻译成一个数字,然后保持其它字符不变。下面是该程序的运行示例:

Enter a string:1-800-Flowers
1-800-3569377
Enter a string:1800flowers
18003569377

破题

  1. 主方法:接收用户输入的字符串、将字符串的字符一个一个传递给getNumber方法并接收int型返回值(如接收到负数,则保留原字符输出)、输出结果
  2. getNumber方法:接收char型数据并强转为int型(ASCII码)后,如果①[48, 57]之间:直接返回int值;②[65, 90]或[97, 122]之间:匹配该字母的大写字母的键盘对应值,再返回;③其它范围:返回负1

代码

import java.util.Scanner;

public class Test6_21 {
   
    public static void main(String[] args) {
   
        // 接收用户输入的字符串
        Scanner input = new Scanner(</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值