ifstream读取字符串转换成数字(ifstream读取所有内容)

ifstream读取字符串转换成数字(ifstream读取所有内容)String substring int beginIndex int endIndex 注意 包头不包尾 包左不包右 只有返回值才是截取的小串 string substring int beginIndex 截取到末尾 String replace 旧值 新值 替换 注意点 只有返回值才是替换之后的结果 5 1

大家好,我是讯享网,很高兴认识大家。




讯享网

 
  
讯享网

String substring(int beginIndex,int endIndex)
    注意:包头不包尾,包左不包右。
    只有返回值才是截取的小串
string substring(int beginIndex) 截取到末尾


 

讯享网

 

 
   
讯享网

5.1 StringBuilder概述

StringBuilder对象可以看作一个容器,创建之后里面的内容是可变的。

作用:提高字符串的操作效率

StringBulider构造方法
    方法名
    public StringBuilder()                创建一个空白可变字符串对象,不含有任何内容
    Public StringBuilder(String str)    根据字符串的内容,来创建可变字符串对象
StringBuilder常用方法
    方法名
    public StringBuilder append(任何类型) 添加数据,并返回对象本身
    public StringBuilder reverse()    反转容器中的内容
    public int length() 返回长度(字符出现的个数)
    public String toString() 通过toString()就可以实现把StringBuilder转换为String
    //注意
StringBulider是Java已经写好的类,Java在底层对他做了一些特殊处理
    打印对象不是地址值而是属性值。
    












 举例:

 

5.2 链式编程

链式编程:当我们在调用一个方法的时候,不需要用变量接收它的结果,可以继续调用其他方法。

举例:sb.append("aaa").append("bbb").append("ccc")

使用StringBuilder场景:

字符串的拼接

字符串的反转

5.3 对称字符串

讯享网

StringJoiner跟StringBuilder一样,也可以看作一个容器,创建之后里面的内容是可变的。

作用:提高字符串的操作效率,而且代码编写特别简洁,但目前很少人用。

JDK8出现的。

StringJoiner的构造方法
    方法名
    public StringJoiner(间隔符号)    创建一个StringJoiner对象,指定拼接时的间隔符号。
    public StringJoiner(间隔符号,开始符号,结束符号) 创建一个StringJoiner对象,指定拼接时的间隔符号、开始符号、结束符号
 StringJoiner的成员方法
    public StringJoiner add(添加的内容)     添加数据,并返回对象本身(数据只能是字符串)
    public int length()    返回长度(字符出现的个数)
    public String toString()    返回一个字符串(该字符串就是拼接之后的结果)






7.1 字符串存储的内存原理

直接赋值会复用字符串常量池中的

new出来不会复用,而是开辟一个新空间

7.2 ==号比较的是什么?

基本数据类型比较数据值

引用数据类型比较地址值

7.3 字符串拼接的底层原理

拼接的时候没有变量,都是字符串。触发字符串的优化机制,在编译的时候已经是最终结果。

字符串拼接的时候有变量参与,在内存中创建了很多对象,浪费空间,时间也非常慢

结论:如果很多字符串变量拼接,不要直接+,在底层会创建多个对象,浪费时间、性能。直接用StringBuilder

7.4 StringBuilder提高效率原理图

StringBuilder是一个内容可变的容器。

所有要拼接的内容都会往StringBuilder中放,不会创建很多无用的空间,节约内存。

7.5 StringBuilder源码分析

默认创建一个长度为16的字节数组(此时容量为16,长度为0(为实际添加))

添加的内容长度小于16,直接存

添加的内容长度大于16会扩容(原来的容量*2+2)

如果扩容之后还不够,以实际长度为准


小讯
上一篇 2025-06-10 13:33
下一篇 2025-05-10 14:15

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/147636.html