皮皮学,免费搜题
登录
logo - 刷刷题
搜题
【简答题】
某软件公司欲基于迭代器模式开发一套用于遍历数组元素的类库,其基本结构如下图 所示: 在图 中, Collection 类是抽象聚合类, ConcreteCollection 类是具体聚合类, Iterator 类是抽象迭代器类, ConcreteIterator 类是具体迭代器类。在聚合类中提供了创建迭代器的工厂方法 createIterator() 和数组的 Setter 和 Getter 方法,在迭代器中提供了用于遍历数组元素的相关方法,如 first() 、 last() 、 next() 等。 【 Java 代码】 interface Collection { public void setArray(Object objs[]); // 设置数组 public Object[] getArray(); // 获取数组 public Iterator createIterator(); // 创建迭代器 } interface Iterator { public void first(); // 索引指向第一个元素 public void last(); // 索引指向最后一个元素 public void next(); // 索引指向下一个元素 public void previous(); // 索引指向上一个元素 public boolean isLast(); // 判断是否最后一个元素 public boolean isFirst(); // 判断是否第一个元素 public Object getItem(); // 获取当前索引所指向的元素 } class ConcreteCollection implements Collection { private Object[] objs; public void setArray(Object objs[]) { this.objs = objs; } public Object[] getArray() { return this.objs; } public Iterator createIterator() { return (1) ; } new ConcreteIterator(this); } class ConcreteIterator implements Iterator { private Object[] objs; private int index=0; // 索引变量,初值为 0 public ConcreteIterator(ConcreteCollection collection) { this.objs = (2) ; }collection.getArray() public void first() { index = 0; } public void last() { (3) ; }index = objs.length-1; public void next() { if(index =0) { (5) index-- ; } } public boolean isLast() { (6) return index == objs.length - 1 ; } public boolean isFirst() { (7) return index == 0 ; } public Object getItem() { return objs[index]; } } class Test { public static void main(String args[]) { Collection collection; collection = new ConcreteCollection(); Object[] objs={" 北京 "," 上海 "," 广州 "," 深圳 "," 长沙 "}; collection.setArray(objs); Iterator i = (8) new ConcreteIterator(collection) ; i.last(); // 逆向遍历所有元素 while( (9) isFirst() ) { System.out.println(i.getItem().toString()); (10) i.previous() ; } } }
手机使用
分享
复制链接
新浪微博
分享QQ
微信扫一扫
微信内点击右上角“…”即可分享
反馈
参考答案:
举一反三
【多选题】(二)甲公司为增值税一般纳税人,适用的增值税税率为17%。甲公司20×8年度发生的部分交易或事项如下: (1)10月5日,购入A原材料一批,支付价款702万元(含增值税),另支付运输费、保险费20万元。A原材料专门用于为乙公司制造B产品,无法以其他原材料替代。 (2)12月1日,开始为乙公司专门制造一台B产品,至12月31日,B产品尚未制造完成,共计发生直接人工82万元;领用所购A原材料的60%和...
A.
尚未领用的A原材料
B.
尚未制造完成的B在产品
C.
尚未提货的已销售C产品
D.
尚未领用的来料加工原材料
E.
已发出但尚未销售的委托代销D产品
【单选题】甲公司为增值税一般纳税人,适用的增值税税率为17%。甲公司20×8年度发生的部分交易或事项如下: (1)10月5日,购入A原材料一批,支付价款702万元(含增值税),另支付运输费、保险费20万元。A原材料专门用于为乙公司制造B产品,无法以其他原材料替代。 (2)12月1日,开始为乙公司专门制造一台B产品,至12月31日,B产品尚未制造完成,共计发生直接人工82万元;领用所购A原材料的60%和其他材...
A.
A原材料取得时按照实际成本计算
B.
领用的A原材料成本按照个别计价法确定
C.
发生的非正常损耗计入B产品的生产成本
D.
来料加工业务所领用本公司原材料的成本计入加工成本
【单选题】苏州的拙政园和北京的颐和园分别是下列哪种古典园林类型
A.
私家园林和皇家园林
B.
寺观园林和皇家园林
C.
私家园林和自然风景名胜
D.
自然风景名胜和皇家园林
【简答题】甲公司系增值税一般纳税人,2×12年至2×15年与固定资产业务相关的资料如下: 资料一:2×12年12月25日,甲公司以银行存款购入一套不需安装的大型生产设备,取得的增值税专用发票上注明的价款为5000万元,增值税税额为850万元。 资料二:2×12年12月31日,该设备投入使用,预计使用年限为5年,预计净残值为50万元,采用年数总和法按年计提折旧。 资料三:2×14年12月31日,该设备出现减值...
【多选题】密集型发展战略的主要方式有( )。
A.
市场渗透战略
B.
产品渗透战略
C.
市场开发战略
D.
产品开发战略
【多选题】甲公司为增值税一般纳税人,适用的增值税税率为17%。甲公司20×8年度发生的部分交易或事项如下: (1) 10月5日,购入A原材料一批,支付价款702万元(含增值税),另支付运输费、保险费 20万元。A原材料专门用于为乙公司制造B产品,无法以其他原材料替代。 (2) 12月1日起,开始为乙公司专门制造一台B产品。至12月31日,B产品尚未制造完成,共计发生直接人工82万元;领用所购A原材料的 60...
A.
尚未领用的A原材料
B.
尚未制造完成的B在产品
C.
尚未提货的已销售C产品
D.
尚未领用的来料加工原材料
E.
已发出但尚未销售的委托代销D产品
【单选题】苏州的拙政园和北京的颐和园分别是下列哪种古典园林的类型( )。
A.
私家园林和皇家园林
B.
寺观园林和皇家园林
C.
私家园林和自然风景名胜
D.
自然风景名胜和皇家园林
【多选题】甲公司为增值税一般纳税人,适用的增值税税率为17%。甲公司20×8年度发生的部分交易或事项如下: (1)10月5日,购入A原材料一批,支付价款702万元(含增值税),另支付运输费、保险费20万元。A原材料专门用于为乙公司制造B产品,无法以其他原材料替代。 (2)12月1日,开始为乙公司专门制造一台B产品,至12月31日,B产品尚未制造完成,共计发生直接人工82万元;领用所购A原材料的60%和其他材...
A.
尚未领用的A原材料
B.
尚未制造完成的B在产品
C.
尚未提货的已销售C产品
D.
尚未领用的来料加工原材料
E.
已发出但尚未销售的委托代销D产品
【单选题】苏州的拙政园和北京的颐和园分别是下列哪种古典园林类型
A.
4
B.
私家园林和皇家园林
【多选题】甲公司为增值税一般纳税人,适用的增值税税率为17%。甲公司20×8年度发生的部分交易或事项如下: (1)10月5日,购入A原材料一批,支付价款702万元(含增值税),另支付运输费、保险费20万元。A原材料专门用于为乙公司制造B产品,无法以其他原材料替代。 (2)12月1日,开始为乙公司专门制造一台B产品,至12月31日,B产品尚未制造完成,共计发生直接人工82万元;领用所购A原材料的60%和其他材...
A.
尚未领用的A原材料
B.
尚未制造完成的B在产品
C.
尚未提货的已销售C产品
D.
尚未领用的来料加工原材料
E.
已发出但尚未销售的委托代销D产品
相关题目:
参考解析:
知识点:
题目纠错 0
发布
创建自己的小题库 - 刷刷题