Java黑皮书课后题第4章:*4.15(电话键盘)电话上的国际标准字母/数字映射如下所示。编写程序,提示用户输入一个小写或大写字母,然后显示对应数字。对于非字母输入,提示非法输入

本程序根据国际标准电话键盘字母与数字的映射,接收用户输入的字母并输出对应数字。对于非字母输入,提示非法。示例运行中展示了大小写字母的正确转换及非字母输入的错误提示。
摘要由CSDN通过智能技术生成

*4.15(电话键盘)电话上的国际标准字母/数字映射如下所示。编写程序,提示用户输入一个小写或大写字母,然后显示对应数字。对于非字母输入,提示非法输入

题目

题目概述

*4.15(电话键盘)电话上的国际标准字母/数字映射如下所示。编写程序,提示用户输入一个小写或大写字母,然后显示对应数字。对于非字母输入,提示非法输入
书上原图涉嫌版权问题无法展示,可联想手机9键盘

运行示例

Enter a letter: a
The corresponding number is 2

Enter a letter: A
The corresponding number is 2

Enter a letter: +
+ is an invalid input

破题

  1. 接收输入,赋值给String类型
  2. 判断长度,如果大于1则非法
  3. 使用charAt()提取第一位赋值给char类型
  4. 强转为int类型
  5. 判断是否在’A’~‘Z’和’a’~'z’之间
  6. 如果int类型数据小于97,则加32(大写换小写)
  7. 使用if条件语句,将输入的letter与键盘上的数字搭配,并输出结果

代码

import java.util.Scanner;

public class Test4_15 {
   
    public static void main(String[] args) {
   
        // 接收输入,赋值给String类型
        Scanner input = new Scanner(System.in);
        System.out.println(
Java中,要合并两个有序列表,可以创建一个新的列表,然后遍历每个源列表,依次添加元素到新列表中。这里我们可以使用ArrayList作为容器,因为它支持动态扩容。以下是`mergeSortedLists`方法的实现: ```java import java.util.ArrayList; import java.util.List; public class ListMerger { public static <T extends Comparable<T>> List<T> mergeSortedLists(List<T> list1, List<T> list2) { if (list1 == null || list1.isEmpty()) return list2; if (list2 == null || list2.isEmpty()) return list1; ArrayList<T> mergedList = new ArrayList<>(list1); int i = 0, j = 0; while (i < list1.size() && j < list2.size()) { if (list1.get(i).compareTo(list2.get(j)) <= 0) { mergedList.add(list1.get(i)); i++; } else { mergedList.add(list2.get(j)); j++; } } // 如果list1还有剩余元素没加,直接追加 while (i < list1.size()) { mergedList.add(list1.get(i)); i++; } // 如果list2还有剩余元素没加,也追加 while (j < list2.size()) { mergedList.add(list2.get(j)); j++; } return mergedList; } } ``` 为了测试这个方法,你可以创建一个简单的主程序: ```java import java.util.Arrays; import java.util.List; public class Main { public static void main(String[] args) { List<Integer> list1 = Arrays.asList(1, 3, 5, 7); List<Integer> list2 = Arrays.asList(2, 4, 6, 8); List<Integer> mergedList = ListMerger.mergeSortedLists(list1, list2); System.out.println("Merged sorted list: " + mergedList); } } ``` 当你运行这段代码时,它会输出合并后的有序列表 `[1, 2, 3, 4, 5, 6, 7, 8]`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值