对于我的 Java 作业的一部分,我需要选择所有具有特定区号的记录。我在 中 有自定义对象ArrayList
,例如ArrayList<Foo>
.
每个对象都有一个字符串 phoneNumber 变量。它们的格式类似于“(555) 555-5555”
我的目标是搜索ArrayList<Foo>
(调用它listOfFoos
)中的每个自定义对象,并将区域代码为“616”的对象放在temporaryListOfFoos
ArrayList<Foo>
.
我研究了分词器,但无法使语法正确。我觉得我需要做的与这篇文章类似,但由于我只尝试检索前 3 位数字(我不关心剩下的 7 位),所以这真的没有给我确切的信息正在寻找。使用字符串标记器忽略括号?
作为临时解决方法,我所做的是...
for (int i = 0; i<listOfFoos.size();i++){
if (listOfFoos.get(i).getPhoneNumber().contains("616")){
tempListOfFoos.add(listOfFoos.get(i));
}
}
这适用于我们当前的数据集,但是,如果电话号码中的其他任何地方有 616 [如“(555) 616-5555”],它显然无法正常工作。
如果有人可以就如何只检索前 3 位数字而忽略括号给我建议,我将不胜感激。