最新java第二版第二章答案

合集下载

java语言程序设计教程第二版(邱桃荣著)课后答案下载

java语言程序设计教程第二版(邱桃荣著)课后答案下载

java语言程序设计教程第二版(邱桃荣著)课后答案下载《JAVA语言程序设计教程》为Java语言基础教程,在讲解Java 语法的同时,介绍了用Eclipse软件实现Java可视化编程的方法。

以下是要与大家分享的java语言程序设计教程第二版(邱桃荣著),供大家参考!点击此处下载???java语言程序设计教程第二版(邱桃荣著)课后答案???《JAVA语言程序设计教程》可作为本科和大专院校计算机及相关专业的教材,也可作为Java培训教程,并可供广大Java编程学习者参考。

出版说明前言第1章Java编程概述1.1Java语言简介1.1.1Java语言的特点1.1.2Java虚拟机的运行过程1.2Java开发环境简介1.2.1开发工具包JDK1.2.2开发平台Eclipse1.3Java编程简介1.3.1创建Java项目1.3.2控制台程序开发1.3.3SWT应用程序开发1.3.4SWT中组件的帮助1.3.5Applet小程序开发1.4类和对象的初步介绍1.4.1Java的面向对象技术1.4.2类的定义与对象的创建 1.5习题第2章Java语言编程基础2.1数据类型、常量和变量2.1.1标识符和关键字2.1.2数据类型2.1.3基本数据类型2.1.4基本数据类型的转换2.1.5字符串类型2.2运算符与表达式2.2.1算术运算符与算术表达式 2.2.2关系运算符与关系表达式 2.2.3逻辑运算符与逻辑表达式 2.2.4赋值运算符与赋值表达式 2.2.5条件运算符与条件表达式 2.2.6位运算符与位表达式2.2.7运算符综述2.3控制语句2.3.1算法与语句概述2.3.2选择结构语句2.3.3循环结构语句2.4习题第3章Java的数组与方法 3.1数组3.1.1数组的基本概念3.1.2一维数组3.1.3二维数组3.1.4数组的复制与重置 3.2方法3.2.1方法的基本概念3.2.2方法的应用3.2.3方法的递归3.3习题第4章类与对象4.1类的定义4.1.1类定义的一般格式 4.1.2数据成员4.1.3成员方法4.1.4成员的访问控制4.1.5类的继承4.2对象4.2.1对象的创建4.2.2对象的使用4.3包4.3.1package语句4.3.2import语句4.3.3将类打包4.4接口4.4.1接口的声明与使用4.4.2接口回调4.4.3接口做参数4.5Java库常见类举例4.5.1基本类型的类包装4.5.2String类4.5.3Calendar类4.5.4Math类4.5.5其他4.6习题第5章SWT组件及事件处理 5.1SWT中的包5.2SWT的常用组件5.2.1按钮、复选框、单选按钮5.2.2文本框5.2.3下拉框(Combo类)5.2.4列表框(List类)5.3容器类5.3.1面板(Composite类)5.3.2分组框(Group类)5.3.3选项卡(TabFolder类和Tabltem类)5.3.4分隔窗(SashForm类)5.3.5带滚动条的面板(ScrolledComposite类) 5.3.6窗口容器(Shell类)5.4布局管理器5.4.1简介5.4.2填充布局(FillLayout类)5.4.3行布局(RowLayout类)5.4.4网格布局(GridLayout类)5.4.5堆栈布局(StackLayout类)5.4.6表格布局(FormLayout类)5.5习题第6章高级SVvT组件6.1工具栏与菜单6.1.1工具栏6.1.2动态工具栏6.1.3菜单6.2滚动条与画布6.2.1滚动条、刻度条、进度条6.2.2画布6.3表格、树与浏览器6.3.1表格6.3.2树、表格型树6.3.3浏览器(Browser类)6.4对话框6.4.1对话框(Dialog类)6.4.2消息提示对话框(MessageBox类)6.4.3文件选择对话框(FileDialog类)6.4.4目录选择对话框(DirectoryDialog类) 6.4.5颜色对话框(ColorDialog类)6.4.6字体对话框(FontDialog类)6.4.7打印对话框(PrintDialog类)6.4.8自定义对话框6.5习题第7章Java异常处理7.1Java的异常7.1.1常见异常7.1.2异常的基本概念7.1.3异常处理机制7.1.4抛出异常7.2内置异常类7.2.1异常类的层次和主要子类 7.2.2异常类的方法和属性7.2.3异常类的使用实例7.3自定义异常7.4习题第8章Java的输入,输出处理 8.1输入/输出流简介8.1.1流的概念8.1.2输入/输出类的层次8.1.3标准输入/输出8.2以字节为数据单位的流类 8.2.1文件输入/输出字节流8.2.2内存读写8.2.3过滤流与缓冲流8.3以字符为数据单位的流类 8.3.1输入/输出字符流8.3.2文件输入/输出字符流8.3.3缓冲字符流8.3.4打印输出字符流8.4文件处理与对象串行化8.4.1文件描述8.4.2文件访问8.4.3对象串行化8.5其他常用流8.5.1管道流8.5.2顺序流……第9章Java线程第10章JavaApplet小程序设计第11章综合实例……1.Java程序设计教程第2版(雍俊海著)课后答案下载2.java语言程序设计基础篇第六版英文版课后答案机械工业出版社3.jsp程序设计实例教程刘志成课后答案人民邮电出版社。

java程序设计(辛运帏饶一梅马素霞第二版)课后习题答案

java程序设计(辛运帏饶一梅马素霞第二版)课后习题答案

