练 习
一、选择题
1.假设有以下代码:
下列选项中返回false的语句是( )。
A.s.equals(t);B.t.equals(c);
C.s==t;D.t.equals(new String("hello"));
2.下列程序的运行结果是( )。
A.t rue B.t rue C.t rue D.t rue
false true false true
true false false true
3.在Java中,关于StringBuilder类和StringBuffer类的区别,下面说法错误的是( )。
A.StringBuffer类是线程安全的
B.StringBuilder类是非线程安全的
C.StringBuffer类对String类进行改变的时候其实等同于生成了一个新的String类对象,并将指针指向新的String类对象
D.效率比较:String<StringBuffer<StringBuilder,但是在String S1=“This is only a”+“simple”+“test”时,String类的效率最高
二、编程题
1.从键盘输入n个数,求这n个数中的最大值和最小值并输出。
2.求一个3阶方阵对角线上的元素之和。
3.找出4×5矩阵中的最大值和最小值,分别输出它们的值和所在的行号、列号。
4.产生0~100之间的8个随机整数,并利用“冒泡排序”算法进行升序排序,然后将排序之后的数组输出。
5.15个红球和15个绿球排成一圈,从第1个开始数,当数到第13个球时就拿出此球,然后再从下一个球开始数,当再数到13个球时又取出此球,如此循环进行,直到仅剩15个球为止,问怎样的排法才能使每次取出的球都是红球。
6.从键盘输入一个字符串str,并输入要取的子串的开始位置start与长度len,然后输出str中从start开始长度为len的子串。
7.编程统计用户从键盘输入的字符串中所包含的字母、数字和其他字符的个数。
8.自行拓展:编写测试程序,了解String类的常用方法和功能。
9.自行拓展:编写测试程序,了解StringBuffer类和StringBuilder类的常用方法和功能。