1、下列选项中,可以正确实现String初始化的是()
A、 String str = "abc";
B、 String str = ‘abc’;
C、 String str = abc;
D、 String str = 0;
答案: A
2、下面哪个方法可以实现获取字符在某个字符串中第一次出现的索引?()
A、 char charAt(int index);
B、 int indexOf(int ch);
C、 int lastIndexOf(int ch);
D、 boolean endsWith(String suffix);
E、 :B
F、 解析:A答案返回字符串中index位置上的字符
G、 案返回指定字符在此字符串中最后一次出现处的索引
答案: D
3、阅读下面的程序:
class StringDemo{
public static void main(String[] args){
String s1 = “a”;
String s2 = “b”;
show(s1,s2);
System.out.println(s1+s2);
}
public static void show(String s1,String s2){
s1 = s1 +”q”;
s2 = s2 + s1;
}
}
上述程序的运行结果为( )
A、 ab
B、 aqb
C、
aqbaq
D、 aqaqb
答案: A
4、假如indexOf()方法未能找到所指定的子字符串,那么其返回值为()
A、 false
B、 0
C、 -1
D、 以上答案都不对
答案: C
解析:indexOf()方法找不到指定的子字符串时,返回值为-1。
5、已知 String 对象 s="abcdefg",则 s.substring(2, 5)的返回值为()
A、 "bcde"
B、 "cde"
C、 "cdef"
D、 "def"
答案: B
解析:字符串索引从0开始,substring()方法截取的字符串是包左不包右的。
6、StringBuffer类的append()方法的返回值类型是()
A、 String
B、 void
C、 StringBuffer
D、 StringBuilder
答案: C
解析:StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象返回值类型还是StringBuffer类型。
7、String、StringBuffer和StringBuilder三个操作字符串的效率优先级顺序是()
A、 StringBuilder>StringBuffer>String
B、 StringBuffer > StringBuilder >String
C、 String>StringBuffer> StringBuilder
D、 三种字符串优先级一样
答案: C
8、System类的getProperties()方法的作用是()
A、 获取当前的操作系统的属性
B、 获取当前JVM的属性
C、 获取指定键指示的操作系统属性
D、 获取指定键指示的JVM的属性
答案: A
解析:System类的getProperties()方法的作用是确定当前系统的属性。
9、下列关于System类的描述中,错误的是()
A、 System类是final关键字修饰的类,它不能被其他类所继承
B、 System类不能被实例化
C、 System类中定义了许多方法,但是没有定义字段
D、 System类中提供了获取当前系统属性的方法
答案: C
解析:System类中定义了三个字段,err、out和in,分别表示“标准”错误输出流、“标准”输入流和“标准”输出流。
10、阅读下列代码:
public class Example {
public static void main(String[] args) {
int[] srcArray = { 11, 12, 13, 14 };
int[] destArray = { 21, 22, 23, 24 };
System.arraycopy(srcArray, 1, destArray, 2, 2);
for (int i = 0; i < destArray.length; i++) {
System.out.print(destArray[i] + " ");
}
}
}
程序的运行结果是()
A、
21 22 12 13
B、
21 22 11 12
C、 21 11 12 24
D、 发生数组角标越界异常
答案: A
解析:
上述程序中,arraycopy()方法从指定源数组srcArray角标为1处开始,复制2个长度的数组,复制的数组替换掉目标数组destArray从角标2开始的2个长度的子数组。也就是说,将srcArray中 的12, 13两个元素替换掉了destArray中的23, 24两个元素,最后得到的是{ 21, 22, 12, 13 }这样的数组。
11、下面哪个选项可以获取Runtime类的实例?()
A、 Runtime r = new Runtime();
B、 Runtime r = Runtime.getRuntime();
C、 Runtime r = Runtime.getInstance();
D、 以上选项都不能获取Runtime实例
答案: B
12、下列选项中,属于单例设计模式的类是()
A、 Math
B、 Calendar
C、 Runtime
D、 System
答案: C
解析:Runtime类是单例设计模式的类
13、下面关于 Math.random()方法生成的随机数,正确的是哪项()
A、 0.8652963898062596
B、 -0.2
C、 3.0
D、 1.2
答案: A
解析:double random()方法返回带正号的 double 值,该值大于等于 0.0 且小于 1.0, 此值是一个伪随机选择的数。
14、下列选项中,对Math.random()方法描述正确的是 ( )
A、 返回一个不确定的整数
B、 返回0或是1
C、 返回一个随机的double类型数,该数大于等于0.0小于1.0
D、 返回一个随机的int类型数,该数大于等于0.0小于1.0
答案: C
解析:返回一个随机的double类型数,该数大于等于0.0小于1.0
15、若double val = Math.ceil(-11.9);,则val的值是()
A、 11.9
B、 -11.0
C、 -11.5
D、 -12.0
答案: B
解析:ceil是天花板的意思,表示向上取值,永远是得到大于参数的最小整数。
16、下面关于java.util.Random类中方法,说法错误的是( )
A、 nextDouble()方法返回的是0.0和1.0之间double类型的值
B、 nextFloat()方法返回的是0.0和1.0之间float类型的值
C、 nextInt(int n)返回的是0(包括)和指定值n(不包括)之间的值
D、 nextInt( )返回的是0(包括)和 2147483647 之间的值
答案: D
解析:nextInt( ) 生成 2147483647 -2147483648之间的一个数字。
17、在Integer类特有的方法中,可以将字符串参数作为有符号的十进制整数进行解析的方法是()
A、 Integer valueOf()
B、 IntegervalueOf()
C、 int parseInt()
D、 intValue()
答案: D
18、String类对正则表达式的方法中可以将字符串拆分的方法是()
A、 boolean matches()
B、 String replaceAll()
C、 int parseInt()
D、 String[] split()
答案: D
19、下面哪些选项可以实现String的初始化?()
A、 String str = "abc";
B、 String str = new String();
C、 String str = new String(“abc”);
D、 char[] chs = {‘a’,’b’,’c’};String str = new String(chs);
答案: ABCD
20、下列选项中,可以正确创建一个字符串的是?()
A、 String s = "itcast";
B、 String s = new String("itcast");
C、 String s = new String(new char[] {'i','t','c','a','s','t'});
D、 String s = new String(new int[]{1,2,3});
答案: ABC
21、下面哪些方法是字符串中的判断方法?()
A、 boolean contains(CharSequence cs);
B、 String toLowerCase();
C、 boolean equals(Object anObject);
D、 boolean isEmpty();
答案: ACD
解析:B答案使用默认语言环境的规则将String中的所有字符都转换为小写
22、下列选项中,属于StringBuffer类特点的是()
A、 字符串缓冲区,提高字符串的操作效率
B、 StringBuffer类是线程安全的
C、 StringBuffer类的toString()方法,将缓冲区变成字符串
D、 StringBuffer是不可变的对象
答案: ABC
23、下列关于Runtime的描述中,正确的是()
A、 每一个Java应用程序运行时都产生一个Runtime类实例
B、 Runtime实例可以将应用程序和运行环境相结合
C、 Runtime类没有构造函数
D、 Runtime实例不需要创建,直接通过getRuntime()方法获取
答案: ABCD
解析:Runtime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。每次使用java命令启动虚拟机都对应一个Runtime实例,并且只有一个实例,因此该类采用单例模式进行设计,可以通过getRuntime()方法获得一个Runtime实例。
24、下面选项中,对Math类描述正确的是()
A、 Math类中所有的方法都是静态的,所以类名.调用即可
B、 Math类的构造函数是私有的,所以其他类不能用Math类创建对象
C、 Math类在java.math包中
D、 Math类可以创建对象
答案: AB
解析:Math类在java.lang包中; Math类不可以创建对象,因为构造方法被私有了
25、Java提供了一套专门用于处理日期时间的API,下列选项中属于处理时间API的是()
A、 LocalDate类
B、 LocalTime类
C、 Instant类
D、 Duration类
答案: ABCD
26、使用字符串常量可以直接初始化一个String对象。
答案: 错误
27、使用String类的toCharArray()方法可以将一个字符串转为一个字符数组。
答案: 正确
解析:使用String类的toCharArray()方法可以将一个字符串转为一个字符数组。
28、String类的equals()方法和“= =”的作用是一样的。
答案: 错误
解析:String类的equals()方法比较的是两个字符串、“==”比较的是两个对象的地址值。
29、StringBuffer类和String类一样,都是不可变对象。
答案: 错误
解析:字符串是常量,因此一旦创建,其内容和长度是不可改变的,StringBuffer类长度是可以改变的。StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
30、StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
答案: 正确
31、System.getProperties()方法可以获取操作系统的属性。
答案: 正确
解析:System类的getProperties()方法用于获取系统属性。
32、System类中提供的属性和方法都是静态的。
答案: 正确
33、Runtime类是用单例设计模式设计的,不能直接创建对象,可以通过Rutime类中的一个静态方法getRuntime()方法获取实例。
答案: 正确
34、Runtime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。
答案: 错误
35、Math.round(double d)方法的作用是将一个数四舍五入,并返回一个double数。
答案: 错误
解析:Math.round(double d)方法,返回的是一个long类型的整数。
36、ceil()、floor()和round()方法返回的都是double类型的数。
答案: 错误
解析:ceil()方法和floor()方法返回的都是double类型的值,而round()方法返回一个int值。
37、java.util.Random的nextInt( )方法会生成一个正整数类型的伪随机数。
答案: 错误
解析:java.util.Random 的 nextInt( ) 生成 2147483647 -2147483648之间的一个数字,也可能是负数。
38、针对字符串的操作,Java提供了两个字符串类,分别是String和【】
答案: 字符串常量;
39、在程序中,获取字符串长度的方法是【】。
答案: length();
40、StringBuffer类的默认容量是【】个字符。
答案: 16;
41、当对字符串进行修改时,【】类和【】类的对象都可以被多次修改,并不产生新的未使用对象。
答案: StringBuffer;StringBuilder;
42、System类的【】静态方法可以启动垃圾回收器。
答案: gc();
43、要编写一个程序打开记事本,在下列程序中填写适当的代码,Runtime r = Runtime.getRuntime();r.exec("【】");
答案: Notepad.exe;
44、Math类中,用于获取一个数的绝对值的方法是【】
答案: Math.abs();;
45、java.util包中的【】可以在指定的取值范围内随机产生数字。
答案: Random类;
46、
下面哪个选项可以获取Runtime类的实例()
A、 Runtime r = new Runtime();
B、 Runtime r = Runtime.getRuntime();
C、 Runtime r = Runtime.getInstance();
D、 以上选项都不能获取Runtime实例
答案: B
解析:Runtime类是单例设计模式类,获取实例的方法是getRuntime方法。
47、
下列选项中,可以正确创建一个字符串的是( )
A、 String s = "itcast";
B、 String s = new String("itcast");
C、 String s = new String(new char[] {'i','t','c','a','s','t'});
D、 String s = new String(new int[]{1,2,3});
答案: ABC
解析:使用int类型数组创建字符串,需要初始偏移量和长度两个参数。
48、
下列选项中,可以正确实现String初始化的是()
A、 String str = "abc";
B、
C、
D、 String str = 0;
答案: A
解析:B答案错误,因为字符串必须使用双引号,C答案的abc不符合字符命名格式,D答案的0是整数的默认值。
49、下列是Random类的一些常用方法,其中能获得指定范围随机数的方法是( )
A、 nextInt()
B、 nextLong()
C、 nextBoolean()
D、 nextInt(intn)
答案: D
解析:nextInt(int n)方法能够随机生成0~n之间int类型的随机数。
50、
下面选项中,属于java.util.Random类中的方法的是( )
A、 next(intbits)
B、 nextInt()
C、 nextLong()
D、
答案: ABC
解析:random() 方法是 java.lang.Math类中的方法。
51、
JAVA中 int类型对应的包装类是【】(填英文表示)。
答案:
Integer
;
52、
下面关于java.util.Random类中方法,说明错误的是( )
A、 nextDouble()方法返回的是0.0和1.0之间double类型的值
B、 nextFloat()方法返回的是0.0和1.0之间float类型的值
C、 nextInt(intn)返回的是0(包括)和指定值n(不包括)之间的值
D、 nextInt()返回的是0(包括)和2147483647之间的值
答案: D
解析:nextInt( ) 生成 2147483647 -2147483648之间的一个数字。
53、
JAVA中拆箱是指将引用数据类型的对象转为基本数据类型。
答案: 正确
解析:拆箱是指将引用数据类型的对象转为基本数据类型。
54、
Random类的实例用于生成随机数。
答案: 正确
解析:Random类的实例用于生成随机数。
55、
阅读下面一段代码,代码的输出结果是()
Integer in1 = new Integer(10);
Integer in2 = new Integer(10);
Integer in3 = 10;
Integer in4 = 10;
System.out.println(in1 == in2);
System.out.println(in1 == in3);
System.out.println(in3 == in4);
A、 true true true
B、 false false true
C、 false false false
D、 false true false
答案: B
解析:in1和in2是new出来的,所以地址不一样,但是in3和in4的值是同一个常量10,所以相等。
56、
包装类可以将基本数据类型的值包装为引用数据类型的对象。
答案: 正确
解析:包装类可以将基本数据类型的值包装为引用数据类型的对象。
57、
ceil()、floor()和round()方法返回的都是double类型的数。
答案: 错误
解析:ceil()方法和floor()方法返回的都是double类型的值,而round()方法返回一个int值。
58、
下列是Math类中的一些常用方法,其中用于获取大于等于0.0且小于1.0的随机数的方法是( )
A、 random()
B、 abs()
C、 sin()
D、 pow()
答案: A
解析:abs()获取绝对值,sin()获取正弦值,pow()获取次幂值,选项A才是获得随机数的方法。
59、
下列选项中,关于包装类描述错误的是()
A、 包装类的作用之一就是将基本类型包装成引用类型
B、 包装类它可以完成在基本类型与String类型之间的转换
C、 包装类一共有八个,对应的基本数据类型
D、 我们可以继承包装类,以完成自定义包装
答案: D
解析:包装类都是final修饰的,不能被继承。
60、
若double val = Math.ceil(-11.9);,则val的值是( )
A、 11.9
B、 -11.0
C、 -11.5
D、 -12.0
答案: B
解析:ceil是天花板的意思,表示向上取值,永远是得到大于参数的最小整数。
61、
java.util.Random的nextInt( )方法会生成一个正整数类型的伪随机数。
答案: 错误
解析:java.util.Random 的 nextInt( ) 生成 2147483647 -2147483648之间的一个数字,也可能是负数。
62、
java.util包中的Random类的作用是可以在指定的取值范围内【】。
答案:
随机产生数字
;
解析:在JDK的java.util包中有一个Random类,它可以在指定的取值范围内随机产生数字。
63、
下面选项中,对Math类描述正确的是()
A、 Math类中所有的方法都是静态的,所以类名.调用即可
B、 Math类的构造函数是私有的,所以其他类不能用Math类创建对象
C、 Math类在java.math包中
D、 Math类可以创建对象
答案: AB
64、阅读下面的代码,输出结果是()
public static void main(String[] args) {
Random random1 = new Random(10);
Random random2 = new Random(10);
for(int i=0;i<5;i++){
System.out.print(random1.nextInt(5));
}
System.out.println();
for(int i=0;i<5;i++){
System.out.print(random2.nextInt(5));
}
}
A、 3030130301
B、 5048132680
C、 3268023579
D、 1111111111
答案: A
解析:当创建Random类的实例对象时,如果指定了相同的种子,则每个实例对象产生的随机数具有相同的序列,调用nextInt(int in)方法时产生的随机数在(0 =< 参数值)之间。
65、
下列数据类型中,哪些类型的数据是Random对象能够随机生成的( )
A、 int
B、 string
C、 double
D、 float
答案: ACD
解析:Random实例对象,能够生成:boolean、double、float、int、long类型的随机数。
66、
下列选项中,哪些是java 中的包装类()
A、 java.lang.Double
B、 java.lang.Char
C、 java.lang.Int
D、 java.lang.Byte
答案: AD
解析:char类型包装类是Character,int类型包装类是Integer。
67、
通过java中的包装类完成以下功能:
1. 创建一个基本数据类型int i=10,将其转换成对应的包装类Integer in
2. 通过创建的int类型包装类对象in来描述自动拆装箱
2.1 将in拆箱,赋值给int a
2.2 对in重新赋值,值为20
答案:
public class Demo {
public static void main(String[] args) {
int i=10;
Integer in=new Integer(i);
int a=in;
in=20;
}
}
解析:int a=in;表示将包装类对象转换成基本数据类型是拆箱过程;in=20;表示将基本数值转换成包装类对象,是装箱过程。
68、编写程序一个StringDemo类,在main方法中定义两个String字符串,使用String类equals方法,判断两个字符串是否相同,输出结果。
答案:
class StringDemo{
public static void main(String[] args){
String s1 = “abc”;
String s2 = “abc”;
boolean b = s1.equals(s2);
System.out.println(b);
}
}
输出结果为:true
解析:使用String类equals方法比较两个字符串的值是否相等。
69、简要概述StringBuffer类的append方法的作用和特点。
答案:
append()方法始终将数据添加到缓冲区的末尾","并返回本类的对象StringBuffer","无论append追加的数据是什么类型","最终都会变成字符串。
解析:append()方法始终将数据添加到缓冲区的末尾,并返回本类的对象StringBuffer,无论append追加的数据是什么类型,最终都会变成字符串。
70、
System类的【】静态方法可以启动垃圾回收器。
答案:
gc()
;
解析:System类的gc()方法可以启动垃圾回收器。
71、
阅读下列代码
public class Example {
public static void main(String[] args) {
int[] srcArray = { 11, 12, 13, 14 };
int[] destArray = { 21, 22, 23, 24 };
System.arraycopy(srcArray, 1, destArray, 2, 2);
for (int i = 0; i < destArray.length; i++) {
System.out.print(destArray[i] + " ");
}
}
}
下列选项中,程序的运行结果是( )
A、 21 22 12 13
B、 21 22 11 12
C、 21 11 12 24
D、 发生数组角标越界异常
答案: A
解析:上述程序中,arraycopy()方法从指定源数组srcArray角标为1处开始,复制2个长度的数组,复制的数组替换掉目标数组destArray从角标2开始的2个长度的子数组。也就是说,将srcArray中 的12, 13两个元素替换掉了destArray中的23, 24两个元素,最后得到的是{ 21, 22, 12, 13 }这样的数组。
72、
StringBuffer类的append()方法的返回值类型是()
A、 String
B、 void
C、 StringBuffer
D、 StringBuilder
答案: C
解析:StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象返回值类型还是StringBuffer类型。
73、
假如indexOf()方法未能找到所指定的子字符串,那么其返回值为( )
A、 false
B、 0
C、 -1
D、 以上答案都不对
答案: C
解析:indexOf()方法找不到指定的子字符串时,返回值为-1。
74、
编写一个mathDemo类,定义变量double d1 = 15.6432241;和double d2 = 7.543453459;,使用java.lang.Math中的方法, 比较两个变量中较大的数,并将较大数的值舍入为整数。
答案:
package cn.itcast;
class mathDemo {
public static void main(String[] args) {
double d1 = 15.6432241;
double d2 = 7.543453459;
double max = Math.max(d1"," d2);
System.out.println(Math.round(max));
}
}
运行结果:16
解析:使用Math.max()方法比较d1,和d2的值,d1>d2,然后调用Math.round()方法将d1的值四舍五入,所以结果为16。
75、
Math类中,用于获取一个数的绝对值的方法是【】。
答案:
Math.abs();
;
解析:Math.abs()方法用于获取一个数的绝对值。
76、
下列选项中,属于StringBuffer类特点的是()
A、 字符串缓冲区,提高字符串的操作效率
B、 StringBuffer类是线程安全的
C、 StringBuffer类的toString()方法,将缓冲区变成字符串
D、 StringBuffer是不可变的对象
答案: ABC
解析:StringBuffer类的特点。
77、
System类的getProperties()方法的作用是()
A、 获取当前的操作系统的属性
B、 获取当前JVM的属性
C、 获取指定键指示的操作系统属性
D、 获取指定键指示的JVM的属性
答案: A
解析:System类的getProperties()方法的作用是确定当前系统的属性。
78、
Runtime r = Runtime.getRuntime();r.exec("【】");在横线处填写一个命令,使运行程序的时候会打开一个记事本。
答案:
Notepad.exe
;
解析:在exec()方法中传入一个dos命令,程序就会执行这个dos命令。
79、
Math.round(double d)方法的作用是,将一个数四舍五入,并返回一个double数。
答案: 错误
解析:Math.round(double d)方法,返回的是一个long类型的整数。
80、建立一个Test类,通过使用System类中的一个方法,实现将int[] arr1 = {11,22,33,44,55}中的所有元素拷贝到目标数组int[] arr2 = new int[8]中。
答案:
class Test {
public static void main(String[] args) {
int[] arr1 = {11","22","33","44","55};
int[] arr2 = new int[8];
System.arraycopy(arr1","0","arr2","0","arr1.length);
for (int i = 0;i < arr2.length ;i++ ) {
System.out.print(arr2[i] + " ");
}
}
}
运行结果:11 22 33 44 55 0 0 0
解析:System类的arraycopy(Object src,int srcPos, Object dest, int destPos,int length) 方法是从指定源数组中复制一个数组,所以我们使用arraycopy()方法来完成这个题,我们看到数组arr1的所有元素都拷贝到了数组arr2中,arr2的长度是8,但arr1的长度是5,所以当我们遍历说组arr2时,最后三位没有值的位置用0补充。注意arraycopy()方法的copy首字母小写。
81、
已知 String 对象 s="abcdefg",则 s.substring(2, 5)的返回值为( )
A、 "bcde"
B、 "cde"
C、 "cdef"
D、 "def"
答案: B
解析:字符串索引从0开始,substring()方法截取的字符串是包左不包右的。
82、
在Java中可以通过哪些方式对String进行初始化?
答案:
在操作String类之前","首先需要对String类进行初始化","在Java中可以通过以下两种方式对String类进行初始化:
1、使用字符串常量直接初始化一个String对象。
2、使用String的构造方法初始化字符串对象。
解析:在Java中可以通过以下两种方式对String类进行初始化:
1、使用字符串常量直接初始化一个String对象。
2、使用String的构造方法初始化字符串对象。
83、
StringBuffer类的默认容量是【】个字符。
答案:
16
;
解析:默认16个字符。
84、
Runtime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。
答案: 正确
解析:Runtime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。
每个java应用程序都有一个Runtime实例 ,当java应用程序运行时,都会封装成一个单独的运行时对象。
85、
StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
答案: 正确
解析:StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
86、
下列选项中,对Math.random()方法描述正确的是( )
A、 返回一个不确定的整数
B、 返回0或是1
C、 返回一个随机的double类型数,该数大于等于0.0小于1.0
D、 返回一个随机的int类型数,该数大于等于0.0小于1.0
答案: C
解析:返回一个随机的double类型数,该数大于等于0.0小于1.0。
87、
String类的equals()方法和“= =”的作用是一样的。
答案: 错误
解析:String类的equals()方法比较的是两个字符串、“==”比较的是两个对象的地址值。
88、
下列关于StringBuffer类的描述中,正确的是( )
A、 append()方法可以接受任意类型的数据
B、 insert()方法可以接受任意类型的数据
C、 append()方法返回的是一个新的StringBuffer对象
D、 insert()方法返回的是一个新的StringBuffer对象
答案: AB
解析:StringBuffer的apped()方法和insert()方法返回的都是原来的StringBuffer对象,并且他们都可以接受任意类型的数据。
89、
下列选项中,属于单例设计模式的类是( )
A、 Math
B、 Calendar
C、 Runtime
D、 System
答案: C
解析:Runtime类是单例设计模式的类。
90、
编写一个StringBufferDemo类,在主方法中,创建两个int值,和一个double值,建立一个StringBuffer对象,将上面三个值追加到缓冲区,并将缓冲区变成字符串,输出结果。
答案:
class StringBufferDemo{
public static void main(String[] args){
int a = 2 ;
int b = 3;
double d = 4.5;
StringBuffer buffer = new StringBuffer();
buffer.append(a).append(b).append(d);
StringBuffer buffer = new StringBuffer();
StringBuffer s = buffer.append(a).append(b).append(d);
System.out.println(s);
}
}
输出结果:234.5
解析:从运行结果可以看出,append()方法将数据添加到缓冲区的末尾,并返回本类的对象StringBuffer,无论append追加的数据是什么类型,最终都会变成字符串。
91、
下面哪个方法可以实现获取字符在某个字符串中第一次出现的索引()
A、 charcharAt(intindex)
B、 intindexOf(intch)
C、 intlastIndexOf(intch)
D、 booleanendsWith(Stringsuffix)
答案: B
解析:A答案返回字符串中index位置上的字符
C答案返回指定字符在此字符串中最后一次出现处的索引
D答案判断此字符串是否以指定的字符串结尾
92、
请编写一个StringDemo类,在主方法中实例化String类,初始化值为”itcast”,输出String初始化值。
答案:
class StringDemo {
public static void main(String[] args) {
String str = "itcast";
System.out.println(str);
}
}
解析:对字符串类进行初始化的操作有很多种,任选一种即可。最后用输出语句输出结果即可。
93、
下列关于String类和StringBuffer类的说法中,正确的是( )
A、 String类表示的字符串是常量,一旦创建后,内容和长度都是无法改变的。而StringBuffer表示字符容器,其内容和长度都可以随时修改
B、 String类覆盖了Object类的equals()方法,而StringBuffer类没有覆盖Object类的equals()方法
C、 String类对象可以用操作符“+”进行连接,而StringBuffer类对象之间不能
D、 String类覆盖了Object类的toString()方法,而StringBuffer类没有覆盖Object类的toString()方法
答案: ABC
解析:String和StringBuffer本身就是一个字符串都不需要覆盖toString()方法。
94、
System类中提供的属性和方法都是静态的。
答案: 正确
解析:System类中提供的属性和方法都是静态的。
95、
使用字符串常量可以直接初始化一个String对象。
答案: 正确
解析:使用字符串常量直接初始化一个String对象,具体代码如下:
String str1 = "abc";
96、Runtime类是用单例设计模式设计的,不能直接创建对象,可以通过Rutime类中的一个静态方法getRuntime()方法获取实例。
答案: 正确
解析:Runtime类是用单例设计模式设计的。
97、
字符串一旦初始化就不可以被改变。
答案: 正确
解析:字符串一旦初始化就不可以被改变。
98、
下列关于System类的描述中,错误的是( )
A、 System类是final关键字修饰的类,它不能被其他类所继承
B、 System类不能被实例化
C、 System类中定义了许多方法,但是没有定义字段
D、 System类中提供了获取当前系统属性的方法
答案: C
解析:System类中定义了三个字段,err、out和in,分别表示“标准”错误输出流、“标准”输入流和“标准”输出流。
99、
下面关于 Math.random()方法生成的随机数,正确的是哪项( )
A、 0.8652963898062596
B、 -0.2
C、 3.0
D、 1.2
答案: A
解析:double random()方法返回带正号的 double 值,该值大于等于 0.0 且小于 1.0, 此值是一个伪随机选择的数。
100、
StringBuffer类和String类一样,都是不可变对象。
答案: 错误
解析:字符串是常量,因此一旦创建,其内容和长度是不可改变的,StringBuffer类长度是可以改变的。StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
101、
编写一个Test类,获取Runtime实例,使用exec()方法执行一个dos命令,用于打开一个windows自带的记事本程序。
答案:
public class Test {
public static void main(String[] args) throws IOException {
Runtime r = Runtime.getRuntime();
r.exec("notepad");
}
}
解析:通过获取到的Runtime实例,利用exec()方法,在方法中传入notepad命令,打开记事本程序。
102、
阅读下面的程序,选择正确的答案?()
class StringDemo{
public static void main(String[] args){
String s1 = "a";
String s2 = "b";
show(s1,s2);
System.out.println(s1+s2);
}
public static void show(String s1,String s2){
s1 = s1 +"q";
s2 = s2 + s1;
}
}
A、 ab
B、 aqb
C、 aqbaq
D、 aqaqb
答案: A
解析:字符串不变性。
103、
在程序,获取字符串长度的方法是【】。
答案:
length()
;
解析:在程序,获取字符串长度的方法是:length()方法。
104、
使用String类的toCharArray()方法可以将一个字符串转为一个字符数组。
答案: 正确
解析:使用String类的toCharArray()方法可以将一个字符串转为一个字符数组。
105、
针对字符串的操作,Java提供了两个字符串类,分别是String和【】。
答案:
StringBuffer
;
106、
System.getProperties()方法可以获取操作系统的属性。
答案: 正确
解析:System类的getProperties()方法用于获取系统属性。
107、
下面哪些方法是字符串中的判断方法()
A、 booleancontains(CharSequencecs)
B、 StringtoLowerCase()
C、 booleanequals(ObjectanObject)
D、 booleanisEmpty()
答案: ACD
解析:B答案使用默认语言环境的规则将String中的所有字符都转换为小写。