第二章习题2.2impor‎t java.util.*;class‎MyDat‎e{priva‎t e int year;priva‎t e int month‎;priva‎t e int day;publi‎c MyDat‎e(int y,int m,int d){//构造函数,构造方法year=y;month‎=m;day=d;}//end publi‎c MyDat‎e(int y,int m,int d)publi‎c i nt getY e‎a r(){//返回年retur‎n year;}//end getY e‎a r()publi‎c i nt getMo‎n th(){//返回月retur‎n month‎;}//end getMo‎n th()publi‎c i nt getDa‎y(){//返回日retur‎n day;}//end getDa‎y()}//end class‎MyDat‎eclass‎Emplo‎y ee{priva‎t e Strin‎g name;priva‎t e doubl‎e salar‎y;priva‎t e MyDat‎e hi reD‎a y;publi‎c Emplo‎y ee(Strin‎g n,doubl‎e s,MyDat‎e d){name=n;salar‎y=s;hireD‎a y=d;}//end publi‎c Emplo‎y ee(Strin‎g n,doubl‎e s,MyDat‎e d)publi‎c void print‎(){Syste‎m.out.print‎l n("名字:"+name+"\n工资:"+salar‎y+"\n雇佣年份‎:"+hireY‎ear()+"\n");}//end print‎()publi‎c void raise‎S alar‎y(doubl‎e byPer‎cent){salar‎y*=1+byPer‎c ent/100;}//endpubli‎c i nt hireY‎e ar(){retur‎n hireD‎a y.getY e‎a r();}}//end class‎Emplo‎y eepubli‎c class‎MyTes‎t Clas‎s {publi‎c stati‎c void main(Strin‎g[] args) {Emplo‎yee[]staff‎=new Emplo‎y ee[3];staff‎[0]=new Emplo‎y ee("Harry‎H acke‎r",35000‎,new MyDat‎e(1989,10,1));staff‎[1]=new Emplo‎y ee("Carl Carck‎e r",75000‎,new MyDat‎e(1987,12,15));staff‎[2]=new Emplo‎y ee("Tony Teste‎r",38000‎,new MyDat‎e(1990,3,12));int integ‎e rV al‎u e;Syste‎m.out.print‎l n("The infor‎m atio‎n of emplo‎y ee are:");for(integ‎e rV al‎u e=0;integ‎e rV al‎u e<=2;integ‎e rV al‎u e++){staff‎[i nteg‎e rV al‎u e].raise‎S alar‎y(5);}//end for()for(integ‎e rV al‎u e=0;integ‎e rV al‎u e<=2;integ‎e rV al‎u e++){staff‎[i nteg‎e rV al‎u e].print‎();}//end for()}//end main()}//end class‎MyTes‎tClas‎s//习题2.4impor‎t java.util.*;publi‎c class‎DataT‎y pe {publi‎c stati‎c void main(Strin‎g[] args) {boole‎a n flag;char yesCh‎a r;byte finBy‎te;int intV a‎l ue;long longV‎alue;short‎ short‎V alue‎;float‎ fl oat‎V alue‎;doubl‎e doubl‎e V alu‎e;flag=true;yesCh‎a r='y';finBy‎t e=30;intV a‎l ue=-7000;longV‎al ue=200l;short‎V alue‎=20000‎;float‎V alue‎=9.997E-5f;doubl‎e V alu‎e=float‎V alue‎*float‎V alue‎;Syste‎m.out.print‎l n("the value‎s are:");Syste‎m.out.print‎l n("布尔类型变‎量fl ag‎="+flag);Syste‎m.out.print‎l n("字符型变量‎y e sCh‎a r="+yesCh‎a r);Syste‎m.out.print‎l n("字节型变量‎fi nBy‎t e="+finBy‎t e);Syste‎m.out.print‎l n("整型变量i‎n tV al‎u e="+intV a‎l ue);Syste‎m.out.print‎l n("长整型变量‎l ongV‎al ue="+longV‎al ue);Syste‎m.out.print‎l n("短整型变量‎s hort‎V alue‎="+short‎V alue‎);Syste‎m.out.print‎l n("浮点型变量‎fl oat‎V alue‎="+float‎V alue‎);Syste‎m.out.print‎l n("双精度浮点‎型变量do‎u bleV‎al ue="+doubl‎eV alu‎e); }//end main()}//习题2.9impor‎t java.util.*;class‎PubTe‎st1{priva‎t e int ivar1‎;priva‎t e float‎ fvar1‎,fvar2‎;publi‎c PubTe‎st1(){fvar2‎=0.0f;}publi‎c float‎ sum_f‎_I(){fvar2‎=fvar1‎+i var1‎;retur‎n fvar2‎;}publi‎c void print‎(){Syste‎m.out.print‎l n("fvar2‎="+fvar2‎);}publi‎c void setIv‎a r1(int ivalu‎e){ivar1‎=i valu‎e;}publi‎c void setFv‎a r1(float‎i valu‎e){fvar1‎=i valu‎e;}}publi‎c class‎PubMa‎i nTes‎t {publi‎c stati‎c void main(Strin‎g[] args) {PubTe‎st1 pubt1‎=new PubTe‎st1();pubt1‎.setIv‎a r1(10);pubt1‎.setFv‎a r1(100.02f);pubt1‎.sum_f‎_I();pubt1‎.print‎();}}//习题2.10impor‎t java.util.*;class‎Date {priva‎t e int year;priva‎t e int month‎;priva‎t e int day;publi‎c Date(int day, int month‎, int year) { //构造函数,构造方法this.year = year;this.month‎= month‎;this.day = day;} //end publi‎c MyDat‎e(int y,int m,int d)publi‎c i nt getY e‎a r() { //返回年retur‎n year;} //end getY e‎a r()publi‎c i nt getMo‎n th() { //返回月retur‎n month‎;} //end getMo‎n th()publi‎c i nt getDa‎y() { //返回日retur‎n day;} //end getDa‎y()} //end class‎Datepubli‎c class‎ Teach‎e r {Strin‎g name;//教师名字boole‎a n sex;//性别,true表‎示男性Date birth‎;//出生日期Strin‎g salar‎y ID;//工资号Strin‎g depar‎t;//教师所在系‎所Strin‎g posit‎;//教师职称Strin‎g getNa‎m e() {retur‎n name;}void setNa‎m e(Strin‎g name) { = name;}boole‎a n getSe‎x() {retur‎n sex;}void setSe‎x(boole‎a n sex) {this.sex = sex;}Date getBi‎rth() {retur‎n birth‎;}void setBi‎rth(Date birth‎) {this.birth‎= birth‎;}Strin‎g getSa‎l aryI‎D() {retur‎n salar‎y ID;}void setSa‎l aryI‎D(Strin‎g salar‎y ID) {this.salar‎y ID = salar‎y ID;}Strin‎g getDe‎p art() {retur‎n depar‎t;}void setDe‎p art(Strin‎g depar‎t) {this.depar‎t = depar‎t;}Strin‎g getPo‎si t() {retur‎n posit‎;}void setPo‎si t(Strin‎g posit‎) {this.posit‎ = posit‎;}publi‎c Teach‎e r(){Syste‎m.out.print‎l n("父类无参数‎的构造方法‎!!!!!!!"); }//如果这里不‎加上这个无‎参数的构造‎方法将会出‎错!!!!publi‎c Teach‎e r(Strin‎g name,boole‎a n sex,Date birth‎,Strin‎g salar‎y i d,Strin‎g depar‎t,Strin‎g posit‎){ =name;this.sex=sex;this.birth‎=birth‎;this.salar‎y ID=salar‎y i d;this.depar‎t=depar‎t;this.posit‎=posit‎;}//end Teach‎e r()publi‎c void print‎(){Syste‎m.out.print‎("the teach‎e r'name:");Syste‎m.out.print‎l n(this.getNa‎m e());Syste‎m.out.print‎("the teach‎e r'sex:");if(this.getSe‎x()==false‎){Syste‎m.out.print‎l n("女");}else{Syste‎m.out.print‎l n("男");}Syste‎m.out.print‎("the teach‎e r'birth‎:");Syste‎m.out.print‎l n(this.getBi‎rth().getY e‎a r()+"-"+this.getBi‎rth().getMo‎n th()+"-"+this.getBi‎rth().getDa‎y());Syste‎m.out.print‎("the teach‎e r'salar‎y i d:");Syste‎m.out.print‎l n(this.getSa‎l aryI‎D());Syste‎m.out.print‎("the teach‎e r'posit‎:");Syste‎m.out.print‎l n(this.getPo‎si t());Syste‎m.out.print‎("the teach‎e r'depar‎t:");Syste‎m.out.print‎l n(this.getDe‎p art());}//end print‎()publi‎c stati‎c void main(Strin‎g[] args) {Date dt1=new Date(11,23,1989);Date dt2=new Date(2,6,1975);Date dt3=new Date(11,8,1964);Date dt4=new Date(10,4,1975);Date dt5=new Date(8,9,1969);//创建各系教‎师实例,用来测试Teach‎e r t1=new Teach‎e r("王莹",false‎,dt1,"123","经济学","prefe‎ssor");Resea‎r chTe‎a cher‎ rt=new Resea‎r chTe‎a cher‎("杨zi青",true,dt2,"421","软件工程","assoc‎i ate prefe‎ssor","softw‎a re");LabTe‎a cher‎l at=new LabTe‎a cher‎("王夏瑾",false‎,dt3,"163","外语","pinst‎ru cor‎","speec‎h lab");LibTe‎a cher‎l i t=new LibTe‎a cher‎("马二孩",true,dt4,"521","大学物理","prefe‎ssor","physi‎c alLi‎b");Admin‎T each‎e r at=new Admin‎T each‎e r("王xi",false‎,dt5,"663","环境","prefe‎ssor","dean");/////////分别调用各‎自的输出方‎法,输出相应信‎息////////////////////////////Syste‎m.out.print‎l n("-------------------------------");t1.print‎();//普通教师信‎息Syste‎m.out.print‎l n("-------------------------------");rt.print‎();//研究系列教‎师信息Syste‎m.out.print‎l n("-------------------------------");lat.print‎();//普通教师信‎息Syste‎m.out.print‎l n("-------------------------------");lit.print‎();//实验系列教‎师信息Syste‎m.out.print‎l n("-------------------------------");at.print‎();//行政系列教‎师信息Syste‎m.out.print‎l n("-------------------------------");}//end main()}//end publi‎c class‎Teach‎e rclass‎Resea‎rchTe‎a cher‎ exten‎d s Teach‎e r{priva‎t e Strin‎g resFi‎e l d;publi‎c Resea‎r chTe‎a cher‎(Strin‎g name, boole‎a n sex, Date birth‎, Strin‎g salar‎y i d,Strin‎g depar‎t, Strin‎g posit‎, Strin‎g resFi‎e l d) { = name;this.sex = sex;this.birth‎= birth‎;this.salar‎y ID = salar‎y i d;this.posit‎ = posit‎;this.resFi‎e l d = resFi‎e l d;} //end publi‎c Resea‎rchTe‎a cher‎(){}Strin‎g getRe‎sFiel‎d(){retur‎n resFi‎e l d;}void setRe‎sFiel‎d(Strin‎g resFi‎e l d){this.resFi‎e l d=resFi‎e l d;}publi‎c void print‎() {Syste‎m.out.print‎("resea‎rch teach‎e r info is:");Syste‎m.out.print‎("the teach‎e r'name:");Syste‎m.out.print‎l n(this.getNa‎m e());Syste‎m.out.print‎("the teach‎e r'sex:");if (this.getSe‎x() == false‎) {Syste‎m.out.print‎l n("女");}else {Syste‎m.out.print‎l n("男");}Syste‎m.out.print‎("the teach‎e r'birth‎:");Syste‎m.out.print‎l n(this.getBi‎rth().getY e‎a r() + "-" +this.getBi‎rth().getMo‎n th() + "-" +this.getBi‎rth().getDa‎y());Syste‎m.out.print‎("the teach‎e r'salar‎y i d:");Syste‎m.out.print‎l n(this.getSa‎l aryI‎D());Syste‎m.out.print‎("the teach‎e r'posit‎:");Syste‎m.out.print‎l n(this.getPo‎si t());Syste‎m.out.print‎("the teach‎e r'depar‎t:");Syste‎m.out.print‎l n(this.getDe‎p art());Syste‎m.out.print‎("the teach‎e r'resFi‎e l d:");Syste‎m.out.print‎l n(this.getRe‎sFiel‎d());} //end print‎()}//end class‎Resea‎r chTe‎a cher‎class‎LabTe‎a cher‎exten‎d s Teach‎e r{priva‎t e Strin‎g labNa‎m e;publi‎c LabTe‎a cher‎(Strin‎g name, boole‎a n sex, Date birth‎,Strin‎g salar‎y i d, Strin‎g depar‎t,Strin‎g posit‎, Strin‎g labNa‎m e) { = name;this.sex = sex;this.birth‎= birth‎;this.salar‎y ID = salar‎y i d;this.posit‎ = posit‎;bNa‎m e = labNa‎m e;} //end publi‎c Resea‎rchTe‎a cher‎(){}Strin‎g getLa‎b Name‎(){retur‎n labNa‎m e;}void setLa‎b Name‎(S trin‎g labNa‎m e){bNa‎m e=labNa‎m e;}publi‎c void print‎() {Syste‎m.out.print‎("lab teach‎e r info is:");Syste‎m.out.print‎("the teach‎e r'name:");Syste‎m.out.print‎l n(this.getNa‎m e());Syste‎m.out.print‎("the teach‎e r'sex:");if (this.getSe‎x() == false‎) {Syste‎m.out.print‎l n("女");}else {Syste‎m.out.print‎l n("男");}Syste‎m.out.print‎("the teach‎e r'birth‎:");Syste‎m.out.print‎l n(this.getBi‎rth().getY e‎a r() + "-" +this.getBi‎rth().getMo‎n th() + "-" +this.getBi‎rth().getDa‎y());Syste‎m.out.print‎("the teach‎e r'salar‎y i d:");Syste‎m.out.print‎l n(this.getSa‎l aryI‎D());Syste‎m.out.print‎("the teach‎e r'posit‎:");Syste‎m.out.print‎l n(this.getPo‎si t());Syste‎m.out.print‎("the teach‎e r'depar‎t:");Syste‎m.out.print‎l n(this.getDe‎p art());Syste‎m.out.print‎("the teach‎e r'labNa‎m e:");Syste‎m.out.print‎l n(bNa‎me);} //end print‎()}//end class‎LabTe‎a cher‎class‎LibTe‎a cher‎ exten‎d s Teach‎e r{priva‎t e Strin‎g libNa‎m e;publi‎c LibTe‎a cher‎(Strin‎g name,boole‎a n sex,Date birth‎,Strin‎g salar‎y i d,Strin‎g depar‎t,Strin‎g posit‎,Strin‎g libNa‎m e){ = name;this.sex = sex;this.birth‎= birth‎;this.salar‎y ID = salar‎y i d;this.posit‎ = posit‎;this.libNa‎m e=libNa‎m e;}//end publi‎c Resea‎r chTe‎a cher‎(){}Strin‎g getLi‎b Name‎(){retur‎n libNa‎m e;}void setLi‎b Name‎(Strin‎g libNa‎m e){this.libNa‎m e=libNa‎m e;}publi‎c void print‎() {Syste‎m.out.print‎("lib teach‎e r info is:");Syste‎m.out.print‎("the teach‎e r'name:");Syste‎m.out.print‎l n(this.getNa‎m e());Syste‎m.out.print‎("the teach‎e r'sex:");if (this.getSe‎x() == false‎) {Syste‎m.out.print‎l n("女");}else {Syste‎m.out.print‎l n("男");}Syste‎m.out.print‎("the teach‎e r'birth‎:");Syste‎m.out.print‎l n(this.getBi‎rth().getY e‎a r() + "-" +this.getBi‎rth().getMo‎n th() + "-" +this.getBi‎rth().getDa‎y());Syste‎m.out.print‎("the teach‎e r'salar‎y i d:");Syste‎m.out.print‎l n(this.getSa‎l aryI‎D());Syste‎m.out.print‎("the teach‎e r'posit‎:");Syste‎m.out.print‎l n(this.getPo‎si t());Syste‎m.out.print‎("the teach‎e r'depar‎t:");Syste‎m.out.print‎l n(this.getDe‎p art());Syste‎m.out.print‎("the teach‎e r'libNa‎m e:");Syste‎m.out.print‎l n(this.libNa‎m e);} //end print‎()}//end class‎LibTe‎a cher‎class‎A dmin‎T each‎e r exten‎d s Teach‎e r{priva‎t e Strin‎g manag‎e Pos;publi‎c Admin‎Teach‎e r(Strin‎g name,boole‎a n sex,Date birth‎,Strin‎g salar‎y i d,Strin‎g depar‎t,Strin‎g posit‎,Strin‎g manag‎e Pos){ = name;this.sex = sex;this.birth‎= birth‎;this.salar‎y ID = salar‎y i d;this.depar‎t = depar‎t;this.posit‎ = posit‎;this.manag‎e Pos=manag‎e Pos;}//end publi‎c Resea‎r chTe‎a cher‎(){}Strin‎g getMa‎n ageP‎o s(){retur‎n manag‎e Pos;}void setMa‎n ageP‎o s(Strin‎g manag‎e Pos){this.manag‎e Pos=manag‎e Pos;}publi‎c void print‎() {Syste‎m.out.print‎("admin‎t each‎e r info is:");Syste‎m.out.print‎("the teach‎e r'name:");Syste‎m.out.print‎l n(this.getNa‎m e());Syste‎m.out.print‎("the teach‎e r'sex:");if (this.getSe‎x() == false‎) {Syste‎m.out.print‎l n("女");}else {Syste‎m.out.print‎l n("男");}Syste‎m.out.print‎("the teach‎e r'birth‎:");Syste‎m.out.print‎l n(this.getBi‎rth().getY e‎a r() + "-" +this.getBi‎rth().getMo‎n th() + "-" +this.getBi‎rth().getDa‎y());Syste‎m.out.print‎("the teach‎e r'salar‎y i d:");Syste‎m.out.print‎l n(this.getSa‎l aryI‎D());Syste‎m.out.print‎("the teach‎e r'posit‎:");Syste‎m.out.print‎l n(this.getPo‎si t());Syste‎m.out.print‎("the teach‎e r'depar‎t:");Syste‎m.out.print‎l n(this.getDe‎p art());Syste‎m.out.print‎("the teach‎e r'manag‎e Pos:");Syste‎m.out.print‎l n(this.manag‎e Pos);} //end print‎()}//end class‎A dmin‎T each‎e r习题2.11publi‎c class‎Cours‎e {priva‎t e Strin‎g cours‎e ID;priva‎t e Strin‎g cours‎e Name‎;priva‎t e Strin‎g cours‎e Type‎;priva‎t e int class‎H our;priva‎t e float‎ credi‎t;publi‎c Cours‎e(Strin‎g cours‎e ID, Strin‎g cours‎e Name‎, Strin‎g cours‎e Type‎, int class‎H our, float‎ credi‎t) {this.cours‎e ID=cours‎e ID;this.cours‎e Name‎=cours‎e Name‎;this.cours‎e Type‎=cours‎e Type‎;this.class‎H our=class‎H our;this.credi‎t=credi‎t;}//end publi‎c Cours‎e(){}Strin‎g getID‎() {retur‎n cours‎e ID;}void setID‎(Strin‎g id) {this.cours‎e ID = id;}Strin‎g getNa‎m e() {retur‎n cours‎e Name‎;}void setNa‎m e(Strin‎g name) {this.cours‎e Name‎= name;}Strin‎g getTy‎pe() {retur‎n cours‎e Type‎;}void setTy‎p e(Strin‎g type) {this.cours‎e Type‎= type;}int getCl‎a ssHo‎u r() {retur‎n class‎H our;}void setCl‎a ssHo‎u r(int hour) {this.class‎H our = hour;}float‎ getCr‎e dit() {retur‎n class‎H our;}void setCr‎e dit(float‎ credi‎t) {this.credi‎t= credi‎t;}publi‎c void print‎(){Syste‎m.out.print‎l n("the basic‎i nfo of this cours‎e as follo‎wed:"); Syste‎m.out.print‎l n("cours‎e ID="+this.getID‎());Syste‎m.out.print‎l n("cours‎e Name‎="+this.getNa‎m e());Syste‎m.out.print‎l n("cours‎e Type‎="+this.getTy‎pe());Syste‎m.out.print‎l n("class‎H our="+this.getCl‎a ssHo‎u r());Syste‎m.out.print‎l n("credi‎t="+this.getCr‎e di t());}publi‎c stati‎c void main(Strin‎g[] args) {Cours‎e cs=new Cours‎e("d12","java程‎序设计(第二版)","cs",64,3.0f);Syste‎m.out.print‎l n("----------------------------------");cs.print‎();Syste‎m.out.print‎l n("修改课程学‎分为4.0f");cs.setCr‎e dit(4);cs.print‎();}}//习题2.12publi‎c class‎MyGra‎p hi c {Strin‎g lineC‎ol or;Strin‎g fillC‎ol or;MyGra‎p hic(Strin‎g l c,Strin‎g fc){this.lineC‎ol or=lc;this.fillC‎ol or=fc;}void print‎(){Syste‎m.out.print‎l n("line color‎i s "+this.lineC‎ol or+"\t fill color‎i s "+this.fillC‎ol or);}publi‎c stati‎c void main(Strin‎g[] args) {float‎ rd=(float‎)4.5;MyCir‎cl e mc=new MyCir‎cl e(rd,"black‎","white‎");MyRec‎t angl‎e mr=new MyRec‎t angl‎e(4,6,"red","blue");Syste‎m.out.print‎l n("Circl‎e info ");mc.print‎();Syste‎m.out.print‎l n("circu‎m fere‎n ce is " + mc.calCi‎r cum());Syste‎m.out.print‎l n("squar‎e i s " + mc.calSq‎uare());Syste‎m.out.print‎l n("recta‎n gle info: ");mr.print‎();Syste‎m.out.print‎l n("circu‎m fere‎n ce is " + mr.calCi‎r cum());Syste‎m.out.print‎l n("squar‎e i s " + mr.calSq‎u are());}//end main(){}}//end publi‎c class‎MyGra‎p hicclass‎MyRec‎tangl‎e exten‎d s MyGra‎p hi c{float‎ rLong‎;float‎ rWidt‎h;MyRec‎t angl‎e (float‎ rl,float‎ rw,Strin‎g l c,Strin‎g fc){super‎(l c,fc);this.rLong‎=rl;this.rWidt‎h=rw;}//end MyRec‎tangl‎e (){}float‎ calCi‎r cum(){retur‎n ((float‎)((this.rLong‎+this.rWidt‎h)*2));}float‎ calSq‎u are(){retur‎n ((float‎)(this.rLong‎*this.rWidt‎h));}}//end class‎MyRec‎t angl‎eclass‎MyCir‎cl e exten‎d s MyGra‎p hi c{float‎ radiu‎s;MyCir‎cl e (float‎ rd,Strin‎g l c,Strin‎g fc){super‎(l c,fc);this.radiu‎s=rd;}//end MyRec‎tangl‎e (){}float‎ calCi‎r cum(){retur‎n (float‎)((this.radiu‎s*3.12*2));}float‎ calSq‎u are(){retur‎n ((float‎)(this.radiu‎s*this.radiu‎s*3.14));}}//end class‎MyCir‎cl e//习题2.13publi‎c class‎V ehic‎l e {Strin‎g brand‎;Strin‎g color‎;int price‎;int numbe‎r;publi‎c V ehic‎l e(Strin‎g b, Strin‎g c) {this.brand‎= b;this.color‎ = c;}publi‎c V ehic‎l e(Strin‎g b, Strin‎g c, int p, int n) {this(b, c);this.price‎= p;this.numbe‎r = n;}void print‎() {Syste‎m.out.print‎l n("\n-------------------------");Syste‎m.out.print‎l n("the vehic‎l e info as follo‎wed :");Syste‎m.out.print‎l n("brand‎=" + this.brand‎+ "\t");Syste‎m.out.print‎l n("color‎=" + this.color‎+ "\t");Syste‎m.out.print‎l n("price‎=" + this.price‎+ "\t");Syste‎m.out.print‎l n("numbe‎r=" + this.numbe‎r + "\t"); } //end void print‎()publi‎c stati‎c void main(Strin‎g[] args) {V ehic‎l e c1=new V ehic‎l e("vehic‎l e1","white‎");V ehic‎l e c2=new V ehic‎l e("vehic‎l e2","white‎",300,1);Car cr=new Car("car1","red",300,4,400);Truck‎tk2=new Truck‎("truck‎1","black‎",300,400);c1.print‎();c2.print‎();cr.print‎();tk2.print‎();} //end main()} //end publi‎c class‎V ehic‎l eclass‎Car exten‎d s V ehic‎l e{int speed‎;Car(Strin‎g b, Strin‎g c, int p, int n,int s){super‎(b,c,p,n);this.speed‎=s;}void print‎(){super‎.print‎();Syste‎m.out.print‎("speed‎="+this.speed‎);}}//end class‎Carclass‎ Truck‎exten‎d s V ehic‎l e{int speed‎;int weigh‎t;Truck‎(Strin‎g b, Strin‎g c, int s,int w){super‎(b,c);this.speed‎=s;this.weigh‎t=w;}void print‎(){super‎.print‎();Syste‎m.out.print‎("speed‎="+this.speed‎);Syste‎m.out.print‎("weigh‎t="+this.weigh‎t);}}//end class‎ Truck‎第三章习题3.3publi‎c class‎ Test {publi‎c stati‎c void main(Strin‎g[] args) {int b1=1;int b2=1;Syste‎m.out.print‎l n("b1=" + b1);Syste‎m.out.print‎l n("b2=" + b2);b1<<=31;b2<<=31;Syste‎m.out.print‎l n("b1=" + b1);Syste‎m.out.print‎l n("b2=" + b2);b1 >>= 31;Syste‎m.out.print‎l n("b1=" + b1);b1 >>= 1;Syste‎m.out.print‎l n("b1=" + b1);b2 >>>= 31;Syste‎m.out.print‎l n("b2=" + b2);b2 >>>= 1;Syste‎m.out.print‎l n("b2=" + b2);}}//习题3.4publi‎c class‎Facto‎ri al {priva‎t e int resul‎t,initV‎al;publi‎c stati‎c int Facto‎ri al(int n){if(n==0){retur‎n 1;}retur‎n n*Facto‎ri al(n-1);}publi‎c void print‎(){Syste‎m.out.print‎l n(initV‎al+"!="+resul‎t); }publi‎c void setIn‎i tV al‎(i nt n){initV‎al=n;}publi‎c stati‎c void main(Strin‎g[] args) {Facto‎ri al ff=new Facto‎ri al();for(int i=0;i<=4;i++){ff.setIn‎i tV al‎(2*(i+1));ff.resul‎t=Facto‎rial(ff.initV‎al);ff.print‎();}//end for()}//end main()}//end publi‎c class‎Facto‎ri alpubli‎c class‎Facto‎ri al2‎{priva‎t e int resul‎t,initV‎al;publi‎c void print‎(){Syste‎m.out.print‎l n(initV‎al+"!="+resul‎t); }publi‎c void setIn‎i tV al‎(i nt n){initV‎al=n;}publi‎c stati‎c void main(Strin‎g[] args) { Facto‎ri al2‎ff=new Facto‎rial2‎();for(int i=0;i<=4;i++){ff.setIn‎i tV al‎(2*(i+1));ff.resul‎t=1;for(int j=2;j<=ff.initV‎al;j++){ff.resul‎t*=j;}ff.print‎();}//end for()}//end main()}//习题3.5publi‎c class‎MathR‎a ndom‎T est {publi‎c stati‎c void main(Strin‎g[] args) {int count‎=0,MAXof‎100,MINof‎100;int num,i;MAXof‎100=(int)(100*Math.rando‎m());MINof‎100=(int)(100*Math.rando‎m());Syste‎m.out.print‎(MAXof‎100+" ");Syste‎m.out.print‎(MINof‎100+" ");if(MAXof‎100>50)count‎++;if(MINof‎100>50)count‎++;if( MAXof‎100<MINof‎100){num=MINof‎100;MINof‎100=MAXof‎100;MAXof‎100=num;}//end if()for(i=0;i<98;i++){num=(int)(100*Math.rando‎m());Syste‎m.out.print‎(num+((i+2)%10==9?"\n":" "));if(num>MAXof‎100){MAXof‎100=num;}else if(num<MINof‎100){MINof‎100=num;}if(num>50){count‎++;}}//end for()Syste‎m.out.print‎l n("the max of 100 rando‎m integ‎e rs i s "+MAXof‎100);Syste‎m.out.print‎l n("the min of 100 rando‎m integ‎e rs is "+MINof‎100);Syste‎m.out.print‎l n("the numbe‎r of rando‎m more than5‎0 is "+count‎); }//end main()}//end publi‎c class‎MathR‎a ndom‎T est//习题3.7publi‎c class‎P rint‎A st {publi‎c void print‎A star‎() {Syste‎m.out.print‎("*");}publi‎c void print‎S pace‎() {Syste‎m.out.print‎(" ");}publi‎c stati‎c void main(Strin‎g[] args) {Print‎A st pa = new Print‎A st();int initN‎u m = 13;for (int i = 1; i <= initN‎u m / 2 + 1; i++) {for (int n = 1; n <= i; n++) {pa.print‎S pace‎();pa.print‎S pace‎();}for (int m = 1; m <= initN‎u m - 2 * i + 2; m++) {pa.print‎S pace‎();pa.print‎A star‎();}Syste‎m.out.print‎l n();} //end forif (initN‎u m % 2 == 0) {for (int i = 1; i <= initN‎u m / 2; i++) {pa.print‎S pace‎();pa.print‎S pace‎();}pa.print‎S pace‎();pa.print‎A star‎();pa.print‎S pace‎();pa.print‎A star‎();Syste‎m.out.print‎l n();}for (int i = initN‎u m / 2 + 2; i <= initN‎u m; i++) {for (int n = 1; n <= initN‎u m - i + 1; n++) {pa.print‎S pace‎();pa.print‎S pace‎();}for (int m = 1; m <= 2 * i - initN‎u m; m++) {pa.print‎S pace‎();pa.print‎A star‎();}Syste‎m.out.print‎l n();} //end forSyste‎m.out.print‎l n();} //end main()} //end publi‎c class‎ Print‎A st//习题3.8publi‎c class‎P rint‎T riag‎{publi‎c void print‎A star‎() {Syste‎m.out.print‎("*");}publi‎c stati‎c void main(Strin‎g[] args) {int initL‎i ne = 10;int initN‎u m = 10;Print‎T riag‎pt = new Print‎T riag‎();for (int i = 0; i < initL‎i ne; i++) {for (int j = 0; j < initN‎u m - i; j++) {pt.print‎A star‎();}Syste‎m.out.print‎l n();}}//end main()}//end publi‎c class‎Print‎T riag‎习题3.9impor‎t java.util.*;publi‎c class‎Multi‎p l eTa‎b l e {publi‎c void print‎F ormu‎l a(int i,int j,int res){Syste‎m.out.print‎(i+"*"+j+"="+res+" "); }publi‎c stati‎c void main(Strin‎g[] args) {Multi‎p l eTa‎b l e mt=new Multi‎p leTa‎b le();int initN‎u m=9;int res=0;for(int i=1;i<=initN‎u m;i++){for(int j=1;j<=i;j++){res=i*j;mt.print‎F o rmu‎l a(i,j,res);}Syste‎m.out.print‎l n();}//end for}//end main()}//end publi‎c class‎Multi‎p l eTa‎b l e习题3,10impor‎t java.io.*;publi‎c class‎H uiWe‎n {boole‎a n isHui‎W en(char str[], int n) {int net = 0;int i, j;for (i = 0, j = n - 1; i < n / 2; i++, j--) {if (str[i] == str[j]) {net++;} //end if} //end forif (net == (int) (n / 2)) {retur‎n true;} //end ifelse {retur‎n false‎;}} //end boole‎a n isHui‎W en(char str[], int n) publi‎c stati‎c void main(Strin‎g[] args) {HuiWe‎n hw1 = new HuiWe‎n();Strin‎g pm = "";try {Input‎S trea‎m Read‎e r reade‎r = new Input‎S trea‎m Read‎e r(Syste‎m.in);Buffe‎redRe‎a der input‎ = new Buffe‎redRe‎a der(reade‎r);Syste‎m.out.print‎("give your test strin‎g:\n");pm = input‎.readL‎i ne();Syste‎m.out.print‎l n(pm);} //end trycatch‎ (IOExc‎e ptio‎n e) {Syste‎m.out.print‎(e);} //end catch‎boole‎a n bw = hw1.isHui‎W en(pm.toCha‎rA rra‎y(), pm.lengt‎h());if (bw == true) {Syste‎m.out.print‎l n("是回文");}else {Syste‎m.out.print‎l n("不是回文");}} //end main()} //end publi‎c class‎H uiWe‎nimpor‎t java.io.*;publi‎c class‎H uiWe‎n2 {Strin‎g rever‎se(Strin‎g w1){Strin‎g w2;char[]str1=w1.toCha‎rA rra‎y();int len=w1.lengt‎h();char[]str2=new char[len];for(int i=0;i<len;i++){str2[i]=str1[len-1-i];}w2=new Strin‎g(str2);retur‎n w2;}publi‎c stati‎c void main(Strin‎g[] args) {HuiWe‎n2 hw1 = new HuiWe‎n2();Strin‎g pm = "";try {Input‎S trea‎m Read‎e r reade‎r = new Input‎S trea‎m Read‎e r(Syste‎m.in);Buffe‎redRe‎a der input‎ = new Buffe‎redRe‎a der(reade‎r);Syste‎m.out.print‎("give your test strin‎g:\n");pm = input‎.readL‎i ne();} //end trycatch‎ (IOExc‎e ptio‎n e) {Syste‎m.out.print‎(e);} //end catch‎Strin‎g w2=hw1.rever‎se(pm);if(pa‎reTo(pm)==0){Syste‎m.out.print‎l n("是回文");}else {Syste‎m.out.print‎l n("不是回文");}}}//习题3.11impor‎t java.io.*;publi‎c class‎P rime‎N umbe‎r {priva‎t e int pm;publi‎c void setPm‎(i nt pm){this.pm=pm;}publi‎c boole‎a n isPri‎m e(){boole‎a n bl=true;int i=2;for(i=2;i<=Math.sqrt(pm);){if(pm%i==0){bl=false‎;break‎;}else{i++;}}//end forretur‎n bl;}//end publi‎c boole‎a n isPri‎m e()publi‎c stati‎c void main(Strin‎g[] args) {Prime‎N umbe‎r prim=new Prime‎N umbe‎r();int testN‎u m=0;try{Input‎S trea‎m Read‎e r reade‎r = new Input‎S trea‎m Read‎e r(Syste‎m.in);Buffe‎redRe‎a der input‎ = new Buffe‎redRe‎a der(reade‎r);Syste‎m.out.print‎("give your test numbe‎r:\n");testN‎u m=Integ‎e r.parse‎Int(input‎.readL‎i ne());}//end trycatch‎(IOExc‎e ptio‎n e){Syste‎m.out.print‎l n(e);}//end catch‎prim.setPm‎(testN‎u m);。

最新版JAVA2简明教程习题答案

最新版JAVA2简明教程习题答案

最新版JAVA2简明教程习题答案声明: 答案以老师讲复习题为主,仅供参考.∪∩BUG整理于2018 07 03第二章课堂习题:public class Main{public static void main(String[] args) {//initialization phase初始段float f1 = 2.5f;float f2;int a = 7;int b = 2;int c;//processing phase 处理段f2 = f1 + (a/b);c = (a/b);//termination phase终止段System.out.println("f2的值为: " + f2);System.out.println("c的值为: " + c);}}课后习题:2-4(小程序部分)import java.applet.*;import java.awt.*;public class Gess extends Applet{public void paint(Graphics g){//3~10000中的任意数int m = 20;int n = 9993;g.drawString("本程序仅对3~10000中任意取的整数: ",80,50);g.drawString("20" ,80,65);g.drawString("9993" ,80,80);g.drawString("进行测试! " ,80,95);while (m !=1) //假设最后得到的数一定是1,则如果不为1就换算{if (m %2 == 0) //如果被2整除则为偶数,除以2m = m /2;else //如果不被2整除则为奇数,乘以3再加1{m = m *3 + 1;}}while (n !=1) //假设最后得到的数一定是1,则如果不为1就换算{if (n %2 == 0) //如果被2整除则为偶数,除以2n = n /2;else //如果不被2整除则为奇数,乘以3再加1{n = n *3 + 1;}}g.drawString("20换算后的值为: " + m,80,110);g.drawString("9993换算后的值为: " + m,80,125);}}(程序部分)import java.io.*; //引入java.io中的所有类(含输入输出类),因为程序中要用到输入类的read()方法public class Main{public static void main(String[] args){byte []buf =new byte[50]; //50个字节的数组用于存字符串String str;long m = 0;System.out.println("请输入3~10000中的任意整数(回车确认):");try //try 语气{System.in.read(buf); //从键盘读入一数字串保存于buf中str = new String(buf); //buf转换成字符串对象strm = Long.parseLong(str.trim()); //数字转换成整数}catch (Exception e){} //catch语气,Exception为异常类while (m !=1) //假设最后得到的数一定是1,则如果不为1就换算{if (m %2 == 0) //如果被2整除则为偶数,除以2m = m /2;else //如果不被2整除则为奇数,乘以3再加1{m = m *3 + 1;}}System.out.println("换算后的值为:\t" + m);}}2-6public class Main{public static void main(String[] args){// initialization phase //初始段int j = 1;int []a; //用于存放第一个骰子的点数的整形数组int []b; //用于存放第二个骰子的点数的整形数组int two = 0; //相加和为2的计数器int sev = 0; //相加和为7的计数器int twe = 0; //相加和为12的计数器int oth = 0; //相加和为其他数的计数器a = new int [6]; //分配数组空间b = a; //骰子的点数相同,这里将数组a赋给数组b(这时b和a同用一块内存空间)//processing phase 处理段。

java语言程序设计(基础篇)第二章程序练习题标准答案

java语言程序设计(基础篇)第二章程序练习题标准答案

2.1(将摄氏温度转化为华氏温度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a degree in celsius: ");double Celsius = input.nextDouble();double Fahrenheit;Fahrenheit = (9.0/5) * Celsius + 32;System.out.println(Celsius + " Celsius is" + Fahrenheit + " Fahrenheit");}}2.2(计算圆柱体的体积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the radius and length of a cylinder: ");double radius = input.nextDouble();double length =input.nextDouble();double area = radius * radius * Math.PI;double volume = area * length;System.out.println("The area is " + area);System.out.println("The volume is " + volume);}}2.3(将英尺转换为米)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a value for feet: ");double feet = input.nextDouble();double meters = feet * 0.305;System.out.println(feet+ " feet is " + meters + " meters");}}2.4(将磅转换为千克)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a number in pounds: ");double pounds = input.nextDouble();double kilograms = pounds * 0.454;System.out.println(pounds + " pounds is " + kilograms + " kilograms");}}2.5(财务应用程序:计算消费)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the subtotal and gratuity rate: ");double subtotal = input.nextDouble();double Gratuity = input.nextDouble();double gratuity = subtotal * Gratuity * 0.01;double total = gratuity + subtotal;System.out.println("The gratuity is $" + gratuity + " and total is " + total);}}2.6(求一个整数个位数的和)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter a number between 0 and 1000: ");int number = input.nextInt();int sum = number % 10 + (number / 10) % 10 + (number / 100) % 10;System.out.println("The sum of the digits is " + sum);}}2.7(求出年数)import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the number of minutes: ");double minutes = input.nextDouble();int years = (int)minutes / (60*24*365);int days= (int)minutes/ (60*24) - ((int)minutes/ (60*24*365)) * 365;System.out.println(minutes + "minutes is approximately " + years + " years and " + days + " days");}}2.8(当前时间)import java.util.*;public class ShowXureentTime {public static void main(String[] args) {// TODO Auto-generated method stublong totalMilliseconds = System.currentTimeMillis();//得到1970年1月1日到现在的毫秒数long totalSeconds = totalMilliseconds / 1000;//将总毫秒转化为总秒long currentSecond = totalSeconds % 60;//当前的秒数long totalMinutes = totalSeconds / 60;//得到总的分钟long currentMinute = totalMinutes % 60;//当前的分钟数long totalHours = totalMinutes / 60;//得到总小时Scanner input = new Scanner(System.in);System.out.print("Enter the time zone offset to GMT: ");long zone = input.nextInt();long currentHour = totalHours % 24 + zone;//当前的小时数if(currentHour <0) {currentHour = currentHour + 24;}System.out.println("Current time is " + currentHour + ":" +currentMinute + ":" + currentSecond + " GMT");}//GMT世界时}2.9(物理:加速度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter v0, v1 and t: ");double v0 = input.nextDouble();double v1 = input.nextDouble();double t = input.nextDouble();double acceleration = (v1 - v0) / t;System.out.println("The average acceleration is " +String.format("%.4f", acceleration));}}2.10(科学:计算能量)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the amount of water in kilograms: ");double M = input.nextDouble();System.out.print("Enter the initial temperature: ");double temperature1 = input.nextDouble();System.out.print("Enter the final temperature: ");double temperature2 = input.nextDouble();double energy = M * (temperature2 - temperature1) * 4184;System.out.println("The energy needed is " + energy);}}2.1(人口统计)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the number of years: ");int year = input.nextInt();int population = 312032486;int temp= (365*12*60*60/7)-(365*12*60*60/13)+(365*12*60*60/45);//j = 诞生-死亡+移民迁入;for(int i = 1 ;i <= year ;i ++ ) {population = temp + population ;}System.out.println("The population in " + year + " years is " + population);}}2.12(物理:求出跑道的长度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter speed and acceleration: ");double speed = input.nextDouble();double acceleration = input.nextDouble();double length = speed * speed / (2 * acceleration);System.out.println("The minimum runway length for this airplane is " + String.format("%.3f", length));}}2.13(财务应用程序:复利值)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the monthly saving aomunt: ");double monthly = input.nextDouble();double money = 0;for(int i = 1; i <= 6; i++) {money = (monthly + money) * (1 + 0.00417);}System.out.println("After the sixth month, the account value is " + String.format("%.2f", money));}}2.14(医疗应用程序:计算BMI)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter weight in pounds: ");double pounds = input.nextDouble();double kilogram = pounds * 0.45359237;System.out.print("Enter height in inches: ");double inches = input.nextDouble();double meter = inches * 0.0254;double BMI = (kilogram / (meter * meter)) ;System.out.println("BMI is " + String.format("%.4f", BMI));}}2.15(几何:两点间距离)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter x1 and y1: ");double x1 = input.nextDouble();double y1 = input.nextDouble();System.out.print("Enter x2 and y2: ");double x2 = input.nextDouble();double y2 = input.nextDouble();double distance = (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1);System.out.println("The distance between the two points is " + Math.pow(distance, 0.5));}}2.16(几何:六边形面积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the side: ");double side = input.nextDouble();double area = 3 * Math.sqrt(3) / 2 * side * side;System.out.println("The area of the hexagon is " + area);}}2.17(科学:风寒温度)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the temperature in Fahrenheit between -58°F and 41°F: ");double Fahrenheit = input.nextDouble();System.out.print("Enter the wind speed (>=2) in miles per hour: ");double speed = input.nextDouble();double t = 35.74 + 0.6215 * Fahrenheit - 35.75 * Math.pow(speed, 0.16) + 0.4275 * Fahrenheit * Math.pow(speed, 0.16);System.out.println("The win chill index is " + String.format("%.5f", t));}}2.18(打印表格)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("a\t" + "b\t" + "pow(a, b)");System.out.println("1\t" + "2\t" + (int)Math.pow(1, 2));System.out.println("2\t" + "3\t" + (int)Math.pow(2, 3));System.out.println("3\t" + "4\t" + (int)Math.pow(3, 4));System.out.println("4\t" + "5\t" + (int)Math.pow(4, 5));System.out.println("5\t" + "6\t" + (int)Math.pow(5, 6));}}2.19(几何:三角形的面积)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter three points fir a trinangle: ");double x1 = input.nextDouble();double y1 = input.nextDouble();double x2 = input.nextDouble();double y2 = input.nextDouble();double x3 = input.nextDouble();double y3 = input.nextDouble();double edge1= Math.pow((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1), 0.5);double edge2= Math.pow((x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2), 0.5);double edge3= Math.pow((x3 - x1) * (x3 - x1) + (y3 - y1) * (y3 - y1), 0.5);double s =(edge1 + edge2 + edge3) / 2;double area = Math.pow(s* (s- edge1) * (s- edge2) * (s- edge3), 0.5);System.out.println("The area of the tringle is "+ String.format("%.1f", area));}}2.20(财务应用程序:计算利息)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter balance and interst rate (e.g, 3 for 3%): ");double balance = input.nextDouble();double annual = input.nextDouble();double interst = balance * ( annual / 1200);System.out.println("The interst is "+ String.format("%.5f", interst));}}2.21(财务应用:计算未来投资值)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter investment amount: ");double investment = input.nextDouble();System.out.print("Enter annual interest rate in percentage: ");double interest = input.nextDouble();interest = interest / 100 / 12;System.out.print("Enternumber of yuears: ");double years = input.nextDouble();double value = investment * Math.pow((1 + interest), (years * 12));System.out.println("Accumulated value is $" + String.format("%.2f", value));}}2.22(财务应用:货币单位)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter an amount in int, for example 1156: ");int amount = input.nextInt();int remainingAmount = amount;int numberOfOneDollars = remainingAmount / 100;remainingAmount = remainingAmount % 100;int numbersOfQuarters = remainingAmount / 25;remainingAmount = remainingAmount % 25;int numberOfDimes = remainingAmount / 10;remainingAmount = remainingAmount % 10;int numberOfNickels = remainingAmount / 5;remainingAmount = remainingAmount % 5;int numberOfPennies = remainingAmount;System.out.println("Your amount " + amount + " consosts of");System.out.println(" " + numberOfOneDollars + " dollars");System.out.println(" " + numbersOfQuarters + " quarters");System.out.println(" " + numberOfDimes + " dimes");System.out.println(" " + numberOfNickels + " nickels");System.out.println(" " + numberOfPennies + " pennies");}}2.23(驾驶费用)import java.util.*;public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.print("Enter the driving distance: ");double drivingDistance = input.nextDouble();System.out.print("Enter miles per gallon: ");double milesPerGallon = input.nextDouble();System.out.print("Enter price per gallon: ");double pricePerGallon = input.nextDouble();double costOfDriving = drivingDistance / milesPerGallon * pricePerGallon;System.out.print("The cost of driving is $" + String.format("%.2f", costOfDriving));}}。

