System.out.println(\
mpoint p1=new mpoint(aVar(keyin),aVar(keyin));
System.out.println(\
mpoint p2=new mpoint(aVar(keyin),aVar(keyin));
System.out.println(\
mpoint p3=new mpoint(aVar(keyin),aVar(keyin));
// t1
triangle t1=new triangle(p1,p2,p3);
// disp
disp tdisp =new disp(t1.getArea(),t1.getCircum(),t1.getName());
tdisp.display();
// mpoint p1=p2=p3=null;
// disp tdisp=null;
// triangle end
break;
// -------------------------------------------------------------------
case 'C':
// circle start
// 1point get
System.out.println(\
mpoint p4=new mpoint(aVar(keyin),aVar(keyin));
System.out.println(\
double radius=aVar(keyin); // t2
circle t2=new circle(p4,radius);
// disp
disp cdisp =new disp(t2.getArea(),t2.getCircum(),t2.getName());
cdisp.display();
// circle end
break;
// --------------------------------------------------------------------
case 'R':
// rectangle start
// 2point get
System.out.println(\
mpoint p6=new mpoint(aVar(keyin),aVar(keyin));
System.out.println(\
mpoint p7=new mpoint(aVar(keyin),aVar(keyin));
// t3
rectangle t3=new rectangle(p6,p7);
// disp
disp rdisp =new disp(t3.getArea(),t3.getCircum(),t3.getName());
rdisp.display();
// circle end
break;
// ----------------------------------------------------------------------
default: System.out.println(\
} // switch
} //endoffor
} //main method
static double aVar(BufferedReader keyin) throws IOException
{ // get a double var
String xx;
xx=keyin.readLine();
return Double.parseDouble(xx);
} }
第六章 习题及思考题
1、找出以下有问题的代码
public int searchAccount(int[25] number){
number =new int[15];
for(int i=0;i number[i]=number[i-1]+number[i+1]; return number; } 解: ①数组的参数说明中不能每含有长度(25)的信息。 ②for循环中,当i=0时,number[i-1]=number[-1];这表示已经越界,并产生数组下标越界例外错误。 ’ ③return返回语句不是int类型,必须是int[]类型,因为number是数组。 2、将一个字符串中的小写字母变成大写字母,并将大写字母变成小写字母. 解:import java.util.*; public class Ex2{ public static void main(String args[]){ String s=new String(\ System.out.println(s); char a[]=s.toCharArray(); for(int i=0;i { if(Character.isLowerCase(a[i])) { a[i]=Character.toUpperCase(a[i]); } else if(Character.isUpperCase(a[i])) { a[i]=Character.toLowerCase(a[i]); } } s=new String(a); System.out.println(s); } } 3、求若干个数的平均数,若干个数从键盘输入. 解:public class Ex3 { public static void main(String args[]) { double n,sum=0.0 ; for(int i=0;i { sum=sum+Double.valueOf(args[i]).doubleValue(); } n=sum/args.length; System.out.println(\平均数:\ }