java 中的set类_Java语言中的Set类

这是MySet类的完整实现。

示例class MySet {

constructor() {

this.container = {};

}

display() {

console.log(this.container);

}

has(val) {

return this.container.hasOwnProperty(val);

}

add(val) {

if (!this.has(val)) {

this.container[val] = val;

return true;

}

return false;

}

delete(val) {

if (this.has(val)) {

delete this.container[val];

return true;

}

return false;

}

clear() {

this.container = {};

}

forEach(callback) {

for (let prop in this.container) {

callback(prop);

}

}

static union(s1, s2) {

if (!s1 instanceof MySet || !s2 instanceof MySet) {

console.log("The given objects are not of type MySet");

return null;

}

let newSet = new MySet();

s1.forEach(elem => newSet.add(elem));

s2.forEach(elem => newSet.add(elem));

return newSet;

}

static difference(s1, s2) {

if (!s1 instanceof MySet || !s2 instanceof MySet) {

console.log("The given objects are not of type MySet");

return null;

}

let newSet = new MySet();

s1.forEach(elem => newSet.add(elem));

s2.forEach(elem => newSet.delete(elem));

return newSet;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值