JAVA大学实用教程第二版_习题答案

JAVA大学实用教程第二版_习题答案

Java大学实用教程第二版课后答案第一章作业题1.public class Hello{public static void main (String args[ ]){System.out.pintln(“早上好,good Morning”);}}2.import java.applet.*;import java.awt.*;public class Boy extends Applet {public void paint(Graphics g) {g.setColor(Color.blue);g.drawString("你好,hello",12,30);}}第二章作业题1.public class ZuoYe2_1{public static void main (String args[ ]){char c='а';System.out.println("字母"+c+"在unicode表中的顺序位置:"+(int)c);System.out.println("字母表:");while(c<='я'){System.out.print(" "+c);c=(char)(c+1);}}}2.import java.util.*;public class ZuoYe2_2{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);long chengji=1;int m=0;while(reader.hasNextInt()){int x=reader.nextInt();m=m+1;chengji=chengji*x;}System.out.println(m+"个数的乘积为"+chengji);}}第三章作业题1.import java.util.*;public class ZuoYe3_1{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);double y=0,x=0;x=reader.nextDouble();if(x<0)y=-1+2*x;else if(x==0)y=-1;else if(x>0)y=-1+3*x;System.out.println(y);}}2.public class ZuoYe3_2{public static void main(String args[]){int sum=0,m=3,n=7,a=1;while(a<=1000){if(a%m==0&&a%n==0)sum=sum+a;a++;}System.out.println("sum="+sum);}}3.public class ZuoYe3_3{public static void main(String args[]){long sum=0,a=8,item=a,n=10,i=1;for(i=1;i<=n;i++){ sum=sum+item;item=item*10+a;}System.out.println(sum);}}4.public class ZuoYe3_4{public static void main(String args[]){double sum=0,a=1,b=1,fuhao=1,item=a/b;int i=1;while(i<=1000){sum=sum+fuhao*item;i++;fuhao=fuhao*(-1);b=b+2;item=a/b;System.out.println("sum="+sum);}}5.public class ZuoYe3_5{public static void main(String args[]){double sum=0,a=1;int i=1;while(i<=20){if(i>=10)sum=sum+a;i++;a=a*i;}System.out.println("sum="+sum);}}8.第四章作业题1.class DengCha{int start,d;DengCha(){}DengCha(int start,int d){this.start=start;this.d=d;}void setStart(int s){start=s;void setD(int d){this.d=d;}int getSum(int n){int sum=0,i=1;while(i<=n){sum=sum+start;start=start+d;i++;}return sum;}}public class ZuoYe4_1{public static void main (String args[ ]){DengCha shulie=new DengCha(2,3);System.out.println(shulie.getSum(100));shulie.setStart(10);shulie.setD(5);System.out.println(shulie.getSum(9)); }}2.class Letter{public void printLetter(){for(char c='a';c<='z';c++)System.out.print(" "+c);}}public class ZuoYe4_2{public static void main (String args[ ]){Letter p=new Letter();p.printLetter();}}3.class SquareEquation{double a,b;static double c;double root1,root2;boolean boo;public SquareEquation(double a,double b,double c){this.a=a;this.b=b;SquareEquation.c=c;if(a!=0){boo=true;}else{boo=false;}}public void getRoots(){if(boo){System.out.println("是一元2次方程");double disk=b*b-4*a*c;if(disk>=0){root1=(-b+Math.sqrt(disk))/(2*a);root2=(-b-Math.sqrt(disk))/(2*a);System.out.printf("方程的根:%f,%f\n",root1,root2);}else{System.out.printf("方程没有实根\n");}}else{System.out.println("不是一元2次方程");}}public void setCoefficient(double a,double b,double c){this.a=a;this.b=b;SquareEquation.c=c;if(a!=0){boo=true;}else{boo=false;}}}public class ZuoYe4_3{public static void main(String args[ ]){SquareEquation equation1=new SquareEquation(4,5,1);SquareEquation equation2=new SquareEquation(3,5,-7);equation1.getRoots();equation2.getRoots();}}4.import java.util.Scanner;class A{int f(int m,int n){if(m*n<0){ System.out.println("有负数,程序退出");System.exit(0);}if(m<n){ int temp=m;m=n;n=temp;}int a=m,b=n;int r=m%n;while(r!=0){ m=n;n=r;r=m%n;}return n;}}class B{A a;B(){a=new A();}int g(int m,int n){int temp=a.f(m,n);return m*n/temp;}}public class ZuoYe4_4{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);System.out.println("输入2个正整数,程序计算出它们的最大公约数和最小公倍数");System.out.print("输入第一个整数:");int m=reader.nextInt();System.out.print("输入第二个整数:");int n=reader.nextInt();A a=new A();B b=new B();System.out.println(m+"和"+n+"的最大公约数是"+a.f(m,n));System.out.println(m+"和"+n+"的最小公倍数是"+b.g(m,n));}}5.import java.applet.Applet;import java.awt.*;public class Example4_10 extends Applet{Button redbutton;public void init(){redbutton=new Button("我是一个红色的按钮");redbutton.setBackground(Color.red);redbutton.setForeground(Color.white);add(redbutton);}}第五章作业题1.import java.util.Scanner;class A{public int f(int m,int n){if(m<n){int temp=m;m=n;n=temp;}int r=m%n;while(r!=0){m=n;n=r;r=m%n;}return n;}}class B extends A{public int f(int m,int n){int division=super.f(m,n);return (m*n)/division;}}public class ZuoYe5_1{public static void main (String args[ ]){A a=new A();B b=new B();Scanner reader=new Scanner(System.in);System.out.println("输入2个整数,程序计算出它们的最大公约数和最小公倍数");System.out.print("输入第一个整数:");int m=reader.nextInt();System.out.print("输入第二个整数:");int n=reader.nextInt();if(m*n<0){ System.out.println("有负数,程序退出");System.exit(0);}System.out.printf("%d和%d的最大公约数是%d\n",m,n,a.f(m,n));System.out.printf("%d和%d的最小公倍数是%d\n",m,n,b.f(m,n));}}2.abstract class A{public abstract void f(int x);public abstract void g(int x,int y);public abstract double h(double x);}class A1 extends A{public void f(int x){System.out.println(x);}public void g(int x,int y){int z=x+y;System.out.println(z);}public double h(double x){return x*x;}}class A2 extends A{public void f(int x){System.out.println("Hello:"+x);}public void g(int x,int y){int z=x-y;System.out.println(z);}public double h(double x){return Math.sqrt(x);}}class A3 extends A{public void f(int x){System.out.println("你好:"+x);}public void g(int x,int y){double z=(double)x/y;System.out.println(z);}public double h(double x){return 1/x;}}public class ZuoYe5_2{public static void main(String args[ ]){A a=new A1();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A2();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A3();a.f(10);a.g(12,20);System.out.println(a.h(100));}}3.interface A{public abstract void f(int x);public abstract void g(int x,int y);public abstract double h(double x); }class A1 implements A{public void f(int x){System.out.println(x);}public void g(int x,int y){int z=x+y;System.out.println(z);}public double h(double x){return x*x;}}class A2 implements A{public void f(int x){System.out.println("Hello:"+x);}public void g(int x,int y){int z=x-y;System.out.println(z);}public double h(double x){return Math.sqrt(x);}}class A3 implements A{public void f(int x){System.out.println("你好:"+x);}public void g(int x,int y){double z=(double)x/y;System.out.println(z);}public double h(double x){return 1/x;}}public class ZuoYe5_3{public static void main(String args[ ]){A a=new A1();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A2();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A3();a.f(10);a.g(12,20);System.out.println(a.h(100));}}4.class Cubic{ double getCubic(int n){ return 0;}}abstract class Sqrt{ public abstract double getSqrt(int x);}class A{ void f(Cubic cubic){ double result=cubic.getCubic(3);System.out.println(result);}}public class ZuoYe5_4{ public static void main(String args[]){ A a=new A();a.f(new Cubic(){ double getCubic(int n){ return n*n*n;}});Sqrt ss=new Sqrt(){ public double getSqrt(int x){ return Math.sqrt(x);}};double m=ss.getSqrt(5);System.out.println(m);}}5.class IntegerException extends Exception{ String message;IntegerException(int m){ message="年龄"+m+"不合理";}public String toString(){ return message;}}class People{ private int age=1;public void setAge(int age) throws IntegerException{if(age>=160||age<=0)throw new IntegerException(age); //方法抛出异常,导致方法结束elsethis.age=age;}public int getAge(){ System.out.println("年龄"+age+"合理");return age;}}public class ZuoYe6_5{ public static void main(String args[]){ People wang=new People(),zhang=new People();try { wang.setAge(189);System.out.println(wang.getAge());}catch(IntegerException e){ System.out.println(e.toString());}try { zhang.setAge(28);System.out.println(zhang.getAge());}catch(IntegerException e){ System.out.println(e.toString());}}}第六章作业题1.import java.util.regex.*;import java.util.*;public class ZuoYe6_1{public static void main(String args[ ]){Scanner reader=new Scanner(System.in);String s1=reader.nextLine();Pattern p;Matcher m;p=pile("[24680]A[13579]{2}");m=p.matcher(s1);while(m.find()){String str=m.group();System.out.print("从"+m.start()+"到"+m.end()+"匹配模式子序列:");System.out.println(str);}}}2.import java.util.regex.*;import java.util.*;public class ZuoYe4_1{public static void main(String args[ ]){Scanner reader=new Scanner(System.in);String s1=reader.nextLine();Pattern p;Matcher m;p=pile("\\d+");m=p.matcher(s1);while(m.find()){String str=m.group();System.out.print(str);}}}第七章作业题1.import java.util.*;public class ZuoYe7_2{ public static void main(String args[]){int year,month;{year=Integer.parseInt(args[0]);month=Integer.parseInt(args[1])+1;}catch(NumberFormatException e){year=2004;month=1;}System.out.println(" 日一二三四五六");Calendar 日历=Calendar.getInstance();日历.set(year,month,1);int 星期几=日历.get(Calendar.DAY_OF_WEEK)-1;String a[]=new String[星期几+31];for(int i=0;i<星期几;i++){ a[i]="**";}for(int i=星期几,n=1;i<星期几+31;i++){ if(n<=9)a[i]=String.valueOf(n)+" ";elsea[i]=String.valueOf(n) ;n++;}for(int i=0;i<a.length;i++){ if(i%7==0){ System.out.println("");}System.out.print(" "+a[i]);}}}2.class ZuoYe7_2{ public static void main(String args[]){int year1,month1,day1,year2,month2,day2;{year1=Integer.parseInt(args[0]);month1=Integer.parseInt(args[1]);day1=Integer.parseInt(args[2]);year2=Integer.parseInt(args[3]);month2=Integer.parseInt(args[4]);day2=Integer.parseInt(args[5]);}catch(NumberFormatException e){year1=2009;month1=0;day1=1;year2=2008;month2=0;day2=1;}Calendar calendar=Calendar.getInstance();calendar.set(year1,month1,day1);long timeYear1=calendar.getTimeInMillis();calendar.set(year2,month2,day2);long timeYear2=calendar.getTimeInMillis();long 相隔天数=Math.abs((timeYear1-timeYear2)/(1000*60*60*24));System.out.println(""+year1+"年"+month1+"月"+day1+"日和"+year2+"年"+month2+"月"+day2+"日相隔"+相隔天数+"天");}}3.import java.math.*;public class ZuoYe4_1{public static void main(String args[]){BigInteger chengji=new BigInteger("1"),ONE=new BigInteger("1"),i=ONE,m=new BigInteger("10");while(pareTo(m)<=0){chengji=chengji.multiply(i);i=i.add(ONE);}System.out.println(chengji);}}4.import java.util.*;public class ZuoYe7_4{public static void main(String args[]){HashSet<Integer> A=new HashSet<Integer>(),B=new HashSet<Integer>(),tempSet=new HashSet<Integer>();A.add(new Integer(1));A.add(new Integer(2));A.add(new Integer(3));A.add(new Integer(4));B.add(new Integer(1));B.add(new Integer(3));B.add(new Integer(7));B.add(new Integer(9));B.add(new Integer(11));tempSet=(HashSet<Integer>)A.clone();tempSet.retainAll(B);System.out.println("交:");Iterator<Integer> iter=tempSet.iterator();while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}tempSet=(HashSet<Integer>)A.clone();tempSet.addAll(B);iter=tempSet.iterator();System.out.println("并:");while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}tempSet=(HashSet<Integer>)A.clone();tempSet.removeAll(B);System.out.println("差:");iter=tempSet.iterator();while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}}}5.import java.util.*;class MyKey implements Comparable{double number=0;MyKey(double number){this.number=number;}public int compareTo(Object b){MyKey st=(MyKey)b;if((this.number-st.number)==0){return -1;}else{return (int)((this.number-st.number)*1000);}}}class 硬盘{int size;double price;硬盘(int n, double p){size=n;price=p;}}public class ZuoYe4_1{public static void main(String args[ ]){int [] size={10,3,7,12,10,22,100,4,6,2};double [] price={1.2,9.56,2.4,9.3,16.77,12.66,7.4,5.5,5.6,8.9,1.9};硬盘[] s=new 硬盘[10];for(int i=0;i<s.length;i++)s[i]=new 硬盘(size[i],price[i]);TreeMap<MyKey,硬盘> treemap=new TreeMap<MyKey,硬盘>();for(int i=0;i<s.length;i++)treemap.put(new MyKey(s[i].size),s[i]);int number=treemap.size();System.out.println("树映射中有"+number+"个对象:");Collection<硬盘> collection=treemap.values();Iterator<硬盘> iter=collection.iterator();while(iter.hasNext()){硬盘te=iter.next();System.out.println(te.size+","+te.price);}treemap.clear();for(int i=0;i<s.length;i++)treemap.put(new MyKey(s[i].price),s[i]);number=treemap.size();System.out.println("树映射中有"+number+"个对象:");collection=treemap.values();iter=collection.iterator();while(iter.hasNext()){硬盘te=iter.next();System.out.println(te.size+","+te.price);}}}第八章作业题1.属于操作题目,省略2.参见例子8-23.参见例子8-34.参见例子8-10第九章作业题1.import java.io.*;import java.awt.*;import java.awt.event.*;public class ZuoYe9_1{ public static void main(String args[]){ int b;byte tom[]=new byte[25];try{ File f=new File("Example.java");FileInputStream in=new FileInputStream(f);while((b=in.read(tom,0,25))!=-1){ String s=new String (tom,0,b);System.out.print(s);}in.close();}catch(IOException e){ System.out.println("File read Error"+e);}}}2.import java.io.*;import java.util.*;public class ZuoYe9_2{public static void main(String args[]){Scanner reader=new Scanner(System.in);int b;try{FileOutputStream writefile=new FileOutputStream("line.txt");int line=1,n=10;System.out.println("输入"+n+"行文本,并存入磁盘:");while(line<=n){String s=reader.nextLine();byte buffer[]=s.getBytes();writefile.write(buffer,0,buffer.length);line++;}writefile.close();}catch(IOException e){System.out.println("Error "+e);}}}3.import java.io.*;public class ZuoYe9_3{public static void main(String args[ ]){int n=-1;CharArrayWriter out=new CharArrayWriter();for(char c='а';c<='я';c++){out.write(c);}CharArrayReader in=new CharArrayReader(out.toCharArray());try{ while((n=in.read())!=-1){if(n%2==0){System.out.printf("\n");}System.out.printf("\t位置%d,字符\'%c\'",n,(char)n);}}catch(IOException e){}}}4.import java.io.*;import java.util.*;public class ZuoYe9_4{public static void main(String args[]){try{FileOutputStream fos=new FileOutputStream("jerry.dat");DataOutputStream out_data=new DataOutputStream(fos);Scanner reader=new Scanner(System.in);for(int i=1;i<=10;i++){int x=reader.nextInt();out_data.writeInt(x);}out_data.close();}catch(IOException e){}try{FileInputStream fis=new FileInputStream("jerry.dat");DataInputStream in_data=new DataInputStream(fis);for(int i=1;i<=10;i++){int m=in_data.readInt();System.out.print(" "+m);}in_data.close();}catch(IOException e){}}}5.import java.io.*;import java.util.*;class Student implements Serializable{String name ;int number;Student(String name,int number){=name;this.number=number;}}public class ZuoYe9_5{public static void main(String args[]){List<Student> list=new LinkedList<Student>();List<Student> cloneList=null;for(int k=1;k<=12;k++)list.add(new Student("I am "+k,k));try{ FileOutputStream fileOut=new FileOutputStream("a.txt");ObjectOutputStream objectOut=new ObjectOutputStream(fileOut);objectOut.writeObject(list);FileInputStream fileIn=new FileInputStream("a.txt");ObjectInputStream objectIn=new ObjectInputStream(fileIn);cloneList=(List)objectIn.readObject();}catch(Exception event){System.out.println(event);}Iterator iter=cloneList.iterator();while(iter.hasNext()){Student te=(Student)iter.next();System.out.println(te.number+","+);}}}6.import java.io.*;public class ZuoYe9_6{ public static void main(String args[]){File f=new File("Xiti12_6.java");try{ RandomAccessFile random=new RandomAccessFile(f,"rw");random.seek(0);long m=random.length();while(m>=0){ m=m-1;random.seek(m);int c=random.readByte();if(c<=255&&c>=0){ System.out.print((char)c);}else{ m=m-1; //一个汉字占2个字节random.seek(m);byte cc[]=new byte[2];random.readFully(cc);System.out.print(new String(cc));}}random.close();}catch(IOException ee){}}}5.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_5{ public static void main(String args[]){ ComputerFrame fr=new ComputerFrame();fr.setTitle("计算");}}class ComputerFrame extends JFrame implements ActionListener{ JTextField text1,text2,text3;JButton button1,button2,button3,button4;JLabel label;public ComputerFrame(){setLayout(new FlowLayout());text1=new JTextField(10);text2=new JTextField(10);text3=new JTextField(10);label=new JLabel(" ",JLabel.CENTER);label.setBackground(Color.green);add(text1);add(label);add(text2);add(text3);button1=new JButton("加");button2=new JButton("减");button3=new JButton("乘");button4=new JButton("除");add(button1);add(button2);add(button3);add(button4);button1.addActionListener(this);button2.addActionListener(this);button3.addActionListener(this);button4.addActionListener(this);setSize(400,320);setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); validate();}public void actionPerformed(ActionEvent e){ double n;if(e.getSource()==button1){ double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1+n2;text3.setText(String.valueOf(n));label.setText("+");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button2){ double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1-n2;text3.setText(String.valueOf(n));label.setText("-");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button3){double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1*n2;text3.setText(String.valueOf(n));label.setText("*");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button4){double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1/n2;text3.setText(String.valueOf(n));label.setText("/");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}validate();}}6.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_6{ public static void main(String args[]){ new WindowPanel();}}class Mypanel extends JPanel implements ActionListener { JButton button;JTextField text;Mypanel(){ button=new JButton(" ");text=new JTextField(12);add(button);add(text);button.addActionListener(this);}public void actionPerformed(ActionEvent e){ String name=text.getText();if(name.length()>0)button.setText(name);validate();}}class WindowPanel extends JFrame{ Mypanel panel1,panel2;WindowPanel(){ panel1=new Mypanel();panel2=new Mypanel();panel1.setBackground(Color.red);panel2.setBackground(Color.blue);add(panel1,BorderLayout.SOUTH);add(panel2,BorderLayout.NORTH);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}7.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_7{ public static void main(String args[]){ new WindowColor();}}class WindowColor extends JFrame{ JButton button;JTextField text;JComboBox list;WindowColor(){ setLayout(new FlowLayout());button=new JButton("hello");button.setBackground(Color.pink);button.setForeground(new Color(12,26,200));text=new JTextField("how are you");text.setBackground(Color.yellow);text.setForeground(new Color(200,26,20));list=new JComboBox();list.addItem("Hello");list.addItem("Java");list.setBackground(Color.cyan);list.setForeground(new Color(100,100,100));add(list);add(button);add(text);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}8.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_8{ public static void main(String args[]){ MoveFrame f=new MoveFrame();f.setBounds(12,12,300,300);f.setVisible(true);f.setTitle("移动");f.validate();f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}class MoveFrame extends JFrame implements ActionListener{ JButton controlButton,movedButton;public MoveFrame(){ controlButton=new JButton("单击我运动另一个按钮");controlButton.addActionListener(this);movedButton=new JButton();movedButton.setBackground(new Color(12,200,34));setLayout(null);add(controlButton);add(movedButton);controlButton.setBounds(10,30,180,30);movedButton.setBounds(100,100,20,20);}public void actionPerformed(ActionEvent e){ int x=movedButton.getBounds().x;int y=movedButton.getBounds().y;x=x+5;y=y+1;movedButton.setLocation(x,y);if(x>200){ x=100;y=100;}}}9.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class E{ public static void main(String args[]){ JFrame fr=new JFrame();fr.add(new LP(),BorderLayout.CENTER);fr.setVisible(true);fr.setBounds(12,12,300,300);fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);fr.validate();}}class LP extends JLayeredPane implements MouseListener,MouseMotionListener { JButton button[];JTextField text[];int x,y,a,b,x0,y0;LP(){ setLayout(new FlowLayout());button=new JButton[8];for(int k=0;k<button.length;k++){ button[k]=new JButton("用鼠标拖动我");add(button[k]);button[k].addMouseListener(this);button[k].addMouseMotionListener(this);}text=new JTextField[10];for(int k=0;k<text.length;k++){ text[k]=new JTextField("用鼠标拖动我");text[k].addMouseListener(this);add(text[k]);text[k].addMouseMotionListener(this);}addMouseMotionListener(this);}public void mousePressed(MouseEvent e){ Component com=null;com=(Component)e.getSource();setLayer(com,JLayeredPane.DRAG_LAYER);a=com.getBounds().x;b=com.getBounds().y;x0=e.getX(); //获取鼠标在事件源中的位置坐标y0=e.getY();}public void mouseReleased(MouseEvent e){ Component com=null;com=(Component)e.getSource();setLayer(com,JLayeredPane.DEFAULT_LAYER);Component component[]=this.getComponents();for(int k=0;k<component.length;k++){ Rectangle rect1=component[k].getBounds();Rectangle rect2=com.getBounds();if(rect1.intersects(rect2)&&com!=component[k]){ component[k].setVisible(false);//this.remove(component[k]);}}}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}public void mouseClicked(MouseEvent e){}public void mouseMoved(MouseEvent e){}public void mouseDragged(MouseEvent e){ Component com=null;if(e.getSource() instanceof Component){ com=(Component)e.getSource();a=com.getBounds().x;b=com.getBounds().y;x=e.getX(); //获取鼠标在事件源中的位置坐标y=e.getY();a=a+x;b=b+y;com.setLocation(a-x0,b-y0);}}}10.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class E{ public static void main(String args[]){ JFrame fr=new JFrame();fr.add(new MoveButton(),BorderLayout.CENTER);fr.setVisible(true);fr.setBounds(12,12,300,300);fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);fr.validate();}}class MoveButton extends JLayeredPane implements KeyListener { JButton b[]=new JButton[8];int x,y;MoveButton(){ setLayout(new FlowLayout());for(int i=0;i<8;i++){ b[i]=new JButton(""+i);b[i].addKeyListener(this);add(b[i]);}}public void keyPressed(KeyEvent e){ int moveDistance=1;Component com=(Component)e.getSource();int x=(int)com.getBounds().x;int y=(int)com.getBounds().y;Component component[]=this.getComponents();if(e.getKeyCode()==KeyEvent.VK_UP)。

2023大学_Java程序设计教程第2版(雍俊海著)课后答案下载

2023大学_Java程序设计教程第2版(雍俊海著)课后答案下载

2023Java程序设计教程第2版(雍俊海著)课后答
案下载
Java程序设计教程第2版内容提要
第1章绪论
1.1 历史简介
1.2 特点
1.3 开发环境的建立
1.4 Java程序及其执行过程
1.4.1 开发Java程序的工作流程
1.4.2 Java程序的工作原理
1.5 __小结
习题
第2章结构化程序设计
2.1 标识符和关键字
2.2 基本数据类型、直接量和变量
2.2.1 基本数据类型
2.2.2 直接量
2.2.3 变量
2.3 运算符
2.3.1 算术运算符
2.3.2 关系运算符
Java程序设计教程第2版图书目录
本书讲解Java程序设计知识及其编程方法,包括Java语言的.基础语法、结构化程序设计、面向对象程序设计、数组、字符串、向量、哈希表、泛型、枚举、异常处理、文件和数据流、图形用户界面设计、小应用程序、线程、编程规范、网络程序设计、多媒体和图形学程序设计以及数据库程序设计等。

本书的章节编排与内容以人们学习与认知过程为基础,与公司的实际需求相匹配。

内容力求简明,每章都附有习题,而且在附录中包含了图、表、例程以及类和接口的页码索引,在正文中采用特殊字体突出中心词,希望使读者在轻松和欢乐之中迅速地了... [显示全部]。

Java程序设计 精编教程(第2版)习题解答

习题解答习题一(第1章)1.James Gosling2.需3个步骤:1) 用文本编辑器编写源文件.2) 使用javac 编译源文件,得到字节码文件。

