你会得到一本电话簿,里面有人们的名字和电话号码。之后,你会得到一些人的名字作为查询。对于每个查询,打印该人的电话号码。
输入格式
第一行有一个整数,表示通讯录中的条目数。每个条目由两行组成:姓名和相应的电话号码。
在这些之后,将会有一些查询。每个查询将包含一个人的姓名。读取查询直到文件结束。
限制条件:一个人的姓名仅由小写英文字母组成,可能采用“名字姓氏”格式,也可能采用“名字”格式。每个电话号码正好有8个数字,没有任何前导零。
输出格式
对于每种情况,如果对方在电话簿中没有条目,请打印“未找到”。否则,请打印此人的姓名和电话号码。有关确切格式,请参见示例输出。
为了使问题更简单,我们在编辑器中提供了一部分代码。您可以完成这段代码,也可以完全自己编写。
样本输入
3
uncle sam
99912222
tom
11122222
harry
12299933
uncle sam
uncle tom
harry
样本输出
uncle sam=99912222
Not found
harry=12299933
因此,我使用HashMap尝试了以下代码:
import java.util.*;
public class Solution
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
int q=sc.nextInt();
sc.nextLine();
HashMap<String,String> dic=new HashMap<>(q);
for(int i=0;i<q;i++)
{
dic.put(sc.nextLine(),sc.nextLine());
}
while(sc.hasNext())
{
String s=sc.nextLine();
int f=0;
String ans="";
for (Map.Entry<String, String> e : dic.entrySet())
{
if ((e.getKey()).equals(s))
{
f=1;
ans=e.getKey()+"="+e.getValue();
}
}
if (f==1)
System.out.println(ans);
else
System.out.println("Not found");
}
}
}
即使在使用哈希映射时,您仍然在迭代映射中的所有条目,这违反了使用哈希映射的目的。
使用包含密钥
检查映射是否有密钥,并使用get
获取值。这两个操作都是O(1)
。
....
String s = sc.nextLine();
if (dic.containsKey(s)) {
System.out.println(s + "=" + s.get(s));
} else {
System.out.println("Not found");
}
这是使用com.android.support:appcompat-v7:22.2.0 删除autoLink参数将不会发生冲突。 有办法解决吗?
问题内容: 以下python脚本允许我使用正则表达式从给定文件中抓取电子邮件地址。 我该如何添加才能获得电话号码?说,是7位还是10位(带区号),还要加上括号吗? 我当前的脚本可以在下面找到: 正则表达式的电话号码: 电话号码的另一个正则表达式: 问题答案: 如果您对学习正则表达式感兴趣,可以尝试自己编写。它并没有想象中那么难。诸如RegexPal之类的网站允许您输入一些测试数据,然后针对该数据编
我一直在使用谷歌libphonenumber来验证美国电话号码。现在我需要所有国家的国际支持。是否有可能反向查找使用libphonenumber的电话号码国家代码? 假设DB保存了英国号码448456779463。是否可以通过libphonenumber来检测该号码是否为UK?看来我只能检查号码的有效性,前提是我首先知道它的原产国。但是,如果你有数字却不知道它的来源国,该怎么办呢?
我有一个中间件,它可以在不允许他访问路由的情况下限制对路由的访问。我把它添加到: 路线: 控制器功能:: 现在说真的:如果角色id为2,中间件应该返回404视图而不执行路由。但它打印执行字符串在屏幕上! 1.如果我删除或评论: 它返回 如果我把路线登记移到 “网络”= 和评论: 然后屏幕显示“中间件”,中间件工作 我的问题是,如果我使用它,为什么middlware允许函数执行 在第一个手柄功能?为
我有一个以字符串形式存储在Excel中的电话号码,Excel文件创建成功,数据没有错误,但每个电话号码旁边都有一个“数字存储为文本”错误。 我从网上了解到,我应该使用excel中包含的特殊电话号码格式或自定义的000-000-0000格式。我可以使用excel程序设置这些,但不能从我的Java代码中设置。 我四处寻找关于setCellType和DataFormat的信息,但我假设CellType必
问题内容: 一旦用户开始将电话号码键入此格式类型,并且我可以正常工作,我就在格式化文本文件中的文本,但是一旦我从服务器上获得了电话号码,我就这样得到了,所以请您告诉我如何编辑它我从服务器获得相同格式的文件吗? 输入开始后的代码: 问题答案: 用String中的字符进行操作不是很简单。您需要遵循以下条件: 斯威夫特2.1 雨燕2.0 代码将打印