java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx

上传人:b****0 文档编号:17859987 上传时间:2023-08-04 格式:DOCX 页数:51 大小:23.19KB
下载 相关 举报
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第1页
第1页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第2页
第2页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第3页
第3页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第4页
第4页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第5页
第5页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第6页
第6页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第7页
第7页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第8页
第8页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第9页
第9页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第10页
第10页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第11页
第11页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第12页
第12页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第13页
第13页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第14页
第14页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第15页
第15页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第16页
第16页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第17页
第17页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第18页
第18页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第19页
第19页 / 共51页
java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx_第20页
第20页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx

《java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx》由会员分享,可在线阅读,更多相关《java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx(51页珍藏版)》请在冰点文库上搜索。

java语言程序设计基础篇第十版第十三章练习答案讲课讲稿.docx

java语言程序设计基础篇第十版第十三章练习答案讲课讲稿

 

java语言程序设计基础篇第十版第十三章练习答案

01

publicclassExercise13_01{

publicstaticvoidmain(String[]args){

TriangleNewtriangle=newTriangleNew(1,1.5,1);

triangle.setColor("yellow");

triangle.setFilled(true);

System.out.println(triangle);

System.out.println("Theareais"+triangle.getArea());

System.out.println("Theperimeteris"

+triangle.getPerimeter());

System.out.println(triangle);

}

}

classTriangleNewextendsGeometricObject{

privatedoubleside1=1.0,side2=1.0,side3=1.0;

/**Constructor*/

publicTriangleNew(){

}

/**Constructor*/

publicTriangleNew(doubleside1,doubleside2,doubleside3){

this.side1=side1;

this.side2=side2;

this.side3=side3;

}

/**ImplementtheabstractmethodfindAreainGeometricObject*/

publicdoublegetArea(){

doubles=(side1+side2+side3)/2;

returnMath.sqrt(s*(s-side1)*(s-side2)*(s-side3));

}

/**ImplementtheabstractmethodfindCircumferencein

*GeometricObject

**/

publicdoublegetPerimeter(){

returnside1+side2+side3;

}

@Override

publicStringtoString(){

//Implementittoreturnthethreesides

return"TriangleNew:

side1="+side1+"side2="+side2+

"side3="+side3;

}

}

02

importjava.util.ArrayList;

