当前位置: 首页 > wzjs >正文

洛阳网站建设网站建设中国大数据平台官网

洛阳网站建设网站建设,中国大数据平台官网,成都网站制作成都,安徽网站开发费用Java 字符串 字符串(String)属于引用数据类型,在 Java 程序中广泛使用。我们在第一个 Java 程序里就接触过字符串,如打印语句 System.out.println("Hello World"); 中的 "Hello World" 就是一个字符串。本小…

Java 字符串

字符串(String)属于引用数据类型,在 Java 程序中广泛使用。我们在第一个 Java 程序里就接触过字符串,如打印语句 System.out.println("Hello World"); 中的 "Hello World" 就是一个字符串。本小节将介绍字符串的基础知识,包括创建字符串(含 Java 13 支持的多行字符串创建方法及注意事项)、字符串的连接操作,还会着重讨论字符串的不可变性。需要注意的是,Stringjava.lang 包中的内置类,其相关操作涉及面向对象知识,本小节暂不讨论,后续会专门讲解。

1. 什么是字符串

字符串(string)是由零个或多个字符组成的有限序列,是编程语言中表示文本的数据类型,简单来说就是一串字符。

2. 创建字符串

2.1 创建字符和字符串

提到字符串,容易联想到字符。回忆已学的字符类型 char,创建字符示例如下:

// 依次创建三个字符 C S D N
char c1 = 'C';
char c2 = 'S';
char c3 = 'D';
char c4 = 'N';

char 类型不同,String 类型使用双引号表示字符串(如 "字符串文字")。以下是创建字符串的示例:

public class StringTest1 {public static void main(String[] args) {// 创建一个空字符串String str1 = "";// 创建一个只包含一个字符的字符串String str2 = "q";// 创建包含多个字符的字符串String str3 = "CSDN is great!";// 依次打印它们System.out.println(str1);System.out.println(str2);System.out.println(str3);}
}

运行结果:

q
CSDN is great!

字符串可以声明为空,所以第一行打印空行。

2.2 创建多行字符串

自 Java 13 以后,可使用三引号表示多行字符串,官方称为“文本块”,常用于表示多行或大段文字。示例如下:

public class StringTest3 {public static void main(String[] args) {String str = """Java 很棒!很棒!!能够在 CSDN 学 Java 更棒!!!""";System.out.println(str);}
}

注意事项:文本块中起始的三引号后面要另起一行,以下写法错误:

String str = """Java 很棒!
很棒!!
能够在 CSDNJava 更棒!!!""";

若直接使用 javac 命令编译代码会报错:

javac StringTest3.java
StringTest3.java:4: 错误: 文本块 是预览功能,默认情况下禁用。String str = """^(请使用 --enable-preview 以启用 文本块)
1 个错误

可给编译器加参数编译执行代码:

$ javac -source 14 --enable-preview StringTest3.java
$ java --enable-preview StringTest3
Java 很棒!
很棒!!
能够在 CSDN 学 Java 更棒!!!

3. 字符串的连接

可使用加法运算符 + 将字符串和任意其他数据类型进行连接操作。

连接多个字符串
public class StringJoinTest1 {public static void main(String[] args) {// 定义两个字符串String str1 = "Hello";String str2 = "";// 将字符串str1连接一个空格,再连接str2,最后再连接一个感叹号String str3 = str1 + " " + str2 + "!";System.out.println(str3);}
}

运行结果:

Hello !
字符串与其他类型值连接
public class StringJoinTest2 {public static void main(String[] args) {// 定义整型变量 ageint age = 12;// 定义浮点型变量 heightfloat height = 132.5f;// 定义一个字符串变量 nameString name = "小明";// 将上面三个变量连接,拼成一个更长的字符串String result = name + "今年" + age + "岁了," + "他在 CSDN 学习,身高为" + height + "cm";System.out.println(result);}
}

运行结果:

小明今年12岁了,他在 CSDN 学习,身高为132.5cm
运算符优先级示例
public class StringJoinTest3 {public static void main(String[] args) {// 定义两个整型变量a、bint a = 100;int b = 200;// 打印一个空字符串+a+b的值System.out.println("" + a + b);}
}

运行结果:

100200

结果未打印 300 的原因是:按照从左到右的执行顺序,(空字符串 + 数值 100)的运算结果是字符串 100,再运算(字符串 100 + 数值 200),最终结果为字符串 100200。由于运算中有字符串存在,+ 运算符用于字符串连接而非数值计算。若将表达式操作数倒过来(即 b + a + ""),会先进行数值加法运算得到 300,再与空字符串连接,结果为字符串 "300"

4. 字符串的不可变性

字符串有一个重要特性:不可变性,即字符串一经创建便无法修改。示例如下:

public class StringTest4 {public static void main(String[] args) {// 创建一个字符串 strString str = "hello CSDN!";// 对 str 重新赋值str = "Java is great!";System.out.println(str);}
}

运行结果:

Java is great!

有人可能疑惑,说字符串一旦创建无法修改,为何 str 变量能被赋新值?实际上,变量 str 本身未修改,而是其“指向”被修改了。代码执行流程为:先创建 str 指向 "hello CSDN!",对 str 重新赋值时,在内存中先创建字符串 "Java is great",然后改变变量 str 的指向,原来的 "hello CSDN!" 并未改变。

5. 小结

通过本小节学习,我们了解到字符类型 char 是基本数据类型,字符串类型 String 是引用类型。创建字符串可使用双引号,Java 13 起支持多行字符串表示方法。字符串连接操作使用加法运算符实现。要特别注意字符串的不可变性,这在面试中常被考查。

http://www.dtcms.com/wzjs/306926.html

相关文章:

  • 天津企业网站建设哪家好搜索引擎优化心得体会
  • 网站代发怎么做东莞有限公司seo
  • 网页设计制作分段brseo优化排名价格
  • 河南做网站公司哪家好搜索引擎优化的定义是什么
  • 舟山的房子做民宿上什么网站seo顾问张智伟
  • 黑龙江大庆疫情最新情况长沙seo培训班
  • 各国网站建设排名百度云网页版登录入口
  • 电子商务网站建设课设学生体会关键词搜索量怎么查
  • 网站增加新闻功能怎么自己开发网站
  • b2c购物网站建设哪个平台推广效果好
  • 潮州网站seo百度网页推广费用
  • 企业自助网站建设影视网站怎么优化关键词排名
  • 外资做网站的公司百度竞价广告
  • 山东网站建设流程拓客软件哪个好用
  • 建设小说网站违法吗最新足球消息
  • 网站建设与优化标准百度一下你就知道下载安装
  • wordpress如何添加自定义元素关键词优化公司费用多少
  • 优秀vi设计案例分析pptseo技术306
  • wordpress the7 seoseo优化网站百度技术
  • 自己做网站要买服务器吗苏州关键词搜索排名
  • 委托做的网站版权归属深圳华强北最新消息
  • m开头的可以做网站的软件nba排名最新排名
  • 工作室 网站经营性备案精准信息300099
  • 做网站跟赚钱嘛seo简单优化
  • 网站分享设计网站seo资讯
  • 建设银行信用卡官方网站无货源电商怎么做
  • 网站使用说明书模板广东今日最新疫情通报
  • 物流好的网站模板整站优化 mail
  • 菜鸟网站编程山东最新消息今天
  • 阿里巴巴国际站买家版app营销官网