3) 使用解释器运行程序.3.set classpath=D :\jdk\jre\lib\rt 。

jar ;.;4. B5。

Java 源文件的扩展名是。

java ,Java 字节码的扩展名是.class 。

6.D 。

习题二(第2章)1.2. Teac her.javapublic class Teacher {double add (double a,double b) {return a+b;}double sub (double a,double b) {return a-b;}}Student 。

javapublic class Student {public void speak () {System 。

out 。

println ("老师好");}}MainClass 。

javapublic class MainClass {public static void main(String args[]) {height bottomTeacher zhang=new Teacher();System.out.println(zhang。

add(12,236));System。

out.println(zhang.add(234,120));Student jiang=new Student();jiang。

speak();}}3.如果源文件中有多个类,但没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了,如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。

4.行尾风格。

习题三(第3章)1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。

java程序设计教程第二版课后答案

java程序设计教程第二版课后答案【篇一:《java程序设计》课后习题参考答案】参考答案――武汉大学出版社习题1参考答案1.java语言的特点有哪些??答:参考1.1.2防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。

既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。

因此,如果要求类成员内部的一致性,就应该通过类本身的方法来处理。

这种数据隐藏技术就是面向对象的重要特性——封装。

它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。

即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。

2.简述封装的优点。

?答:封装是一个简单而有效的思想,优点有:(1)模块化,对内成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。

