1. //建立一个类类型的数组,并向这个数组内添加学生信息,包括姓名和年龄等
  2. **********************学生类**************************
  3. package practise03_1;
  4. public class Student {
  5. private String name;
  6. private int age;
  7. public String getName() {
  8. return name;
  9. }
  10. public void setName(String name) {
  11. this.name = name;
  12. }
  13. public int getAge() {
  14. return age;
  15. }
  16. public void setAge(int age) {
  17. this.age = age;
  18. }
  19. }
  20. **************************功能类************************
  21. package practise03_1;
  22. import java.util.Scanner;
  23. public class BookDAO {
  24. Student[] a=new Student[2];
  25. Scanner sc=new Scanner(System.in);
  26. //添加学生信息
  27. public int addStudent(Student stu){
  28. for(int i=0;i<a.length;i++){
  29. System.out.println("请输入第"+(i+1)+"个学生的名字、年龄:");
  30. a[i]=new Student();//实例化一个对象,并赋值给a[i]
  31. String n =sc.next();
  32. a[i].setName(n);
  33. //System.out.println("请输入第"+(i+1)+"个学生的年龄:");
  34. int age = sc.nextInt();
  35. a[i].setAge(age);
  36. }
  37. for(int i=0;i<a.length;i++){
  38. System.out.println("第"+(i+1)+"个学生信息为:"+a[i].getName()+" "+a[i].getAge()+"岁");
  39. }
  40. return 0;
  41. }
  42. //根据名字查找
  43. public Student findName(String name){
  44. int k=0;//定义一个标记
  45. System.out.println("请输入要查询的学生的姓名:");
  46. String b=sc.next();
  47. for(int i=0;i<a.length;i++){
  48. if(a[i].getName().equals(b)){
  49. System.out.println("该学生的年龄是:"+a[i].getAge()+"岁");
  50. k=1;  //此处做一个标记,记录循环的执行情况
  51. break;
  52. }
  53. // else{
  54. // System.out.println("查无此人");
  55. // // break; //这儿出问题,如果第一次没查到,直接就会break,跳出循环了,后面的就查不到了
  56. // } //那么问题来了,循环内部不能判断值不一致,真查不到的时候,该如何实现输出“查无此人”呢?
  57. }
  58. //解决办法是转嫁危机,把值传出去,既然内部不能判断值不一致,至少可以判断值一致的情况,在判断值一致时顺便做个记号,一致时记号改变
  59. //然后在循环外部判断这个记号,如果记号不变,说明整个循环过程都没有找到值一致的情况,这时候就可以在循环外部输出“查无此人”了
  60. if(k!=1){ //利用标记情况,在循环外部做判断
  61. System.out.println("查无此人");
  62. }
  63. return null;
  64. }
  65. }
  66. ****************************主类****************************
  67. package practise03_1;
  68. public class Test3_1 {
  69. public static void main(String[] args) {
  70. BookDAO b=new BookDAO();
  71. Student stu=new Student();
  72. b.addStudent(stu);
  73. b.findName("xiaomao");
  74. }
  75. }

最新文章

  1. [连载]《C#通讯(串口和网络)框架的设计与实现》-3.设备驱动的设计
  2. if you end up with a boring miserable life
  3. SandcastleBuilder-生成帮助文档的时候报错...
  4. 数独检测器:帝国理工C++作业
  5. RESTful框架调研
  6. Xamarin.iOS项目编译提示Could not AOT the assembly
  7. Maven 的安装配置
  8. bzoj1188: [HNOI2007]分裂游戏
  9. mongodb两次被黑后......
  10. JS中Exception处理
  11. openlayers应用原理
  12. 单片机成长之路(51基础篇) - 012 MCS-51单片机控制详解–TMOD T2MOD
  13. 洛谷.2292.[HNOI2004]L语言(Trie DP)
  14. MySQL(Innodb)索引的原理
  15. CentOS服务器安装FFmpeg指南
  16. 高仿360界面的实现(用纯XML和脚本实现)
  17. (转)二十三种设计模式及其python实现
  18. JDK 8 - Method Reference 分析
  19. java严格验证日期是否正确的代码
  20. android自定义控件(五) 自定义组合控件

热门文章

  1. linux不需要密码ssh登陆
  2. netty基础--基本收发
  3. Python教程(1.1)——配置Python环境
  4. (原创)Maven+Spring+CXF+Tomcat7 简单例子实现webservice
  5. 一天搞定CSS:边框border--02
  6. nodeJS实战:自定义模块与引入,不同模块的函数传递及回调处理,exports与module.exports(基于nodejs6.2.0)
  7. javaWEB之Servlet
  8. js实现整数转化为小数
  9. jquery实现导航栏效果
  10. PHP代理访问网络资源