数据结构专项-字符串

avatar
作者
筋斗云
阅读量:2

(1)选择题

单选题

自如真题

1.

2022 自如 Java

定义如下程序:

public class Student{

   public String name;

   public Student(String name){

       this.name = name;

   }

}

public class Test implements Cloneable{

      public Student st;

        public static void main(String[] args){

             Student  s1 = new Student(“Tom”);

                Test t1 = new Test();

                t1.st = s1;

                Test t2 = (Test) t1.clone();

        }

}

以下表达式中值为true的是?

A

t1 == t2

B

t1.equals(t2)

C

t1.st != t2.st

D

t1.st.equals(t2.st)

正确答案:D

官方解析:

深拷贝和浅拷贝:浅拷贝实际上是复制了被拷贝对象的引用,也就是说浅拷贝的和被拷贝对象指向的是同一块内存空间,而深拷贝则是连同引用的对象也被拷贝,两者指向的是不同的内存空间。必须是Test类中的Student属性是相等的,故选D。

知识点:字符串

单选题

自如真题

2.2022 自如 Java

下面哪个流类属于面向字符的输入流

A

BufferedWriter

B

FileInputStream

C

ObjectInputStream

D

InputStreamReader

正确答案:D

你的答案:A

官方解析:Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式。 面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和OutputStream的子类。 面向字符的操作为以字符为单位对数据进行操作,在读的时候将二进制数据转为字符,在写的时候将字符转为二进制数据,这些类都是Reader和Writer的子类。

知识点:字符串

单选题哔哩哔哩真题

3.2021 哔哩哔哩 Java

用正则表达式a+?b来尝试匹配aaabbb可以匹配到的结果是

A

aaabbb

B

ab

C

aaab

D

b

正确答案:C

你的答案:B

官方解析:

+表示匹配多个字符,?表示匹配一个或者0个字符,故这里可以把3个a匹配完,然后匹配一个b,选C。

知识点:字符串

单选题

奇安信真题

4.2021 奇安信 Java

中缀表达式5+4*(x+3)-6所对应的后缀表达式为

A

5 4 x 3 + * 6 + -

B

5 4 x 6 3 + * + -

C

5 4 x 3 6 + * + -

D

5 4 x 3 + * + 6 -

正确答案:D

官方解析:

中缀表达式中应该先计算x+3,因此后缀表达式中+应该出现在x和3的后面,排除BC。

然后计算乘法,故之后是*,再计算加法,因此+要在6的前面,不然就是计算4*(x+3)+6了,故选D。

单选题

自如真题

5.2022 自如 Java

用二进制来编码字符串“xyzwxyxx”,需要能够根据编码解码回原来的字符串,则我们最少需要多长的二进制字符串

A

12

B

14

C

15

D

18

正确答案:B

你的答案:D

官方解析:

xyzwxyxx:x:4位、y:2位、z:1位、w:1位

用4、2、1、1构造哈夫曼树

知识点:字符串

1.

2022 远景智能 Java

String str = new String(“abc”),“abc”在内存中是怎么分配的?

A

B

C

字符串常量区

D

寄存器

正确答案:AC

你的答案:BD

官方解析:首先将这行代码分成String str、=、"abc"和new String()四部分来看待。String str只是定义了一个名为str的String类型的变量,因此它并没有创建对象;=是对变量str进行初始化,将某个对象的引用(或者叫句柄)赋值给 它,显然也没有创建对象;现在只剩下new String(“abc”)了。我们是使用new调用了String类的上面那个构造器方法创建了一个对象,并将它的引用赋值给了str变量。但是发现该构造函数的参数是一个String类型的,我们要知道String本身就是一个对象。而该对象正是“abc”。
 

所以得出结论,这行代码一共创建了两个对象,一个是str引用所指向在堆内存中的对象,一个是“abc”,故选AC。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!