第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

電話號碼與字母組合與遞歸方法拋出空指針異常

電話號碼與字母組合與遞歸方法拋出空指針異常

暮色呼如 2023-02-23 15:41:07
首先,我正在嘗試構(gòu)建一個程序,根據(jù)輸入的電話號碼打印出所有可能的字母組合。我的問題是我無法讓我的遞歸函數(shù)工作,我得到了跟隨錯誤堆棧。錯誤指向第 46 行是 "recursion("", line);和第 65 行是for (int i = 0; i < letters.length(); i++) {Exception in thread "main" java.lang.NullPointerException    at exercise.test.PhoneNumberCombo.recursion(PhoneNumberCombo.java:46)    at exercise.test.PhoneNumberCombo.main(PhoneNumberCombo.java:65)這是我的代碼:import org.apache.commons.io.IOUtils;public class PhoneNumberCombo {                        static void recursion(String combination, String next_digits) {                                List<String> result = new ArrayList<String>();                              Map<String, String> phone = new HashMap<String, String>() {{                    put("2", "abc");                    put("3", "def");                    put("4", "ghi");                    put("5", "jkl");                    put("6", "mno");                    put("7", "pqrs");                    put("8", "tuv");                    put("9", "wxyz");                  }};                              // BASE CASE no more digits found                if (next_digits.length() == 0) {                                         // the combination is built                    result.add(combination);                    System.out.println(result);                }                                else {                                    String digit = next_digits.substring(0, 1);                  String letters = phone.get(digit);                                    for (int i = 0; i < letters.length(); i++) {                    String letter = phone.get(digit).substring(i, i + 1);                                      recursion(combination + letter, next_digits.substring(1));                }            }                   }    
查看完整描述

1 回答

?
千巷貓影

TA貢獻1829條經(jīng)驗 獲得超7個贊

顯然,失敗的行表明lettersnull. 例如,這將發(fā)生在您的地圖中不存在的"0"or或任何其他."1"phoneString

你必須處理 whereletters之后null的情況String letters = phone.get(digit)。是跳過這個String還是拋出一個關(guān)于不合適符號的顯式異常。


查看完整回答
反對 回復(fù) 2023-02-23
  • 1 回答
  • 0 關(guān)注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號