数据结构专项-字符串

(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构造哈夫曼树

知识点:字符串

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。

相关推荐
David猪大卫6 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
vvilkim7 小时前
数据结构类型、区别与应用场景:一篇讲透选型逻辑
数据结构
阿卡好可爱12 小时前
Lua 热更新不生效:改完文件线上仍是旧逻辑,package.loaded 与 upvalue 重绑定详解
数据结构·分布式·后端·架构·lua
心仪久了会沦陷1 天前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
码少女1 天前
数据结构——图的基础
数据结构
Severus_black1 天前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list
二本咕咕-机械转码1 天前
FreeRTOS深入解析(八)IPC机制之FromISR详解
数据结构·单片机·链表
1-1=02 天前
C# 数据结构和特殊类型
数据结构·c#·.net·.netcore
希和20272 天前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法
布莱克6052 天前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map