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

北京seo网站深圳网站建设51duoshi

北京seo网站,深圳网站建设51duoshi,网站设计所需软件,丽水北京网站建设文章目录 一、String 类概述二、String 创建对象的方式2.1 创建对象的两种方式2.2 面试:两种方式的区别 ★2.3 常见面试题 ★ 三、String 类常用方法3.1 字符串内容比较3.2 常用 API:遍历、截取、替换、分割 四、StringBuilder 字符串操作类4.1 构造器4.…

文章目录

  • 一、String 类概述
  • 二、String 创建对象的方式
    • 2.1 创建对象的两种方式
    • 2.2 面试:两种方式的区别
    • 2.3 常见面试题
  • 三、String 类常用方法
    • 3.1 字符串内容比较
    • 3.2 常用 API:遍历、截取、替换、分割
  • 四、StringBuilder 字符串操作类
    • 4.1 构造器
    • 4.2 常用方法
    • 4.3 String 拼接字符串原理
    • 4.4 StringBuilder 提高效率原理图


一、String 类概述

java.lang.String 类代表字符串,它定义的变量可以指向一个字符串对象。同时 String 类提供了很多操作字符串的功能,可以直接使用。

String 是不可变字符串:String 变量每次的修改其实都是产生并指向了新的字符串对象,而原来的字符串对象都是没有改变的,所以称不可变字符串。

  如下方程序,首先在字符串常量池中,创建 “传智” 对象,并指向该对象。当执行 name+=“教育” 时,首先在常量池中创建 “教育” 对象,并将 “传智” 与 “教育” 两个对象拼接生成 “传智教育” 对象,并指向该对象。以此类推…

在这里插入图片描述
每当用 + 符号,拼接生成新的字符串时,原来的字符串都没有改变,因此 String 是不可变字符串。


二、String 创建对象的方式

2.1 创建对象的两种方式

  • 方式一:直接使用 " " 定义(推荐方式)
    String name = “黑马”;

  • 方式二:通过 String 类的构造器创建对象
    在这里插入图片描述


2.2 面试:两种方式的区别

  • 双引号 " " 给出的字符串对象,存在于堆内存中的常量池中,相同内容只会存储一份
    在这里插入图片描述
  • new 字符串对象,每new一次都会在堆内存中产生一个字符串对象
    在这里插入图片描述

2.3 常见面试题

  1. 下列代码的运行结果是?

    String s2 = new String(“abc”);:先去常量池中创建对象,然后再通过 new 创建对象。
    String s1 = “abc”;:由于常量池中有对象,所以不需创建对象。
    在这里插入图片描述
    扩展: 若先执行 String s1 = “abc”;,再执行 String s2 = new String(“abc”); ,则 s1 与 s2 分别创建一个对象。


  1. 下列代码的运行结果是?

    s3 不在常量池中,即不是双引号直接给出的,不会放在常量池中。
    在这里插入图片描述
    扩展: 程序总共创建五个对象,其中常量池中分别有:“abc”、“ab”、“c”,不在常量池中String类型变量 “abc” 以及 StringBuilder 类型变量 “abc”。(具体看后文)


  1. 下列代码的运行结果是?
    java 存在编译优化机制,程序在编译时,自动将 “a”+“b”+“c” 直接转换成 “abc”。
    在这里插入图片描述

三、String 类常用方法

3.1 字符串内容比较

== 判断字符串对象是判断地址的,这样会引起很多业务问题。推荐使用 equals 方法比较:

在这里插入图片描述

:基本数据类型用 == 比较。


3.2 常用 API:遍历、截取、替换、分割

在这里插入图片描述
举例:

String str = "abcdefg";
String s1 = "cde";
String s2 = "ggg";
String replaceStr = str.replace(s1, s2);
System.out.println(replaceStr); // abgggfg

四、StringBuilder 字符串操作类

StringBuilder 是一个可变的字符串的操作类,我们可以把它看成是一个对象容器。

作用:提高字符串的操作效率,如拼接、修改等

4.1 构造器

在这里插入图片描述


4.2 常用方法

在这里插入图片描述


4.3 String 拼接字符串原理

  String 拼接字符串底层使用的是 StringBuilder。在拼接前,首先会在堆内存中创建 StringBuilder 对象,然后调用 toString 方法将 StringBuilder 转换为 String,并赋值给 String 类变量。
在这里插入图片描述


4.4 StringBuilder 提高效率原理图

对比 String ,StringBuilder 在拼接字符串时,其不会去创建额外对象,而是在原来的地址中进行动态添加。
在这里插入图片描述
结论:当需要进行字符串操作的时候,应该选择 StringBuilder 来完成,性能更好。

注意:StringBuilder 只是拼接字符串的手段,最终的目的还是要恢复成 String 类型

StringBuilder stb = new StringBuilder();
String str = stb.toString();

文章参考:Java入门基础视频教程,java零基础自学就选黑马程序员Java入门教程(含Java项目和Java真题)

http://www.15wanjia.com/news/177660.html

相关文章:

  • 洛阳网站推广公司电话网站建设月流量
  • 网站首页改版需求重庆企业seo
  • 网站右侧浮动广告平台推广费用一般是多少
  • 成都工业学院文献检索在哪个网站做国内高端品牌网站建设
  • 山西省建设厅入晋备案网站网站开发学多久
  • 济宁做网站大约多少钱怎么在虚拟主机安装wordpress
  • 青岛模板建站多少钱装修设计收费标准2022
  • 营口网站seo校园网站建设服务
  • 二级网站建设标准平台型网站
  • 小企业网站如何建设好网站架构设计师主要做什么
  • 青岛做企业网站的公司建筑工程168网
  • 大气婚纱影楼网站织梦模板本地的沈阳网站建设
  • 网站建设万网海南做房地产网站的网络公司
  • 做公司网站公司多少钱做同款的网站
  • 东莞市建设工程网站站外做deal的网站
  • 网站开发信息文档株洲网络
  • 看电视剧的免费网站南阳最新通知今天
  • 大连建网站网站头部样式
  • wordpress精选主题站长工具seo综合查询推广
  • 龙禧网站建设做海报用的图片网站
  • wordpress改大seo软件视频教程
  • 一份电子商务网站建设规划书满洲里网站制作
  • 怎么查看网站的pv uv湖南网站备案要多少天
  • 百度网站统计添加网址广东前20大互联网公司
  • 河南省住房和建设厅安监站网站制作网站一般是多大
  • 做同城信息类网站如何赚钱合肥标志设计公司
  • 怎么修改公司网站内容网站建设 个人服务器
  • 简单网站建设价格深圳网站建设公司招聘
  • 网站建设技术员保密协议wordpress post list
  • 虚拟主机空间发布网站wordpress打通公众号