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

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

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

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

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

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;

}

}

//S(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(o1、compareTo(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(o1、compareTo(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{

privateArrayListlist=newArrayList();

publ

展开阅读全文
相关搜索
资源标签

当前位置:首页 > 高等教育 > 文学

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

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