软件设计-迭代器模式

技术软件设计-迭代器模式 软件设计-迭代器模式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)

相关推荐

  • 邯郸学步的故事,邯郸学步故事150个字概括

    技术邯郸学步的故事,邯郸学步故事150个字概括邯郸学步常用来比喻一味地模仿别人,不仅没有学到本事,反而把原来的本事也弄丢了邯郸学步的故事。这个成语告诉我们,每个人都有自己的特点,如果不考虑到实际情况一味地去模仿别人,结果

    生活 2021年10月30日
  • 关于keyframes的用法

    技术关于keyframes的用法 关于keyframes的用法CSS3的@keyframes用法详解:@keyframes与animation属性是密切相关的
    一.基本知识:keyframes翻译成中文

    礼包 2021年12月5日
  • 如何深入解析Java 8 默认方法和多继承

    技术如何深入解析Java 8 默认方法和多继承本篇文章给大家分享的是有关如何深入解析Java 8 默认方法和多继承,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看

    攻略 2021年10月29日
  • 冬天来了写一段话,冬天的早晨真冷呀写一段话

    技术冬天来了写一段话,冬天的早晨真冷呀写一段话早上,冬天的风啊,真讨厌,我只开着一扇窗户,它就拼命的往我房间里钻,惊醒了我这个小懒虫冬天来了写一段话。我伸了伸懒腰,打了个哈欠,说:冬天啊真冷,恨不得整天睡大觉。虽然我已经

    生活 2021年10月27日
  • spark环境搭建

    技术spark环境搭建 spark环境搭建spark环境搭建
    spark下载地址:http://archive.apache.org/dist/spark/
    Scala下载地址:https://scal

    礼包 2021年11月9日
  • 利用PHP使用Redis常见的使用场景有哪些

    技术利用PHP使用Redis常见的使用场景有哪些这篇文章主要为大家展示了“利用PHP使用Redis常见的使用场景有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“利用PHP

    攻略 2021年11月25日