首页
学习
活动
专区
圈层
工具
发布

从认识String类,到走进String类的世界

作为一个常用的数据类型,跟随小编一同进入String的学习吧,领略String的一些用法。 一:认识String类 1.概念:String是编程语言中表示字符串的数据类型。...2 String s3 = new String("abc"); String s4 = new String("abc"); System.out.println(s3 == s4); /.../ 输出:false // 示例3 String s5 = new String("abc"); String s6 = "abc"; System.out.println(s5...示例4:s7首先通过new关键字在堆中创建了一个字符串对象,然后通过intern()方法将该字符串对象加入到常量池中,并返回常量池中该字符串的引用。...4.常用方法: append():追加字符串到当前StringBuilder对象的末尾。 insert():在指定位置插入字符串。 delete():删除指定范围内的字符。

82300
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【C++指南】string(一):string从入门到掌握

    引言 字符串处理无疑是一项极为基础且频繁的操作,从简单的文本输入输出,到复杂的文本分析与处理,字符串贯穿于程序的各个角落。...本文将深入探讨 C++ 中string的奥秘,从其产生的根源basic_string模板类开始,逐步介绍std::string、wstring、u16string和u32string等相关类型,揭示它们之间的关系...的: string 家族成员:std::string、wstring、u16string 和 u32string std::string、wstring、u16string 和 u32string都是基于...函数删除字符串末尾的一个字符 append函数用于在字符串末尾追加字符或字符串,与operator+=功能类似 一般我们用的最多的还是 operator+=,相当于尾插,而insert和erase非必要尽量不用,因为前插涉及到挪动数据...从basic_string模板类的基础,到std::string、wstring、u16string和u32string等具体类型的应用,以及它们与std库的紧密联系,再到basic_string丰富的函数功能

    73821

    从String的intern()到常量池

    但是String有些特殊,通过new String(string)生成的两个同值的字符串地址就不相等,用其他方式来生成的两个同值字符串地址就相等。...String str3 = new String("xyz"); String str4 = new String("xyz"); System.out.println(str1 ==..."这个字面量放到了常量池中,然后str1和str2都指向常量池中的"abc",所以两个变量地址相同;第二种方式创建的字符串,是先在常量池中放入"xyz",然后通过构造函数将常量池中的"xyz"拷贝一份到堆中生成新的...如图: 图中的就是new String(String)这个方法在常量池中的名称和描述符,即符号引用。 运行时常量池 我们平时说的常量池指的就是运行时常量池。...当str4使用字面量赋值创建时,查询到字符串池中有gh的引用,str4就指向了str3的gh引用。intern()从字符串池中获取的是堆中str3的gh引用。

    43220

    从陌生到熟练使用string类

    个人主页: :✨✨✨初阶牛✨✨✨ 推荐专栏1: C语言初阶 推荐专栏2: C语言进阶 个人信条: 知行合一 本篇简介:>:讲解C++中有关string类的使用,从构造函数到容量操作,到遍历以及增删查改和最后的运算符重载...构造函数使用演示: void test1() { //无参构造 string(); string s1; cout << "s1= " << s1 << endl; //拷贝构造, string...;//下面讲,这里是为了s1里面有数据,方便拷贝构造 string s2(s1); cout << "s2= " << s2 << endl; //用另一个string类的字串初始化 string...string s1; string s2("hello"); //size和length并没有什么区别....string类的使用还是需要多多练习,可以试着写一下相关的oj题练一下手,后续会模拟实现string类,加深对string类的理解. string相关习题1 今天就讲到这里了,我们下次模拟实现见.

    38110

    掌握string类:从基础到实战

    如果pos位置后面的字符个数没有len个,那就pos位置后面有多少个字符就复制多少个字符,也就是直接拷贝到末尾!!!...当这个值用作 string 成员函数中 len (或 sublen) 参数的值时,意味着 “直到字符串的末尾”, 也就是说当我们不给len 传参数时,缺省参数就是npos,那就直接拷贝到末尾。...所以上图中的代码,我们也可以这样写: 官方解释: 2.3 string 类的析构 析构这一块的内容不是很重要(仅仅是使用时不关注),到后面需要我们自己写相关的代码时就会很重要。...<< endl; } 通过push_back 成员函数就可以将字符插入到字符串的末尾。...常用场景的一些实用接口和技巧 -除了前面讲的一些以外,其实我们的string还有很多比较实用的接口,这里就再给大家分享一部分,如果有没分享到但是大家需要使用的话可以自己查阅参考文档去了解一下用法。

    18110

    C++从入门到精通——string类

    string类 前言 一、为什么学习string类 C语言中的字符串 示例 二、标准库中的string类 string类 string类的常用接口说明 string类对象的常见构造 string类对象的容量操作...另外,不同的编译器还可能配置不同的编译选项和版本,这些也可能影响到 std::string 的实现和大小。 因此,如果在不同的编译器下运行相同的代码,可能会得到不同的结果。...addstrings(string num1, string num2) { // 从后往前相加,相加的结果到字符串可以使用insert头插 // 或者+=尾插以后再reverse过来...深拷贝 如果一个类中涉及到资源的管理,其拷贝构造函数、赋值运算符重载以及析构函数必须要显式给出。一般情况都是按照深拷贝方式提供。...,将之前的元素复制到新的内存空间中。

    85310

    Java IO:从基础到高级操作全览

    ④ 从缓冲区中取 4 个字节到输出缓冲中,此时 position 设为 4。 ⑤ 最后需要调用 clear() 方法来清空缓冲区,此时 position 和 limit 都被设置为最初位置。...ByteBuffer buffer = ByteBuffer.allocateDirect(1024); while (true) { /* 从输入通道中读取数据到缓冲区中...通过配置监听的通道 Channel 为非阻塞,那么当 Channel 上的 IO 事件还未到达时,就不会进入阻塞状态一直等待,而是继续轮询其它 Channel,找到 IO 事件已经到达的 Channel...将通道注册到选择器上 ServerSocketChannel ssChannel = ServerSocketChannel.open(); ssChannel.configureBlocking(false...在将通道注册到选择器上时,还需要指定要注册的具体事件,主要有以下几类: SelectionKey.OP_CONNECT SelectionKey.OP_ACCEPT SelectionKey.OP_READ

    28610

    从基础到本质:文件 IO 操作全解析

    本文将从 “文件的本质理解” 出发,系统梳理文件操作的核心接口与使用场景,带你从 “会用” 到 “理解”,真正掌握基础 IO 的底层逻辑。...结束语 文件 IO 是 C 语言中最贴近系统底层的操作之一,它不仅是数据处理的工具,更藏着程序与操作系统交互的底层逻辑。...从理解 “文件是数据流的载体”,到熟练运用fopen的不同模式,再到区分标准流的特殊作用,每一步都是对 “程序如何与外部世界对话” 的深入思考。...掌握这些基础后,你会发现:无论是后续学习高级语言的 IO 机制,还是理解操作系统的文件管理,这段知识都会成为重要的基石。...希望本文能帮你打通从 “API 调用” 到 “本质理解” 的任督二脉,在实际开发中更从容地处理文件操作,让每一次读写都清晰可控。

    16910
    领券