软件设计-迭代器模式

技术软件设计-迭代器模式 软件设计-迭代器模式JAVA和C++常见数据结构迭代器的使用信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用JAVA内置迭代器和C++中标准模板库(STL

软件设计-迭代器模式

Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)和C常见数据结构迭代器的使用

信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)内置迭代器和C中标准模板库(STL)实现对同学信息的遍历,要求按照学号从小到大和从大到小两种次序输出学生信息。

源码

Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)内置迭代器

包装rjsj.no18

导入Java。乌提尔。ArrayList

导入Java。乌提尔。收藏品;

导入Java。乌提尔。迭代器;

导入Java。乌提尔。列表;

学生类实现了比较研究

私有字符串名称;

私有int sid

私人互联网时代;

公共学生(字符串名称,整数样本号,整数年龄){ 0

this.name=name

this.sid=sid

this.age=年龄;

}

@覆盖

公共字符串ToString(){ 0

返回"学生{"

'姓名名称' \ '

,学号=' sid

,年龄='年龄

'}';

}

@覆盖

公共国际比较(学生)

如果(这个。sid o . sid){ 0

返回-1;

} else if(这个。sid o . sid){ 0

返回1;

} else {

返回0;

}

}

}

类迭代器

公共静态void main(String[]参数){ 0

学生1=新学生('张三',20193885,21);

学生2=新学生('李四',20201456,20);

学生3=新学生('王五',20184655,23);

学生4=新学生('赵六',20191242,22);

学生5=新学生('李七',20213256,19);

list学生列表=new ArrayList学生();

名单。添加(学生1);名单。添加(学生2);名单。添加(学生3);

名单。添加(学生4);名单。添加(学生5);

Collections.sort(列表);

System.out.println('按学号排序输出:');

迭代器I=列表。迭代器();

while(I . HasNeXt()){ 0

System.out.println(i.next().toString());

}

}

}

C

#包括牡蛎

#包含矢量

#包括算法

使用命名空间标准;

学生班级{

公众号:

长学生身份;

字符串名称;

国际年龄;

弦乐专业;

公众号:

学生(长学生标识、字符串名称、整数、字符串专业){ 0

this-学生证=学生证;

this-name=name;

这个年龄=年龄;

本-专业=专业;

}

void show(){ 0

cout '姓名:"此名称" \t学号: 'this-studentid '\t年龄:"这个年龄" \t专业: ' this-majorendl;

}

};

bool compMax(学生*a,学生* b){ 0

if (a-studentid b-studentid)

返回真;

其他

返回错误的

}

bool compMin(学生*a,学生* b){ 0

if (a-studentid b-studentid)

返回真;

其他

返回错误的

}

int main(){ 0

学生*s1=新学生(20193288 '张三', 19, '土木');

学生*s2=新学生(20193999 '李四', 21, '经管');

学生*s3=新学生(20196654 '王五', 22, '软工');

学生*s4=新学生(20193367 '赵六', 20, '机械');

向量研究*向量;

vec。推背(S1);

vec。推背(S2);

vec。推背(S3);

vec。推背(S4);

cout '按照学号从大到小输出: ' endl

向量学习* :迭代器迭代器它;

sort(vec.begin()、vec.end()、compMax);

for(it=vec。begin();它!=vec。end();it){ 0

(* it)-show();

}

cout '-' endl;

cout '按照学号从小到大输出: ' endl

sort(vec.begin()、vec.end()、compMin);

for(it=vec。begin();它!=vec。end();it){ 0

(* it)-show();

}

}

运行结果

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/145034.html

(0)

相关推荐

  • 蛋清打发,蛋清打发不起来的原因是什么

    技术蛋清打发,蛋清打发不起来的原因是什么您好,很高兴来回答您的这个问题蛋清打发。依我个人的制作经验,蛋清打发不起来的原因有以下几个关键点:首先,鸡蛋的选择。用来做蛋糕的鸡蛋,必须使用新鲜的鸡蛋。通常情况下,鸡蛋放在冰箱时

    生活 2021年10月27日
  • SqlServer如何巧妙解决多条件组合查询

    技术SqlServer如何巧妙解决多条件组合查询今天就跟大家聊聊有关SqlServer如何巧妙解决多条件组合查询,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。开发

    攻略 2021年12月1日
  • C#泛型委托是什么

    技术C#泛型委托是什么本篇内容主要讲解“C#泛型委托是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#泛型委托是什么”吧!C# 泛型委托学习之前首先来看看什么是C# 委

    攻略 2021年12月2日
  • 使用chattr +i filename 防止文件误删

    技术使用chattr +i filename 防止文件误删 使用chattr +i filename 防止文件误删chattr +i 设置文件不能进行修改:即你不能删除它
    也不能给它重新命名,你不能对该

    礼包 2021年10月27日
  • 非极性分子,极性分子和非极性分子有哪些

    技术非极性分子,极性分子和非极性分子有哪些分子的极性(永久烷极)是由其中正、负电荷的“重心”是否重合所引起的。根据其分子在空间是否绝对对称来判定极性非极性分子,化学键极性的向量和——弱极矩μ则是其极性大小的客观标度.甲苯

    生活 2021年10月23日
  • 手机掉水里马上捞起来会进水吗,苹果七掉进水里会进水么

    技术手机掉水里马上捞起来会进水吗,苹果七掉进水里会进水么一旦iphone进水手机掉水里马上捞起来会进水吗,按以下步骤处理:1、以最快速度把iphone从水里把它捞出来。2、立即关掉iPhone。马上断开电源。因为手机的损

    2021年10月21日