Java实验四
程序中的s6改写成 String s6=new String(“1a12b”); 运行时提示怎样的错误? 2. 请用数组a的前3个单元创建一个字符串并输出该串。 3. 请给出获取path中“jsp”子字符串的代码。 4. 在程序的适当位置增加如下代码,注意输出的结果。 String str1=new String(“ABCABC”), str2=null, str3=null, str4=null; str2=str1.replaceAll(“A”,”First”); str3=str2.replaceAll(“B”,”Second”); str4=str3.replaceAll(“C”,”Third”); System.out.println(str1); System.out.println(str2); System.out.println(str3); System.out.println(str4); 5. 可以使用Long类中的下列static方法得到整数各种进制的 字符串表示:
成毫秒 calendar.set(yearTwo,monthTwo-1,dayTwo); // 将calendar的时间设 置为yearTwo年monthTwo月dayTwo日 long timeTwo=calendar.getTimeInMillis();// calendar表示的时间转换成 毫秒 Date date1= new Date(timeOne);// 用timeOne作为参数构造date1 Date date2= new Date(timeTwo);// 用timeTwo作为参数构造date2 if(date2.equals(date1)) System.out.println("两个日期的年、月、日完全相同"); else if(date2.after(date1)) System.out.println("您输入的第二个日期大于第一个日期"); else if(date2.before(date1)) System.out.println("您输入的第二个日期小于第一个日期"); long 相隔天数= (Math.abs(timeTwo - timeOne)) / (1000 * 60 * 60 * 24); // 计算两个日期相隔天数 System.out.printf("%d年%d月%d日和%d年%d月%d日相隔%d天", yearOne,monthOne,dayOne, yearTwo,monthTwo,dayTwo, 相隔天数); } }
System.out.print(" "+i.toString()); } } System.out.println(""); System.out.println(m.toString()+"一共有"+COUNT.toString()+"个因 子"); } }
实验后的练习: 1. 编写程序,计算大整数的阶乘。 2. 编写序,计算1+2+3…的前999999999项的和。 【结果】 将本次上机实验结果按照实验要求内容依次进行,填写实验目标、过 程、结果。 【注意事项】 ①实验报告要求每人提交一份,使用专门的报告纸,内容写全,包 括实验名称、班级、姓名、同组人,试验日期、交报告日期等。 ②报告不需要填写源代码,只要将完成情况和所有练习题结果写上 就可以。 【思考题】
System.out.println("按字典序s4大于s5"); } else { System.out.println("按字典序s4小于s5"); } int position=0; String path="c:\\java\\jsp\\A.java"; position=stIndexOf("\\"); //获取path中最后出现目录分隔符号 的位置 System.out.println("c:\\java\\jsp\\A.java中最后出现\\的位 置:"+position); String fileName=path.substring(position+1);//获取path中“A.java”子字 符串。 System.out.println("c:\\java\\jsp\\A.java中含有的文件名:"+fileName); String s6=new String("100"), s7=new String("123.678"); int n1=Integer.parseInt(s6); //将s6转化成int型数据。 double n2 = Double.parseDouble(s7); //将s7转化成double型数据。 double m=n1+n2; System.out.println(m); String s8=String.valueOf(m); //String调用valuOf(int n)方法将m转化 为字符串对象 position=s8.indexOf("."); String temp=s8.substring(position+1); System.out.println("数字"+m+"有"+temp.length()+"位小数") ; String s9=new String("ABCDEF"); char a[]=s8.toCharArray(); //将s8存放到数组a中。 for(int i=a.length-1;i>=0;i--) { System.out.print(" "+a[i]); } } }
Public static String toBinaryString(long i) Public static String toOctalString(long i) Public static String toHexString(long i) Public static String toString(long i,int p) 其中的toString(long i, int p)返回整数i的p进制表示。 请在适当位置添加代码输出12345的二进制、八进制和十六进 制表示。 6. 在适当位置添加代码,分别输出数字m的整数部分和小数部 分。 2.比较日期的大小。 实验要求: 编写一个Java应用程序,用户从输入对话框输入了两个日期, 程序将判断两个日期的大小关系,以及两个日期之间的间隔天 数。 程序: DateExample import java.util.*; public class DateExample { public static void main(String args[ ]) { Scanner read=new Scanner(System.in); System.out.println("输入第一个日期的年份:"); int yearOne=read.nextInt( ); System.out.println("输入该年的月份:"); int monthOne=read.nextInt( ); System.out.println("输入该月份的日期:"); int dayOne=read.nextInt( ); System.out.println("输入第二个日期的年份:"); int yearTwo=read.nextInt( ); System.out.println("输入该年的月份:"); int monthTwo=read.nextInt( ); System.out.println("输入该月份的日期:"); int dayTwo=read.nextInt( ); Calendar calendar= Calendar.getInstance(); //初始化日历对象 calendar.set(yearOne,monthOne-1,dayOne); // 将calendar的时间 设置为yearOne年monthOne月dayOne日 long timeOne= calendar.getTimeInMillis(); // calendar表示的时间转换
实验四
字符串、时间与数字类
【目的】 ①掌握String类的常用方法 ②掌握Date类以及Calendar类的常用方法; ③掌握BigInteger类的常用方法。 【内容】 1.String类的常用方法。 实验要求: 编写一个Java应用程序,判断两个字符串是否相同,判断字符 串的前缀、后缀是否和某个字符串相同,按字典顺序比较两个字 符串的大小关系,检索字符串,创建字符串,将数字型字符串转 换为数字,将字符串存放到数组中,用字符数组创建字符 串。。 程序: StringExample.java class StringExample { public static void main(String args[]) { String s1=new String("you are a student"), s2=new String("how are you"); if(s1.equals(s2)) // 使用equals方法判断s1与s2是否相同 { System.out.println("s1与s2相同"); } else { System.out.println("s1与s2不相同"); } String s3=new String("22030219851022024"); if(s3.startsWith("220302")) //判断s3的前缀是否是“”。 { System.out.println("吉林省的身份证"); } String s4=new String("你"), s5=new String("我"); if(pareTo(s5)>0)//按着字典序s4大于s5的表达式。 {