首页 新闻 会员 周边 捐助

接口数组赋值问题

0
悬赏园豆:50 [已关闭问题] 关闭于 2014-12-25 14:34

最近在使用DOM,想要创建一个SVG的文件,但是每次创建的对象都会把前面的对象覆盖掉。所以我实现一个数组,分别存储对象。请问怎么实现??

Element[] el= null;
for(int x=0;x<1000;x++){

el[x]=doc.createElement("circle");// 库中带着SVG的标记枚举值 
}

Element是接口

请问怎么给接口数组赋值?doc.createElement("circle")无法创建对象给接口。。。

LiloT的主页 LiloT | 初学一级 | 园豆:6
提问于:2014-12-17 15:29
< >
分享
所有回答(2)
0

你用的是啥语言???

var elArr = []; 
for(var i = 0;i < 1000; i++){
    elArr[i] = document.createElement('circle');
}
幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 15:53

java啊

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 15:54

@LiloT: 那你Element[] el= null;这句不能等于null,代码贴多一点。。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 16:01

@幻天芒: 我用了一个开源的软件batik,生成SVG的图像,在生成的时候必须每个对象的名字都不相同,如果相同的话,下一个相同名字的对象就会覆盖掉前一个。所以我想用一个数组来自动创建一些Element对象,用数据组名称来区分不同的对象。这样就可以添加到跟节点上了。不知道你能不能明白我说的?

el[j] = (GenericElement) doc.createElement("circle");// 库中带着SVG的标记枚举值

el[j].setAttributeNS(null, "cx",
String.valueOf(ordinateArray[i]));
el[j].setAttributeNS(null, "cy",
String.valueOf(ordinateArray[i + 1]));
el[j].setAttributeNS(null, "r", String.valueOf(50));
el[j].setAttributeNS(null, "fill", "#219E3E");

Node stNode = doc.getElementsByTagName("svg").item(0);

stNode.appendChild(el[j]);

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 16:08

@LiloT: 既然名字相同才会覆盖,那你没创建一个,就给定一个不一样的名字就可以了哇。我没用过这个库,所以大概是按照我的理解来回答的。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 16:20

@幻天芒: 是这个样子的,但是我有两千多个对象啊,手工建肯定不行啊。

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 16:22

@LiloT: 难道变量名重复都不行?那你现在这种数组方式没啥问题吧。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 16:27

@幻天芒: 是啊,DOM接口上说在Node上调用appendChild,如果在DOM树中对象已经存在,则会先移除,然后再添加。

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 16:29

@幻天芒: 所以我就想让创建的对象名字不同啊,采用数组的方式,用数组名区分。请问还有其他的方式自动创建对象的名字不同么?

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 16:30

@LiloT: 你说的这个名字是变量名。那么没啥好办法创建不同。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 16:35

@幻天芒: 我就想实现一个批量添加DOM节点

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 16:37

@LiloT: 你那代码应该就可以了吧。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-17 17:05

@幻天芒: 不行

支持(0) 反对(0) LiloT | 园豆:6 (初学一级) | 2014-12-17 18:06

@LiloT: 错误原因呢?错误信息呢?

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-12-18 08:47
0

违背接口依赖原则即可。

LiloT | 园豆:6 (初学一级) | 2014-12-25 14:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册