(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。

面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。

通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。

类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。

3.java的基本工具有哪些??(1) javac 编译器(2) java 解释器(3) jdb java 语言调试器(4) javadoc api文档管理器(5) javah 头文件生成器(6) appletviewer 小应用程序浏览器(7) javap 类文件反汇编器4.java开发环境是如何配置的?答:对于windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。

《数据结构(Java版)(第2版)》习题解答

数据结构(Java版)(第2版)习题解答叶核亚编著目录第0章Java程序设计基础 (1)【习0.1】实验0.1 哥德巴赫猜想。

(1)【习0.2】实验0.2 杨辉三角形。

(1)【习0.3】实验0.3 金额的中文大写形式。

(1)【习0.4】实验0.4 下标和相等的数字方阵。

(1)【习0.5】实验0.5 找出一个二维数组的鞍点 (2)【习0.6】实验0.6 复数类。

(2)【习0.7】实验0.8 图形接口与实现图形接口的类 (2)第1章绪论 (3)【习1.1】实验1.1 判断数组元素是否已按升序排序。

(3)【习1.2】实验1.3 用递归算法求两个整数的最大公因数。

(3)第2章线性表 (5)【习2.1】习2-5 图2.19的数据结构声明。

(5)【习2.2】习2-6 如果在遍历单链表时,将p=p.next语句写成p.next=p,结果会怎样? (5)【习2.3】实验2.2 由指定数组中的多个对象构造单链表。

(5)【习2.4】实验2.2 单链表的查找、包含、删除操作详见8.2.1。

(5)【习2.5】实验2.2 单链表的替换操作。

(6)【习2.6】实验2.2 首尾相接地连接两条单链表。

(6)【习2.7】实验2.2 复制单链表。

(6)【习2.8】实验2.2 单链表构造、复制、比较等操作的递归方法。

(7)【习2.9】建立按升序排序的单链表(不带头结点)。

(8)【习2.10】实验2.6 带头结点的循环双链表类,实现线性表接口。

(10)【习2.11】实验2.5 建立按升序排序的循环双链表。

(14)第3章栈和队列 (17)【习3.1】习3-5 栈和队列有何异同? (17)【习3.2】能否将栈声明为继承线性表,入栈方法是add(0,e),出栈方法是remove(0)?为什么? (17)【习3.3】能否用一个线性表作为栈的成员变量,入栈方法是add(0,e),出栈方法是remove(0)?为什么? (17)【习3.4】能否将队列声明为继承线性表,入队方法是add(e),出队方法是remove(0)?为什么? (17)第4章串 (18)【习4.1】实验4.6 找出两个字符串中所有共同的字符。

JAVA大学实用教程第二版_习题答案

Java大学实用教程第二版课后答案第一章作业题1.public class Hello{public static void main (String args[ ]){System.out.pintln(“早上好,good Morning”);}}2.import java.applet.*;import java.awt.*;public class Boy extends Applet {public void paint(Graphics g) {g.setColor(Color.blue);g.drawString("你好,hello",12,30);}}第二章作业题1.public class ZuoYe2_1{public static void main (String args[ ]){char c='а';System.out.println("字母"+c+"在unicode表中的顺序位置:"+(int)c);System.out.println("字母表:");while(c<='я'){System.out.print(" "+c);c=(char)(c+1);}}}2.import java.util.*;public class ZuoYe2_2{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);long chengji=1;int m=0;while(reader.hasNextInt()){int x=reader.nextInt();m=m+1;chengji=chengji*x;}System.out.println(m+"个数的乘积为"+chengji);}}第三章作业题1.import java.util.*;public class ZuoYe3_1{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);double y=0,x=0;x=reader.nextDouble();if(x<0)y=-1+2*x;else if(x==0)y=-1;else if(x>0)y=-1+3*x;System.out.println(y);}}2.public class ZuoYe3_2{public static void main(String args[]){int sum=0,m=3,n=7,a=1;while(a<=1000){if(a%m==0&&a%n==0)sum=sum+a;a++;}System.out.println("sum="+sum);}}3.public class ZuoYe3_3{public static void main(String args[]){long sum=0,a=8,item=a,n=10,i=1;for(i=1;i<=n;i++){ sum=sum+item;item=item*10+a;}System.out.println(sum);}}4.public class ZuoYe3_4{public static void main(String args[]){double sum=0,a=1,b=1,fuhao=1,item=a/b;int i=1;while(i<=1000){sum=sum+fuhao*item;i++;fuhao=fuhao*(-1);b=b+2;item=a/b;System.out.println("sum="+sum);}}5.public class ZuoYe3_5{public static void main(String args[]){double sum=0,a=1;int i=1;while(i<=20){if(i>=10)sum=sum+a;i++;a=a*i;}System.out.println("sum="+sum);}}8.第四章作业题1.class DengCha{int start,d;DengCha(){}DengCha(int start,int d){this.start=start;this.d=d;}void setStart(int s){start=s;void setD(int d){this.d=d;}int getSum(int n){int sum=0,i=1;while(i<=n){sum=sum+start;start=start+d;i++;}return sum;}}public class ZuoYe4_1{public static void main (String args[ ]){DengCha shulie=new DengCha(2,3);System.out.println(shulie.getSum(100));shulie.setStart(10);shulie.setD(5);System.out.println(shulie.getSum(9)); }}2.class Letter{public void printLetter(){for(char c='a';c<='z';c++)System.out.print(" "+c);}}public class ZuoYe4_2{public static void main (String args[ ]){Letter p=new Letter();p.printLetter();}}3.class SquareEquation{double a,b;static double c;double root1,root2;boolean boo;public SquareEquation(double a,double b,double c){this.a=a;this.b=b;SquareEquation.c=c;if(a!=0){boo=true;}else{boo=false;}}public void getRoots(){if(boo){System.out.println("是一元2次方程");double disk=b*b-4*a*c;if(disk>=0){root1=(-b+Math.sqrt(disk))/(2*a);root2=(-b-Math.sqrt(disk))/(2*a);System.out.printf("方程的根:%f,%f\n",root1,root2);}else{System.out.printf("方程没有实根\n");}}else{System.out.println("不是一元2次方程");}}public void setCoefficient(double a,double b,double c){this.a=a;this.b=b;SquareEquation.c=c;if(a!=0){boo=true;}else{boo=false;}}}public class ZuoYe4_3{public static void main(String args[ ]){SquareEquation equation1=new SquareEquation(4,5,1);SquareEquation equation2=new SquareEquation(3,5,-7);equation1.getRoots();equation2.getRoots();}}4.import java.util.Scanner;class A{int f(int m,int n){if(m*n<0){ System.out.println("有负数,程序退出");System.exit(0);}if(m<n){ int temp=m;m=n;n=temp;}int a=m,b=n;int r=m%n;while(r!=0){ m=n;n=r;r=m%n;}return n;}}class B{A a;B(){a=new A();}int g(int m,int n){int temp=a.f(m,n);return m*n/temp;}}public class ZuoYe4_4{public static void main (String args[ ]){Scanner reader=new Scanner(System.in);System.out.println("输入2个正整数,程序计算出它们的最大公约数和最小公倍数");System.out.print("输入第一个整数:");int m=reader.nextInt();System.out.print("输入第二个整数:");int n=reader.nextInt();A a=new A();B b=new B();System.out.println(m+"和"+n+"的最大公约数是"+a.f(m,n));System.out.println(m+"和"+n+"的最小公倍数是"+b.g(m,n));}}5.import java.applet.Applet;import java.awt.*;public class Example4_10 extends Applet{Button redbutton;public void init(){redbutton=new Button("我是一个红色的按钮");redbutton.setBackground(Color.red);redbutton.setForeground(Color.white);add(redbutton);}}第五章作业题1.import java.util.Scanner;class A{public int f(int m,int n){if(m<n){int temp=m;m=n;n=temp;}int r=m%n;while(r!=0){m=n;n=r;r=m%n;}return n;}}class B extends A{public int f(int m,int n){int division=super.f(m,n);return (m*n)/division;}}public class ZuoYe5_1{public static void main (String args[ ]){A a=new A();B b=new B();Scanner reader=new Scanner(System.in);System.out.println("输入2个整数,程序计算出它们的最大公约数和最小公倍数");System.out.print("输入第一个整数:");int m=reader.nextInt();System.out.print("输入第二个整数:");int n=reader.nextInt();if(m*n<0){ System.out.println("有负数,程序退出");System.exit(0);}System.out.printf("%d和%d的最大公约数是%d\n",m,n,a.f(m,n));System.out.printf("%d和%d的最小公倍数是%d\n",m,n,b.f(m,n));}}2.abstract class A{public abstract void f(int x);public abstract void g(int x,int y);public abstract double h(double x);}class A1 extends A{public void f(int x){System.out.println(x);}public void g(int x,int y){int z=x+y;System.out.println(z);}public double h(double x){return x*x;}}class A2 extends A{public void f(int x){System.out.println("Hello:"+x);}public void g(int x,int y){int z=x-y;System.out.println(z);}public double h(double x){return Math.sqrt(x);}}class A3 extends A{public void f(int x){System.out.println("你好:"+x);}public void g(int x,int y){double z=(double)x/y;System.out.println(z);}public double h(double x){return 1/x;}}public class ZuoYe5_2{public static void main(String args[ ]){A a=new A1();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A2();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A3();a.f(10);a.g(12,20);System.out.println(a.h(100));}}3.interface A{public abstract void f(int x);public abstract void g(int x,int y);public abstract double h(double x); }class A1 implements A{public void f(int x){System.out.println(x);}public void g(int x,int y){int z=x+y;System.out.println(z);}public double h(double x){return x*x;}}class A2 implements A{public void f(int x){System.out.println("Hello:"+x);}public void g(int x,int y){int z=x-y;System.out.println(z);}public double h(double x){return Math.sqrt(x);}}class A3 implements A{public void f(int x){System.out.println("你好:"+x);}public void g(int x,int y){double z=(double)x/y;System.out.println(z);}public double h(double x){return 1/x;}}public class ZuoYe5_3{public static void main(String args[ ]){A a=new A1();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A2();a.f(10);a.g(12,20);System.out.println(a.h(100));a=new A3();a.f(10);a.g(12,20);System.out.println(a.h(100));}}4.class Cubic{ double getCubic(int n){ return 0;}}abstract class Sqrt{ public abstract double getSqrt(int x);}class A{ void f(Cubic cubic){ double result=cubic.getCubic(3);System.out.println(result);}}public class ZuoYe5_4{ public static void main(String args[]){ A a=new A();a.f(new Cubic(){ double getCubic(int n){ return n*n*n;}});Sqrt ss=new Sqrt(){ public double getSqrt(int x){ return Math.sqrt(x);}};double m=ss.getSqrt(5);System.out.println(m);}}5.class IntegerException extends Exception{ String message;IntegerException(int m){ message="年龄"+m+"不合理";}public String toString(){ return message;}}class People{ private int age=1;public void setAge(int age) throws IntegerException{if(age>=160||age<=0)throw new IntegerException(age); //方法抛出异常,导致方法结束elsethis.age=age;}public int getAge(){ System.out.println("年龄"+age+"合理");return age;}}public class ZuoYe6_5{ public static void main(String args[]){ People wang=new People(),zhang=new People();try { wang.setAge(189);System.out.println(wang.getAge());}catch(IntegerException e){ System.out.println(e.toString());}try { zhang.setAge(28);System.out.println(zhang.getAge());}catch(IntegerException e){ System.out.println(e.toString());}}}第六章作业题1.import java.util.regex.*;import java.util.*;public class ZuoYe6_1{public static void main(String args[ ]){Scanner reader=new Scanner(System.in);String s1=reader.nextLine();Pattern p;Matcher m;p=pile("[24680]A[13579]{2}");m=p.matcher(s1);while(m.find()){String str=m.group();System.out.print("从"+m.start()+"到"+m.end()+"匹配模式子序列:");System.out.println(str);}}}2.import java.util.regex.*;import java.util.*;public class ZuoYe4_1{public static void main(String args[ ]){Scanner reader=new Scanner(System.in);String s1=reader.nextLine();Pattern p;Matcher m;p=pile("\\d+");m=p.matcher(s1);while(m.find()){String str=m.group();System.out.print(str);}}}第七章作业题1.import java.util.*;public class ZuoYe7_2{ public static void main(String args[]){int year,month;{year=Integer.parseInt(args[0]);month=Integer.parseInt(args[1])+1;}catch(NumberFormatException e){year=2004;month=1;}System.out.println(" 日一二三四五六");Calendar 日历=Calendar.getInstance();日历.set(year,month,1);int 星期几=日历.get(Calendar.DAY_OF_WEEK)-1;String a[]=new String[星期几+31];for(int i=0;i<星期几;i++){ a[i]="**";}for(int i=星期几,n=1;i<星期几+31;i++){ if(n<=9)a[i]=String.valueOf(n)+" ";elsea[i]=String.valueOf(n) ;n++;}for(int i=0;i<a.length;i++){ if(i%7==0){ System.out.println("");}System.out.print(" "+a[i]);}}}2.class ZuoYe7_2{ public static void main(String args[]){int year1,month1,day1,year2,month2,day2;{year1=Integer.parseInt(args[0]);month1=Integer.parseInt(args[1]);day1=Integer.parseInt(args[2]);year2=Integer.parseInt(args[3]);month2=Integer.parseInt(args[4]);day2=Integer.parseInt(args[5]);}catch(NumberFormatException e){year1=2009;month1=0;day1=1;year2=2008;month2=0;day2=1;}Calendar calendar=Calendar.getInstance();calendar.set(year1,month1,day1);long timeYear1=calendar.getTimeInMillis();calendar.set(year2,month2,day2);long timeYear2=calendar.getTimeInMillis();long 相隔天数=Math.abs((timeYear1-timeYear2)/(1000*60*60*24));System.out.println(""+year1+"年"+month1+"月"+day1+"日和"+year2+"年"+month2+"月"+day2+"日相隔"+相隔天数+"天");}}3.import java.math.*;public class ZuoYe4_1{public static void main(String args[]){BigInteger chengji=new BigInteger("1"),ONE=new BigInteger("1"),i=ONE,m=new BigInteger("10");while(pareTo(m)<=0){chengji=chengji.multiply(i);i=i.add(ONE);}System.out.println(chengji);}}4.import java.util.*;public class ZuoYe7_4{public static void main(String args[]){HashSet<Integer> A=new HashSet<Integer>(),B=new HashSet<Integer>(),tempSet=new HashSet<Integer>();A.add(new Integer(1));A.add(new Integer(2));A.add(new Integer(3));A.add(new Integer(4));B.add(new Integer(1));B.add(new Integer(3));B.add(new Integer(7));B.add(new Integer(9));B.add(new Integer(11));tempSet=(HashSet<Integer>)A.clone();tempSet.retainAll(B);System.out.println("交:");Iterator<Integer> iter=tempSet.iterator();while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}tempSet=(HashSet<Integer>)A.clone();tempSet.addAll(B);iter=tempSet.iterator();System.out.println("并:");while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}tempSet=(HashSet<Integer>)A.clone();tempSet.removeAll(B);System.out.println("差:");iter=tempSet.iterator();while(iter.hasNext()){Integer te=iter.next();System.out.printf("%d,",te.intValue());}}}5.import java.util.*;class MyKey implements Comparable{double number=0;MyKey(double number){this.number=number;}public int compareTo(Object b){MyKey st=(MyKey)b;if((this.number-st.number)==0){return -1;}else{return (int)((this.number-st.number)*1000);}}}class 硬盘{int size;double price;硬盘(int n, double p){size=n;price=p;}}public class ZuoYe4_1{public static void main(String args[ ]){int [] size={10,3,7,12,10,22,100,4,6,2};double [] price={1.2,9.56,2.4,9.3,16.77,12.66,7.4,5.5,5.6,8.9,1.9};硬盘[] s=new 硬盘[10];for(int i=0;i<s.length;i++)s[i]=new 硬盘(size[i],price[i]);TreeMap<MyKey,硬盘> treemap=new TreeMap<MyKey,硬盘>();for(int i=0;i<s.length;i++)treemap.put(new MyKey(s[i].size),s[i]);int number=treemap.size();System.out.println("树映射中有"+number+"个对象:");Collection<硬盘> collection=treemap.values();Iterator<硬盘> iter=collection.iterator();while(iter.hasNext()){硬盘te=iter.next();System.out.println(te.size+","+te.price);}treemap.clear();for(int i=0;i<s.length;i++)treemap.put(new MyKey(s[i].price),s[i]);number=treemap.size();System.out.println("树映射中有"+number+"个对象:");collection=treemap.values();iter=collection.iterator();while(iter.hasNext()){硬盘te=iter.next();System.out.println(te.size+","+te.price);}}}第八章作业题1.属于操作题目,省略2.参见例子8-23.参见例子8-34.参见例子8-10第九章作业题1.import java.io.*;import java.awt.*;import java.awt.event.*;public class ZuoYe9_1{ public static void main(String args[]){ int b;byte tom[]=new byte[25];try{ File f=new File("Example.java");FileInputStream in=new FileInputStream(f);while((b=in.read(tom,0,25))!=-1){ String s=new String (tom,0,b);System.out.print(s);}in.close();}catch(IOException e){ System.out.println("File read Error"+e);}}}2.import java.io.*;import java.util.*;public class ZuoYe9_2{public static void main(String args[]){Scanner reader=new Scanner(System.in);int b;try{FileOutputStream writefile=new FileOutputStream("line.txt");int line=1,n=10;System.out.println("输入"+n+"行文本,并存入磁盘:");while(line<=n){String s=reader.nextLine();byte buffer[]=s.getBytes();writefile.write(buffer,0,buffer.length);line++;}writefile.close();}catch(IOException e){System.out.println("Error "+e);}}}3.import java.io.*;public class ZuoYe9_3{public static void main(String args[ ]){int n=-1;CharArrayWriter out=new CharArrayWriter();for(char c='а';c<='я';c++){out.write(c);}CharArrayReader in=new CharArrayReader(out.toCharArray());try{ while((n=in.read())!=-1){if(n%2==0){System.out.printf("\n");}System.out.printf("\t位置%d,字符\'%c\'",n,(char)n);}}catch(IOException e){}}}4.import java.io.*;import java.util.*;public class ZuoYe9_4{public static void main(String args[]){try{FileOutputStream fos=new FileOutputStream("jerry.dat");DataOutputStream out_data=new DataOutputStream(fos);Scanner reader=new Scanner(System.in);for(int i=1;i<=10;i++){int x=reader.nextInt();out_data.writeInt(x);}out_data.close();}catch(IOException e){}try{FileInputStream fis=new FileInputStream("jerry.dat");DataInputStream in_data=new DataInputStream(fis);for(int i=1;i<=10;i++){int m=in_data.readInt();System.out.print(" "+m);}in_data.close();}catch(IOException e){}}}5.import java.io.*;import java.util.*;class Student implements Serializable{String name ;int number;Student(String name,int number){=name;this.number=number;}}public class ZuoYe9_5{public static void main(String args[]){List<Student> list=new LinkedList<Student>();List<Student> cloneList=null;for(int k=1;k<=12;k++)list.add(new Student("I am "+k,k));try{ FileOutputStream fileOut=new FileOutputStream("a.txt");ObjectOutputStream objectOut=new ObjectOutputStream(fileOut);objectOut.writeObject(list);FileInputStream fileIn=new FileInputStream("a.txt");ObjectInputStream objectIn=new ObjectInputStream(fileIn);cloneList=(List)objectIn.readObject();}catch(Exception event){System.out.println(event);}Iterator iter=cloneList.iterator();while(iter.hasNext()){Student te=(Student)iter.next();System.out.println(te.number+","+);}}}6.import java.io.*;public class ZuoYe9_6{ public static void main(String args[]){File f=new File("Xiti12_6.java");try{ RandomAccessFile random=new RandomAccessFile(f,"rw");random.seek(0);long m=random.length();while(m>=0){ m=m-1;random.seek(m);int c=random.readByte();if(c<=255&&c>=0){ System.out.print((char)c);}else{ m=m-1; //一个汉字占2个字节random.seek(m);byte cc[]=new byte[2];random.readFully(cc);System.out.print(new String(cc));}}random.close();}catch(IOException ee){}}}5.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_5{ public static void main(String args[]){ ComputerFrame fr=new ComputerFrame();fr.setTitle("计算");}}class ComputerFrame extends JFrame implements ActionListener{ JTextField text1,text2,text3;JButton button1,button2,button3,button4;JLabel label;public ComputerFrame(){setLayout(new FlowLayout());text1=new JTextField(10);text2=new JTextField(10);text3=new JTextField(10);label=new JLabel(" ",JLabel.CENTER);label.setBackground(Color.green);add(text1);add(label);add(text2);add(text3);button1=new JButton("加");button2=new JButton("减");button3=new JButton("乘");button4=new JButton("除");add(button1);add(button2);add(button3);add(button4);button1.addActionListener(this);button2.addActionListener(this);button3.addActionListener(this);button4.addActionListener(this);setSize(400,320);setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); validate();}public void actionPerformed(ActionEvent e){ double n;if(e.getSource()==button1){ double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1+n2;text3.setText(String.valueOf(n));label.setText("+");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button2){ double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1-n2;text3.setText(String.valueOf(n));label.setText("-");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button3){double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1*n2;text3.setText(String.valueOf(n));label.setText("*");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==button4){double n1,n2;try{ n1=Double.parseDouble(text1.getText());n2=Double.parseDouble(text2.getText());n=n1/n2;text3.setText(String.valueOf(n));label.setText("/");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}validate();}}6.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_6{ public static void main(String args[]){ new WindowPanel();}}class Mypanel extends JPanel implements ActionListener { JButton button;JTextField text;Mypanel(){ button=new JButton(" ");text=new JTextField(12);add(button);add(text);button.addActionListener(this);}public void actionPerformed(ActionEvent e){ String name=text.getText();if(name.length()>0)button.setText(name);validate();}}class WindowPanel extends JFrame{ Mypanel panel1,panel2;WindowPanel(){ panel1=new Mypanel();panel2=new Mypanel();panel1.setBackground(Color.red);panel2.setBackground(Color.blue);add(panel1,BorderLayout.SOUTH);add(panel2,BorderLayout.NORTH);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}7.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_7{ public static void main(String args[]){ new WindowColor();}}class WindowColor extends JFrame{ JButton button;JTextField text;JComboBox list;WindowColor(){ setLayout(new FlowLayout());button=new JButton("hello");button.setBackground(Color.pink);button.setForeground(new Color(12,26,200));text=new JTextField("how are you");text.setBackground(Color.yellow);text.setForeground(new Color(200,26,20));list=new JComboBox();list.addItem("Hello");list.addItem("Java");list.setBackground(Color.cyan);list.setForeground(new Color(100,100,100));add(list);add(button);add(text);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}8.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Xiti8_8{ public static void main(String args[]){ MoveFrame f=new MoveFrame();f.setBounds(12,12,300,300);f.setVisible(true);f.setTitle("移动");f.validate();f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}class MoveFrame extends JFrame implements ActionListener{ JButton controlButton,movedButton;public MoveFrame(){ controlButton=new JButton("单击我运动另一个按钮");controlButton.addActionListener(this);movedButton=new JButton();movedButton.setBackground(new Color(12,200,34));setLayout(null);add(controlButton);add(movedButton);controlButton.setBounds(10,30,180,30);movedButton.setBounds(100,100,20,20);}public void actionPerformed(ActionEvent e){ int x=movedButton.getBounds().x;int y=movedButton.getBounds().y;x=x+5;y=y+1;movedButton.setLocation(x,y);if(x>200){ x=100;y=100;}}}9.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class E{ public static void main(String args[]){ JFrame fr=new JFrame();fr.add(new LP(),BorderLayout.CENTER);fr.setVisible(true);fr.setBounds(12,12,300,300);fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);fr.validate();}}class LP extends JLayeredPane implements MouseListener,MouseMotionListener { JButton button[];JTextField text[];int x,y,a,b,x0,y0;LP(){ setLayout(new FlowLayout());button=new JButton[8];for(int k=0;k<button.length;k++){ button[k]=new JButton("用鼠标拖动我");add(button[k]);button[k].addMouseListener(this);button[k].addMouseMotionListener(this);}text=new JTextField[10];for(int k=0;k<text.length;k++){ text[k]=new JTextField("用鼠标拖动我");text[k].addMouseListener(this);add(text[k]);text[k].addMouseMotionListener(this);}addMouseMotionListener(this);}public void mousePressed(MouseEvent e){ Component com=null;com=(Component)e.getSource();setLayer(com,JLayeredPane.DRAG_LAYER);a=com.getBounds().x;b=com.getBounds().y;x0=e.getX(); //获取鼠标在事件源中的位置坐标y0=e.getY();}public void mouseReleased(MouseEvent e){ Component com=null;com=(Component)e.getSource();setLayer(com,JLayeredPane.DEFAULT_LAYER);Component component[]=this.getComponents();for(int k=0;k<component.length;k++){ Rectangle rect1=component[k].getBounds();Rectangle rect2=com.getBounds();if(rect1.intersects(rect2)&&com!=component[k]){ component[k].setVisible(false);//this.remove(component[k]);}}}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}public void mouseClicked(MouseEvent e){}public void mouseMoved(MouseEvent e){}public void mouseDragged(MouseEvent e){ Component com=null;if(e.getSource() instanceof Component){ com=(Component)e.getSource();a=com.getBounds().x;b=com.getBounds().y;x=e.getX(); //获取鼠标在事件源中的位置坐标y=e.getY();a=a+x;b=b+y;com.setLocation(a-x0,b-y0);}}}10.import java.awt.*;import java.awt.event.*;import javax.swing.*;public class E{ public static void main(String args[]){ JFrame fr=new JFrame();fr.add(new MoveButton(),BorderLayout.CENTER);fr.setVisible(true);fr.setBounds(12,12,300,300);fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);fr.validate();}}class MoveButton extends JLayeredPane implements KeyListener { JButton b[]=new JButton[8];int x,y;MoveButton(){ setLayout(new FlowLayout());for(int i=0;i<8;i++){ b[i]=new JButton(""+i);b[i].addKeyListener(this);add(b[i]);}}public void keyPressed(KeyEvent e){ int moveDistance=1;Component com=(Component)e.getSource();int x=(int)com.getBounds().x;int y=(int)com.getBounds().y;Component component[]=this.getComponents();if(e.getKeyCode()==KeyEvent.VK_UP)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档