import java.util.Date;publicclassUseTheDateClassDate_9_3{publicstaticvoidmain(String[] args){long l =10000;
Date day =newDate(l);
System.out.println(l+":"+day.toString());for(int i =0;i <7;++ i){
l *=10;
day.setTime(l);
System.out.println(l+":"+day.toString());}}}
*9.4 (使用随机类 Random)
import java.util.Random;publicclassUseTheRandomClass_9_4{publicstaticvoidmain(String[] args){
Random randpos =newRandom(1000);
System.out.println(String.format("%.0f",50* randpos.nextDouble()));}}
*9.5 (使用公历类 GregorianCalendar )
import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;import java.util.GregorianCalendar;publicclassUseGregorianCalendarClass_9_5{publicstaticvoidmain(String[] args){
GregorianCalendar day =newGregorianCalendar();int a = day.get(GregorianCalendar.YEAR);int b = day.get(GregorianCalendar.MONTH);int c = day.get(GregorianCalendar.DAY_OF_MONTH);
System.out.println("修改前"+ a +" 年 "+ b +"月"+ c +"日");long l =1234567898765L;
day.setTimeInMillis(l);
a = day.get(GregorianCalendar.YEAR);
b = day.get(GregorianCalendar.MONTH);
c = day.get(GregorianCalendar.DAY_OF_MONTH);
System.out.println("修改后"+ a +" 年 "+ b +"月"+ c +"日");}}
*9.6 (秒表)
import java.util.Date;import java.util.Random;import java.util.Timer;publicclassStopwatch_9_6{publicstaticvoidmain(String[] args){
Random randpos =newRandom(100001);double n[]=newdouble[100000];for(int i =0; i<100000;++ i) n[i]= randpos.nextDouble();
StopWatch a =newStopWatch();//开始计时//选择排序for(int i =0;i <100000-1;++ i){int smallest = i;for(int j = i +1;j <100000;++ j){if(n[j]< n[smallest]){
smallest = j;}}if(i != smallest){double tool = n[i];
n[i]= n[smallest];
n[smallest]= tool;}}
a.stop();//结束计时
System.out.println(a.getElapsedTime()+"ms");}}classStopWatch{private Date startTime;private Date endTime;publicStopWatch(){
startTime =newDate();}publicvoidstart(){
startTime =newDate();}publicvoidstop(){
endTime =newDate();}publiclonggetElapsedTime(){return endTime.getTime()- startTime.getTime();}}
*9.10 (代数:二次方程式)
import java.util.Scanner;publicclassAlgebraQuadraticEquation_9_10{publicstaticvoidmain(String[] args){
System.out.print("对于二次方程 ax^2+bx+c=0 ,请输入a,b,c:");
Scanner input =newScanner(System.in);
QuadraticEquation r =newQuadraticEquation();int a = input.nextInt();int b = input.nextInt();int c = input.nextInt();if(r.getDiscriminant(a,b,c)>0){
System.out.println("r1 = "+ r.getRoot1(a,b,c)+", r2 = "+ r.getRoot2(a,b,c));}elseif(r.getDiscriminant(a,b,c)==0){
System.out.println("r1 = r2 = "+ r.getRoot1(a,b,c));}else{
System.out.println("The equation has no roots.");}}}classQuadraticEquation{privateint a,b,c;publicintgetA(int a){//返回areturn a;}publicintgetB(int b){//返回breturn b;}publicintgetC(int c){//返回creturn c;}publicintgetDiscriminant(int a,int b,int c){//返回判别式return(b * b -4* a * c);}publicdoublegetRoot1(int a,int b,int c){if(getDiscriminant(a,b,c)<0){return0;}return((-b + Math.sqrt(b * b -4* a * c))/(2* a));}publicdoublegetRoot2(int a,int b,int c){if(getDiscriminant(a,b,c)<0){return0;}return((-b - Math.sqrt(b * b -4* a * c))/(2* a));}}
*9.11 (代数:2 x 2 的线性方程)
import java.util.Scanner;publicclasslinearEquation_9_11{publicstaticvoidmain(String[] args){
System.out.print("Enter a,b,c,d,e,f:");
LinearEquation q =newLinearEquation();
Scanner input =newScanner(System.in);
q.setA(input.nextDouble());
q.setB(input.nextDouble());
q.setC(input.nextDouble());
q.setD(input.nextDouble());
q.setE(input.nextDouble());
q.setF(input.nextDouble());if(!q.isSolvable()) System.out.println("The equation has no solution");else{
System.out.println("x = "+ q.getX()+" , y = "+ q.getY());}}}classLinearEquation{privatedouble a,b,c,d,e,f;//构造a,b,c,d,e,fpublicvoidsetA(double x){ a = x;}publicvoidsetB(double x){ b = x;}publicvoidsetC(double x){ c = x;}publicvoidsetD(double x){ d = x;}publicvoidsetE(double x){ e = x;}publicvoidsetF(double x){ f = x;}//获取a,b,c,d,e,fpublicdoublegetA(){return a;}publicdoublegetB(){return b;}publicdoublegetC(){return c;}publicdoublegetD(){return d;}publicdoublegetE(){return e;}publicdoublegetF(){return f;}//判断分母是否为0publicbooleanisSolvable(){if(a * d - b * c !=0)returntrue;elsereturnfalse;}//返回方程的解publicdoublegetX(){return(e * d - b * f)/(a * d - b * c);}publicdoublegetY(){return(a * f - e * c)/(a * d - b * c);}}
*9.3 (使用日期类 Date)import java.util.Date;public class UseTheDateClassDate_9_3 { public static void main(String[] args) { long l = 10000; Date day = new Date(l); System.out.println(l+":"+day.toString()); for(int i = 0;i &