考点介绍:
String作为一个特殊类,正常情况下,是遵循对象的值和引用的使用。但是有时候==也能代表相等,与常量区的插入有关。有一定的考察频度。
本期分享的java语言考点之关键字string,分为试题、文章以及视频三部分。
答案详情解析和文章内容可点击下方链接查看!
一、考点题目
1.String, StringBuffer和StringBuilder区别
解答:String和StringBuffer主要区别是性能:String是不可变对象,每次对String类型进行操作都等同于产生了一个新的String对象,然后指向新的……
2.StringBuffer是怎么扩容的?
解答:首先我们需要知道StringBuffer和StringBuilder类都继承了抽象类AbstractStringBuilder类;源码都调用父类来进行初始化:StringBuffer(String s)的初始化:扩容算法:使用append()方法在字符串后面追加值的时候,如果长度超过了该字符串存储空间大小了就需要进行扩容:构建新的并且存储空间更大的字符串,将旧的复制过去……
3.简单说明String类为什么是final的
解答:声明为final类的目的,主要目的就是保证String是不可变(immutable)。不可变就是第二次给一个String 变量赋值的时候,不是在原内存地址上修改数据,而是重新指向一个新对象,新地址。下面看String类源码如何保证是不可变的……
4.关于String,StringBuilder以及StringBuffer,描述错误的是()
A.对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象
B.StringBuffer是线程安全
C.StringBuilder是线程安全
D.可以修改StringBuilder和StringBuffer的内容
正确答案:C A,java中的字符串存储在字符串常量区,不会改变,发生改变是会新创建一个对象 B,StringBuffer是线程安全的StringBuilder……
5.java的基本类型有哪几个?String是不是java的基本类型?
解答:一共有八种基本类型。1.六种数字类型:整型(四个)和浮点型(两个),字节型:byte---------8位,短整型:short--------16位,整型:int---------------32位,长整型:long----------64位,单精度:float:-------32位……
二、考点文章
1.java String类(超详细!)
一、前言1、String表示字符串类型,属于引用数据类型,不属于基本数据类型。2、在java中随便使用双引号括起来 的都是String对象。例如:“abc”,“def ” ......
2.java的String类
字符串是常量,创建之后不可改变。字符串字面值存储在字符串池中,可以共享。String s = "hello"; 产生一个对象……
3.【校招VIP】String用法详解
string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下的需要。我们尽可以把它看成是C++的基本数据类型……
三、考点视频
1.String、StringBuilder的区别
本题是面试常考题之一,但是很多同学没有真实理解或使用过相应的类,只靠记忆。在面试的时候,容易被问住。三个对象底层都是……
2.java语言之String equals的坑
string作为一个特殊类,正常情况下,是遵循对象的值和引用的使用。但是有……