软件设计-迭代器模式

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

相关推荐

  • 怎样进行github的使用

    技术怎样进行github的使用本篇文章给大家分享的是有关怎样进行github的使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。教程默认已装好github客

    攻略 2021年11月17日
  • Bytom猜测合约的使用方法是什么?

    技术Bytom猜谜合约使用方法是什么本篇内容介绍了“Bytom猜谜合约使用方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够

    攻略 2021年12月20日
  • 养龟为什么不能养双,巴西龟养一只好还是二只

    技术养龟为什么不能养双,巴西龟养一只好还是二只养乌龟单养一只也可以,不过龟还是群居比较好,建议养两只养龟为什么不能养双。1、起居篇:
    水的量一般以略高于龟背为益。特别是比较小的龟,水不能太多。盆中间还可以放一块龟壳大一些

    生活 2021年10月19日
  • mybatis-plus判断数据是否存在(springboot mybatisplus使用教程)

    技术spring boot+mybatis-plus怎样使用shardingsphere分库分表spring boot+mybatis-plus怎样使用shardingsphere分库分表,相信很多没有经验的人对此束手无

    攻略 2021年12月20日
  • hashcode和hash算法的实现原理是什么

    技术hashcode和hash算法的实现原理是什么本篇文章给大家分享的是有关hashcode和hash算法的实现原理是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一

    攻略 2021年10月20日
  • 第 5 篇 Scrum 冲刺博客

    技术第 5 篇 Scrum 冲刺博客 第 5 篇 Scrum 冲刺博客一:会议
    工作姓名
    昨日任务
    进度
    今日任务姜珺杨
    小程序界面优化
    ?
    完善图片上传和加载界面刘梓祥
    继续后台的编写和接口的编写
    ?

    礼包 2021年11月23日