当前位置:网站首页 > R语言数据分析 > 正文

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



 

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)

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

到此这篇ifstream读取字符串转换成数字(ifstream读取所有内容)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • ubuntu安装smplayer(Ubuntu安装VMware tools)2025-01-04 14:09:07
  • dcell怎么读(dcrayon怎么读)2025-01-04 14:09:07
  • yml文件配置(yml文件配置redis)2025-01-04 14:09:07
  • spring教程(spring教程 w3cschool)2025-01-04 14:09:07
  • treeplan下载(tree安卓版下载)2025-01-04 14:09:07
  • airplay安卓(airplay安卓版怎么用)2025-01-04 14:09:07
  • httt(htttp://jndj.ostα.org.cn成绩查询)2025-01-04 14:09:07
  • oven是什么意思(microwave oven是什么意思)2025-01-04 14:09:07
  • score是什么意思(z-score是什么意思)2025-01-04 14:09:07
  • sweater(sweater指什么衣服)2025-01-04 14:09:07
  • 全屏图片