我已经制作了一个电话帐单系统,用于输入被叫电话号码,通话日期和通话时长。将其保存到文本文件中。我无法执行的操作是在文本文件中搜索电话号码。

My coding

最佳答案

只需进行线性搜索(遍历您的电话列表):

public static List<Phone> searchPhone(final String phoneNumber, final List<Phone> phoneList) {
    List<Phone> matchedPhone = new ArrayList<Phone>();

    for(Phone phone: phoneList) {
        if ( phone.getphoneNumber().equals(phoneNumber) ) {
            matchedPhone.add(phone);
        }
    }

    return matchedPhone;
}

同样出于可读性考虑,请勿将您的方法参数作为输出。这不是一个好习惯,因此您应该从以下位置更改方法:
static void readList(List<Phone> phoneListIn) {
}

至:
   static List<Phone> readList(final String fileName) {
   }

应尽可能避免输出参数

09-05 11:44