360在线笔试---反思两道题

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了360在线笔试---反思两道题相关的知识,希望对你有一定的参考价值。

1.

  HashMap map=new HashMap();
           map.put("name", null);
           map.put("name", "cindy");
           System.out.println(map.size());
问。输出的size是多少?

分析:这个明显考的是map接口的实现类HashMap的细节。而我忽略了,或者说平时没有注意。

正确答案是1。

接下来,让我们来弄清楚。

我编了这样一个程序。

public static void main(String[] args) {
           HashMap map=new HashMap();
           map.put("name", null);
           map.put("name", "cindy");
           map.put("name","Tom" );
           System.out.println( map.get("name"));
           System.out.println(map.containsKey("name"));
           System.out.println(map.size());
    }

输出结果是:

Tom
true
1

这说明了,仅仅要HashMap中元素的key 同样。那么后来加入的这个同样key的条目会覆盖之前的。并且算一条项目。原来的那个就不见了。相当于替换了。

我再次验证一下:我改了一下測试程序,

     HashMap map=new HashMap();
           map.put("name", null);
           //map.put("name", "cindy");
           //map.put("name","Tom" );
           map.put(null, "hello");
           System.out.println( map.get("name"));
           System.out.println(map.containsKey("name"));
           System.out.println(map.size());


null
true
2

说明hashMap是同意value为null的,并且也是同意key也是null。

最后综合检測:

  HashMap map=new HashMap();
           map.put("name", null);
           map.put("name", "cindy");
           map.put("name","Tom" );
           map.put(null, "hello");
           System.out.println( map.get("name"));
           System.out.println(map.containsKey("name"));
           System.out.println(map.size());

输出:

Tom
true
2





2.关于byte类型的数字相加问题:

 byte b1=3;
           byte b2=4;
           byte b3,b4;
           b3=b1+b2;
           b4=b3+b2;

问。b4等于多少或者说哪一句会报错?

结果是b3=b1+b2;会报错。

为什么呐?编译器显示报错信息例如以下:

不兼容的类型: 从int转换到byte可能会有损失

。。由于,尽管b1,b2是byte类型的。可是却是整数的值,相加依照整数int类型计算

。当声明b3的时候用int类型声明的时候,这时候不会报错。





























以上是关于360在线笔试---反思两道题的主要内容,如果未能解决你的问题,请参考以下文章

关于360笔试部分题目小结

美团笔试(22.03.19)

去哪儿网2017校招在线笔试(前端工程师)编程题及JavaScript代码

[考试反思]0317省选模拟48:记忆

hihocoder1489 Legendary Items (微软2017年预科生计划在线编程笔试)

JF 笔试 反思