永发信息网

请教Java高手一个“Java SE”的Java语句写法提问。

答案:4  悬赏:0  手机版
解决时间 2021-03-04 02:43
高手,您好:
小弟遇到的代码现场如下:
private List(){
{
add(new Magazine("时代周刊",10));
add(new Magazine("足球之夜",19));
add(new Magazine("时尚",20));
add(new Magazine("时代影视",50));
}
};
请问高手:
上面的代码是什么结构?
怎么能够在ArrayList的构造方法之后,开两对花括号,再实施四句add()方法?
希望得到高手的点拨!!
小弟,在线等!!
最佳答案
private List list = new ArrayList(){
    {
add(new Object());
add(new Object());
add(new Object());
    }
};
//感觉相当于一个内部类ArrayList,在内部类中有一个代码块{},在其中调用add添加对象
全部回答
  • 1楼网友:鸽屿
  • 2021-03-03 20:28
最里面的 {}代表一个普通的代码块,它调用了ArrayList的add(String)方法。add(new Magazine("时代周刊",10));相当于在类的内部执行了this.add(new Magazine("时代周刊",10)); 当你创建对象时如果需要先执行某些操作,就可以使用一个代码块。
  • 2楼网友:山有枢
  • 2021-03-03 20:10
我复制到程序里面,发现会报错,我不知道你的代码怎么来的
  • 3楼网友:像个废品
  • 2021-03-03 18:37

    values  跟前面的连接  是自动换行  还是你自个换行的  将values   接上去就行了额

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