当前位置: 首页 > 面试题库 >

Java递归电话号码字母

燕照
2023-03-14
问题内容

您如何使用递归方法编写一个Java程序,该方法将一个int像“ 234”那样接受并将其转换为电话键盘上的相应字母(2 = ABC,3 =
DEF等),并打印出此字符的排列?例如:

输入= 234

输出= ADG ADH ADI AEG AEH AEI AFG AFH AFI BDG BDH BDI BEG BEH BEI BFG BFH BFI
CDG CDH CDI CEG CEH CEI CFG CFH CFI

输入= 89

输出= TW TX TY TZ UW UX UY UZ VW VX VY VZ


问题答案:

这是一个既没有array也没有arraylist的版本。结果将按您的要求打印到标准输出。

String[] allLetters = new String[] {
                "0",
                "1",
                "ABC",
                "DEF",
                "GHI",
                "JKL",
                // etc...
        };

public static void convert(String phoneNumber)
{
  convertSubstring(phoneNumber,"");
}

private static void convertSubstring(String phoneNumber, String convertedLetters)
{                   
  int digit = Integer.parseInt(phoneNumber.substring(0, 1));
  String letters=allLetters[digit];
  String remainingString=phoneNumber.substring(1);

  for (int i = 0; i < letters.length(); ++i) 
  {
     char letter = letters.charAt(i);
     String result=convertedLetters+letter;
     if (remainingString.length()==0)
        System.out.println(result);
     else
        convertSubstring(remainingString, result);
  }
}


 类似资料:
  • 问题内容: 我有一个数据库,其中包含数以百万计的免费格式的电话号码。即,UI不强制执行任何约束,并且用户正在键入他们想要的任何内容。 我正在寻找的是一种Java API,可以尽力将它们转换为一致的格式。理想情况下,API将采用自由文本值和国家/地区代码,并产生有效的国际电话号码或引发异常。 例如,系统中的电话号码可能类似于以下任何一项: 给定美国所在的国家/地区,API将为所有这些产生值“ +1(

  • 如果您在Nuxt页面中包含电话号码,请确保将它们直接包装到链接中: <!-- Example phone number: +7 (982) 536-50-77 --> <template> <a href="tel: +7 (982) 536-50-77">+7 (982) 536-50-77</a> </template> 否则,某些移动Safari版本会自动将这些数字转换为链接。 听起

  • 我创建了一个简单的程序,它会询问用户电话号码的最后7位数字。我使用了do-while循环,但我意识到如果用户输入以“0”开头的数字,程序将不会将其计算为第一位数字。我该怎么办?这是我目前所拥有的: 导入Java . util . scanner; 公共类电话代码 {静态扫描仪键盘 = 新扫描仪(System.in); 公共静态void main(String[] args) { }

  • 我在验证电话号码时遇到了问题。电话号码是一个10位数的字符串,应该填充在三个输入字段中第一个输入字段--仅有3位数(要求,只能接受数字和最大长度3)第二个输入字段--仅有3位数(要求,只能接受数字和最大长度3)第三个输入字段--仅有4位数(要求,只能接受数字和最大长度4)

  • 问题内容: 我试图从给定的字符串中提取java中的电话号码,即电话号码可以在String中的任何地方,例如。现在我想在另一个String中提取此电话号码。 在使用 它会返回真还是假,但我没有获取提取的电话号码。 问题答案:

  • 问题内容: 我从“联系人”中导入电话号码并保存在中。此字符串包含空格,我尝试使用方法将其删除: 这种方法行不通。 输出不变 日志 问题答案: 我怀疑您字符串中的空格字符实际上不是空格。请尝试在后面添加此代码,以查看字符串中字符的unicode标量值是什么: “((327)124-3503)”的预期输出为: 从您的评论中,您的空间值为160而不是32。您可以使用以下方法将其删除: