为了账号安全,请及时绑定邮箱和手机立即绑定

new Map<>(){{ put('(',')'); put('{','}'); }};这几个put是什么用法?

new Map<>(){{ put('(',')'); put('{','}'); }};这几个put是什么用法?

饮歌长啸 2019-02-20 21:53:20
private Map<Character,Character> map = new HashMap<Character,Character>(){{ put('(',')'); put('{','}'); put('[',']'); }}; 请问这里的几个put是什么用法?
查看完整描述

4 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

生成一个内部类,在构造器里面执行put方法

import java.util.HashMap;

final class Test$1 extends HashMap<Character, Character>
{
  Test$1()
  {
    put(Character.valueOf('('), Character.valueOf(')'));
    put(Character.valueOf('{'), Character.valueOf('}'));
    put(Character.valueOf('['), Character.valueOf(']'));
  }
}
查看完整回答
反对 回复 2019-03-01
?
撒科打诨

TA贡献1934条经验 获得超2个赞

匿名内部类.

{
    put(",");
}

这个花括号为实例代码块,每次实例化一个对象时执行。

查看完整回答
反对 回复 2019-03-01
?
繁华开满天机

TA贡献1816条经验 获得超4个赞

语法糖,让你简单点

查看完整回答
反对 回复 2019-03-01
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

高票已经回答了

查看完整回答
反对 回复 2019-03-01
  • 4 回答
  • 0 关注
  • 1251 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号