publicclassExercise13_02{

publicstaticvoidmain(String[]args){

ArrayListlist=newArrayList();

list.add(14);

list.add(24);

list.add(4);

list.add(42);

list.add(5);

shuffle(list);

for(inti=0;i

System.out.print(list.get(i)+"");

}

publicstaticvoidshuffle(ArrayListlist){

for(inti=0;i

intindex=(int)(Math.random()*list.size());

Numbertemp=list.get(i);

list.set(i,list.get(index));

list.set(index,temp);

}

}

}

03

importjava.util.ArrayList;

publicclassExercise13_03{

publicstaticvoidmain(String[]args){

ArrayListlist=newArrayList();

list.add(14);

list.add(24);

list.add(4);

list.add(42);

list.add(5);

sort(list);

for(inti=0;i

System.out.print(list.get(i)+"");

}

publicstaticvoidsort(ArrayListlist){

for(inti=0;i

//Findtheminimuminthelist[i..list.length-1]

NumbercurrentMin=list.get(i);

intcurrentMinIndex=i;

for(intj=i+1;j

if(currentMin.doubleValue()>list.get(j).doubleValue()){

currentMin=list.get(j);

currentMinIndex=j;

}

}

//Swaplist.get(i)withlist.get(currentMinIndex)ifnecessary;

if(currentMinIndex!

=i){

list.set(currentMinIndex,list.get(i));

list.set(i,currentMin);

}

}

}

}

04

importjava.util.*;

publicclassExercise13_04{

staticMyCalendarcalendar=newMyCalendar();

publicstaticvoidmain(String[]args){

intmonth=calendar.get(MyCalendar.MONTH)+1;

intyear=calendar.get(MyCalendar.YEAR);

if(args.length>2)

System.out.println("UsagejavaExercise13_04monthyear");

elseif(args.length==2){

//useuser-definedmonthandyear

year=Integer.parseInt(args[1]);

month=Integer.parseInt(args[0]);

calendar.set(Calendar.YEAR,year);

calendar.set(Calendar.MONTH,month-1);

}

elseif(args.length==1){

//useuser-definedmonthforthecurrentyear

month=Integer.parseInt(args[0]);

calendar.set(Calendar.MONTH,month-1);

}

//setdatetothefirstdayinamonth

calendar.set(Calendar.DATE,1);

//printcalendarforthemonth

printMonth(year,month);

}

staticvoidprintMonth(intyear,intmonth){

//getstartdayoftheweekforthefirstdateinthemonth

intstartDay=getStartDay();

//getnumberofdaysinthemonth

intnumOfDaysInMonth=calendar.daysInMonth();

//printheadings

printMonthTitle(year,month);

//printbody

printMonthBody(startDay,numOfDaysInMonth);

}

staticintgetStartDay(){

returncalendar.get(Calendar.DAY_OF_WEEK);

}

staticvoidprintMonthBody(intstartDay,intnumOfDaysInMonth){

//printpaddingspacebeforethefirstdayofthemonth

inti=0;

for(i=0;i

System.out.print("");

for(i=1;i<=numOfDaysInMonth;i++){

if(i<10)

System.out.print(""+i);

else

System.out.print(""+i);

if((i+startDay-1)%7==0)

System.out.println();

}

System.out.println("");

}

staticvoidprintMonthTitle(intyear,intmonth){

System.out.println(""+calendar.getMonthName()+","+year);

System.out.println("-----------------------------");

System.out.println("SunMonTueWedThuFriSat");

}

}

05

publicclassExercise13_05{

//Mainmethod

publicstaticvoidmain(String[]args){

//Createtwocomparablecircles

Circle1circle1=newCircle1(5);

Circle1circle2=newCircle1(4);

//Displaythemaxcircle

Circle1circle=(Circle1)GeometricObject1.max(circle1,circle2);

System.out.println("Themaxcircle'sradiusis"+circle.getRadius());

System.out.println(circle);

}

}

abstractclassGeometricObject1implementsComparable{

protectedStringcolor;

protecteddoubleweight;

//Defaultconstruct

protectedGeometricObject1(){

color="white";

weight=1.0;

}

//Constructageometricobject

protectedGeometricObject1(Stringcolor,doubleweight){

this.color=color;

this.weight=weight;

}

//Gettermethodforcolor

publicStringgetColor(){

returncolor;

}

//Settermethodforcolor

publicvoidsetColor(Stringcolor){

this.color=color;

}

//Gettermethodforweight

publicdoublegetWeight(){

returnweight;

}

//Settermethodforweight

publicvoidsetWeight(doubleweight){

this.weight=weight;

}

//Abstractmethod

publicabstractdoublegetArea();

//Abstractmethod

publicabstractdoublegetPerimeter();

publicintcompareTo(GeometricObject1o){

if(getArea()

return-1;

elseif(getArea()==o.getArea())

return0;

else

return1;

}

publicstaticGeometricObject1max(GeometricObject1o1,GeometricObject1o2){

if(pareTo(o2)>0)

returno1;

else

returno2;

}

}

//Circle.java:

ThecircleclassthatextendsGeometricObject

classCircle1extendsGeometricObject1{

protecteddoubleradius;

//Defaultconstructor

publicCircle1(){

this(1.0,"white",1.0);

}

//Constructcirclewithspecifiedradius

publicCircle1(doubleradius){

super("white",1.0);

this.radius=radius;

}

//Constructacirclewithspecifiedradius,weight,andcolor

publicCircle1(doubleradius,Stringcolor,doubleweight){

super(color,weight);

this.radius=radius;

}

//Gettermethodforradius

publicdoublegetRadius(){

returnradius;

}

//Settermethodforradius

publicvoidsetRadius(doubleradius){

this.radius=radius;

}

//ImplementthefindAreamethoddefinedinGeometricObject

publicdoublegetArea(){

returnradius*radius*Math.PI;

}

//ImplementthefindPerimetermethoddefinedinGeometricObject

publicdoublegetPerimeter(){

return2*radius*Math.PI;

}

//Overridetheequals()methoddefinedintheObjectclass

publicbooleanequals(Circle1circle){

returnthis.radius==circle.getRadius();

}

@Override

publicStringtoString(){

return"[Circle]radius="+radius;

}

@Override

publicintcompareTo(GeometricObject1o){

if(getRadius()>((Circle1)o).getRadius())

return1;

elseif(getRadius()<((Circle1)o).getRadius())

return-1;

else

return0;

}

}

06

publicclassExercise13_06{

//Mainmethod

publicstaticvoidmain(String[]args){

//Createtwocomarablerectangles

ComparableCirclecircle1=newComparableCircle(5);

ComparableCirclecircle2=newComparableCircle(15);

//Displaythemaxrect

ComparableCirclecircle3=(ComparableCircle)Max.max(circle1,circle2);

System.out.println("Themaxcircle'sradiusis"+circle3.getRadius());

System.out.println(circle3);

}

}

classComparableCircleextendsCircleimplementsComparable{

/**ConstructaComparableRectanglewithspecifiedproperties*/

publicComparableCircle(doubleradius){

super(radius);

}

@Override

publicintcompareTo(ComparableCircleo){

if(getRadius()>o.getRadius())

return1;

elseif(getRadius()

return-1;

else

return0;

}

}

//Max.java:

Findamaximumobject

classMax{

/**Returnthemaximumoftwoobjects*/

publicstaticComparableCirclemax

(ComparableCircleo1,ComparableCircleo2){

if(pareTo(o2)>0)

returno1;

else

returno2;

}

}

07

publicclassExercise13_07{

publicstaticvoidmain(String[]args){

GeometricObject[]objects={newSquare

(2),newCircle(5),newSquare(5),newRectangle(3,4),newSquare(4.5)};

for(inti=0;i

System.out.println("Areais"+objects[i].getArea());

if(objects[i]instanceofColorable)

((Colorable)objects[i]).howToColor();

}

}

}

interfaceColorable{

voidhowToColor();

}

classSquareextendsGeometricObjectimplementsColorable{

privatedoubleside;

publicSquare(doubleside){

this.side=side;

}

@Override

publicvoidhowToColor(){

System.out.println("Colorallfoursides");

}

@Override

publicdoublegetArea(){

returnside*side;

}

@Override

publicdoublegetPerimeter(){

return4*side;

}

}

08

importjava.util.ArrayList;

publicclassExercise13_08{

publicstaticvoidmain(String[]args){

MyStack1stack=newMyStack1();

stack.push("S1");

stack.push("S2");

stack.push("S");

MyStack1stack2=(MyStack1)(stack.clone());

stack2.push("S1");

stack2.push("S2");

stack2.push("S");

System.out.println(stack.getSize());

System.out.println(stack2.getSize());

}

}

classMyStack1implementsCloneable{

privateArrayList

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2