字符串常量

更新时间:2022-08-25 11:02

定义:用双引号(“”)括起来的0个或者多个字符组成的序列

含义

常量的本质

不占据任何存储空间属于指令的一部分,编译后不再更改。

字符串常量是一对双引号括起来的字符序列。

例如下面的是合法的字符串常量:

存储字节

可以输出字符串,例如:

字符串

字符串是由零个或多个字符组成的有限序列。一般记为 s =“a1 a2…an”( n > =0) 。它是编程语言中表示文本的数据类型,代表具有一定意义的信息,现实世界的大部分信息都以字符串的形式表示。对于一种编程语言来说,字符串处理是许多需要进行的重要任务之一,如用户程序输入信息、程序向用户显示信息等。所以几乎每一种编程语言都要有专门针对字符串的表示和操作。

与字符常量的比较

C语言允许使用字符串常量外,还允许使用字符常量。

与字符数组的关系

在C语言中没有专门的字符串变量,如果想将一个字符串存放在变量中以便保存,必须使用字符数组

与指针的关系

字符串常量 String 类 字符串常量的创建

Java 语言是纯粹的面向对象的语言,所以它的字符串是用对象表示的,Java 语言的字符串分为字符串常量( 用 String 类的对象表示) 和字符串变量( 用 StringBuffer 类的对象表示) ,它们都位于java. lang 包中,他们除了能够表示字符串外,还定义了很多专门进行字符串的处理方法。

和创建其它的任一种对象的方式相同,创建String 对象也需要调用它的构造方法来完成,如:String s = new String( “abc”) ; 也可用另一种直接赋值 的 方 式 来 创 建 String 对 象,如: String s =“abc”;虽然通过以上两种方式都可以创建 String 对象,但是二者在创建对象时采用的内存分配方式是不同的。如果是按照以下调用构造方法的形式来 创 建 String 对 象: String s1 = new String( “abc”) ; String s2 = new String( “abc”)。s1 和 s2 分别占有独立的内存空间,利用“= = ”相比较的话,则 s1 = =s2 的结果为 false。但是由于在程序中经常出现大量 String 对象的值相同的情况,造成内存空间的冗余。为了有效地利用内存,Java 中预留了一块特殊的内存区域,称为 String 常量池。当编译器遇到一个 String 常量时,先检查常量池中是否存在值相同的 String 常量,如果存在,则把该常量的引用指向常量池中的 String 常量。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}