类与对象基础实验(二)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

浙江大学城市学院实验报告课程名称面向对象程序设计实验项目名称类与对象基础(二)学生姓名罗敏专业班级学号一.实验目的和要求1.掌握String类与StringBuffer类2.掌握数组对象的使用3.掌握基本数据类型的包装类的使用二.实验内容1.编程实现:解析身份证号码的生日。2.编程实现:字符串比较和转换。3.编程实现:解析身份证号码的地区。4.编程实现:数组操作。三.实验结果与分析(可将程序运行结果截屏,也可分析运行结果)1.编程实现:解析身份证号码的生日。要求从键盘输入身份者号码字符串,将其中生日信息提取,并屏幕显示。(身份证号码验证,只需要验证身份证号码为18位)。请分析并回答以下问题:(1)程序源码如下:importjava.util.*;publicclassjiexi{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);System.out.println(请输入你的身份证号码:);Stringa=in.next();while(a.length()!=18){System.out.println(身份证号码错误,请重新输入!);a=in.next();}Stringb=a.substring(6,10);System.out.println(您的生日是:+b+-+a.substring(10,12)+-+a.substring(12,14));}}(2)请将运行结果截图:2.编程实现:字符串比较和转换。编写一个Java应用程序,判断两个字符串是否相同,判断字符串的前缀、后缀是否和某个字符串相同,按照字典顺序比较两个字符串的大小关系,检索字符串,创建子字符串,将数字型字符串转换为数字,将字符串存放到数组中,用字符数组创建字符串。(部分源码参考讲义)(1)请将源码编写完整如下:publicclassStringExample{publicstaticvoidmain(Stringargs[]){Strings1=newString(youareastudent);Strings2=newString(howareyou);if(s1.equals(s2)==true)//使用equals方法判断s1与s2是否相同{System.out.println(s1与s2相同);}else{System.out.println(s1与s2不相同);}Strings3=newString(22030219851022024);if(s3.startsWith(220302)==true)//判断s3的前缀是否是220302。{System.out.println(吉林省的身份证);}Strings4=newString(你),s5=newString(我);if(s4.compareTo(s5)0)//按着字典序s4大于s5的表达式。{System.out.println(按字典序s4大于s5);}else{System.out.println(按字典序s4小于s5);}intposition=0;Stringpath=c:\\java\\jsp\\A.java;position=path.lastIndexOf('\\');//获取path中最后出现目录分隔符号的位置System.out.println(c:\\java\\jsp\\A.java中最后出现\\的位置:+position);StringfileName=path.substring(position+1);//获取path中A.java子字符串。System.out.println(c:\\java\\jsp\\A.java中含有的文件名:+fileName);Strings6=newString(100),s7=newString(123.678);intn1=Integer.parseInt(s6);//将s6转化成int型数据。doublen2=Double.parseDouble(s7);//将s7转化成double型数据。doublem=n1+n2;System.out.println(m);Strings8=String.valueOf(m);//String调用valuOf(intn)方法将m转化为字符串对象position=s8.indexOf(.);Stringtemp=s8.substring(position+1);System.out.println(数字+m+有+temp.length()+位小数);Strings9=newString(ABCDEF);char[]a=s9.toCharArray();//将s9存放到数组a中。for(inti=0;ia.length;i++){//采用for循环,输出a数组的各个字符。System.out.print(a[i]+);}}}(2)程序运行结果截图如下:3.编程实现:解析身份证号码的地区。要求从键盘输入若干个(少于100)身份证号码字符串,按地区不同分组显示身份证。提示:用Stirng数组管理这些身份证字符串。(1)请将源码编写完整如下:importjava.util.Scanner;publicclassjiexi2{publicstaticvoidmain(String[]args){System.out.println(请输入若干个身份证号码,以#结束:);Scannerid=newScanner(System.in);String[]sheng=newString[100];Stringa;inti=0,j;sheng[i]=id.nextLine();while(!sheng[i].equals(#)){i++;sheng[i]=id.nextLine();}System.out.println(输入结束!);for(intk=0;ki;k++){intm=k;Stringid1=sheng[k].substring(0,6);for(j=k+1;ji;j++){Stringid2=sheng[j].substring(0,6);if(id1.compareTo(id2)0){a=sheng[j];for(intg=j;gk;g--)sheng[g]=sheng[g-1];sheng[k]=a;}}}for(j=0;ji;j++)System.out.println(sheng[j]);}}(2)程序运行结果截图如下:4.4.编程实现:数组操作。输入若干个整数,存入数组,进行升序排序,然后输入一个整数,在数组中查找该数,如果找到,就把从该数位置开始的数组中后面的所有数复制到另外一个数组并输出。(1)请将源码编写完整如下:importjava.util.*;publicclassshuzu{publicstaticvoidmain(String[]args){inti,j;int[]c=newint[50];Scannerscanner=newScanner(System.in);System.out.println(请输入数组元素个数:);intn=scanner.nextInt();int[]a=newint[n];System.out.println(请输入n个整数:);for(i=0;in;i++)a[i]=scanner.nextInt();Arrays.sort(a);System.out.println(输出排序后的数组:);for(i=0;in;i++)System.out.print(a[i]+);System.out.println();System.out.println(请输入要查找的整数:);intb=scanner.nextInt();for(i=0;in;i++){if(b==a[i])break;}j=0;for(;in;i++){c[j]=a[i];j++;}System.out.println(输出复制后的另外一个数组:);for(i=0;ij;i++)System.out.print(c[i]+);}}(2)程序运行结果截图如下:四.讨论、心得(可写遇到的问题及解决方法,或者对技术的理解等)本次实验遇到的难题就是对java语言的各种包装好的类不熟悉,在编写代码的时候必须要查看书本模仿才编的出来,需要多看看书。

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功