Java常用类(String类与StringBuffer类)(1)

面向对象模块和包 1.1 模块 参考链接: 【Python 面向对象】模块和包 来源:优快云 Python面向对象——模块和包 来源:优快云 概念: 每一个以py为拓展名的python源文件都是一个模块,模块类似于一个工具包,在模块中定义的全局变量、函数、类都是提供给外界的工具,若要使用该包中的工具,则先导入此模块 模块化: 模块化是指将一个完整的程序分解为一个一个模块,完整的程序由多个模块组成 模块化优点: 方便开发、维护 模块具有复用性 1.2 模块的使用 模块的导入: 方法一:一次性把模块中的所用变量 阅读详情

一、String类

1、String类的初始化

(1)使用字符串常量直接初始化一个String对象。其语法格式如下

String 变量名 = 字符串;//字符串可以为空

(2)使用String的构造方法初始化字符串对象,其语法格式如下

String 变量名 = new String(字符串);

2、String类的常见操作

(1)字符串的基本操作
public class demo01 {
    public static void main(String[] args) {
        String s ="acdabefgab";
        System.out.println("字符串的长度:"+s.length());
        System.out.println("字符串中第二个位置上的字符:"+s.charAt(1));
        System.out.println("字符a第一次出现的位置:"+s.indexOf('a'));
        System.out.println("字符a最后一次出现的位置:"+s.lastIndexOf('a'));
        System.out.println("子字符串ab第一次出现的位置:"+s.indexOf("ab"));
        System.out.println("子字符串ab最后一次出现的位置:"+s.lastIndexOf("ab"));
    }
}

结果:
在这里插入图片描述

(2)字符串的转换操作
public class Test1 {
    public static void main(String[] args) {
        String a = "IDEAJava";
        char[] s =a.toCharArray();  //字符串转换为字符数组
        //使用循环遍历字符数组
        for(int i = 0;i<s.length;i++){
            if(i!=s.length-1){
                System.out.print(s[i]+",");
            }else{
                System.out.println(s[i]);
            }
        }
        System.out.println("将int值转换为String类型之后的结果:" + String.valueOf(12));
        System.out.println("将字符串转换成大写后的结果:" + a.toUpperCase());
    }
}

结果:
在这里插入图片描述

(3)字符串的替换和去除空格操作
public class Test1 {
    public static void main(String[] args) {
        String s = "    http:// local host :8080     ";
        System.out.println("原字符串:"+s);
        System.out.println("去除字符串两端的空格:" + s.trim());
        System.out.println("去除字符串中所有空格" + s.replace(" ",""));
    }
}

在这里插入图片描述

二、StringBuffer类

1、简介

在Java中,由于String类是final类型的,所以使用String定义的字符串是一个常量,因此它一旦创建,其内容和长度是不可改变的。如果需要对一个字符串进行修改,则只能创建新的字符串。

为了便于对字符串进行修改,在JDK中提供一个StringBuffer类来操作字符串。

StringBuffer类的内容和长度都是可以改变的。

StringBuffer类似一个字符容器,当在其中添加或删除字符时,所操作的都是这个字符容器,因此并不会产生新的StringBuffer对象。

2、常用方法

public class Test1 {
    public static void main(String[] args) {
        System.out.println("=========添加=========");
        add();
        System.out.println("=========修改=========");
        update();
        System.out.println("=========删除=========");
        delete();

    }
    //添加
    public static void add(){
        StringBuffer stb = new StringBuffer("abc");  //定义一个字符串缓冲区
        stb.append("ABCD"); //添加字符串
        System.out.println("添加后的结果:"+stb);
        stb.insert(2,0);
        System.out.println("插入后的结果:"+stb);
    }
    //修改
    public static void update(){
        StringBuffer stb = new StringBuffer("abcdef");  //定义一个字符串缓冲区
        stb.setCharAt(2,'x');  //修改指定位置的字符
        System.out.println("修改指定位置后的结果:" + stb);
        stb.replace(0,2,"99");
        System.out.println("修改后的:" + stb);
    }
    //删除
    public static void delete(){
        StringBuffer stb = new StringBuffer("abcdefgh");  //定义一个字符串缓冲区
        stb.delete(1,4); //指定范围删除
        System.out.println(stb);
        stb.deleteCharAt(0); //指定位置删除
        System.out.println(stb);
        stb.delete(0,stb.length());//清楚缓冲区
    }
}

结果:
在这里插入图片描述

三、String类与StringBuffer类的区别

1、String类定义的字符串是常量,一旦创建后,内容和长度都是无法改变的。StringBuffer表示字符容器,其内容和长度都是可以随时修改。

2、String类重写了Object类的equals()方法,而StringBuffer类并没有

3、String类对象可以用操作符+进行连接,而StringBuffer对象之间不能。

Java中字符串String类,String类型的底层原理,什么是StringBuffer,StringBuffer类的原理 String、StringBuffer 阅读详情

相关推荐

LabVIEW实战:基于DAQmx的实时正弦波生成、采集与波形图动态显示

本文详细介绍了如何使用LabVIEW和DAQmx驱动实现实时正弦波的生成、采集与动态显示。通过USB-6008数据采集卡,结合队列缓冲机制和动态波形图显示技术,构建了一个完整的信号处理系统。文章包含硬件连接、软件配置、任务设置及常见问题排查,适合LabVIEW初学者和硬件控制开发者参考。

weixin_30872337的博客 124

delphi语言怎么判断包含字符串

Delphi语言可以使用内置的Pos函数来判断一个字符串是否包含另一个字符串。 Pos函数的语法如下: function Pos(const SubStr, Str: string): Integer; Pos函数接受两个参数:SubStr和Str。SubStr参数指定要查找的子字符串,而Str参数指定要在其中查找的字符串。 Pos函数返回一个整数值,表示SubStr在Str中出现的位置。如果S...

weixin_35756892的博客 2254

FLoRA: 基于异构低秩适应的联邦微调大语言模型

大语言模型(LLMs)的快速发展推动了人工智能的进步,预训练的LLMs可以通过微调适应各种下游任务。联邦学习(FL)通过利用客户端的本地数据进行原位计算,进一步增强了隐私保护的微调,消除了数据移动的需求。然而,考虑到LLMs的巨大参数量,微调LLMs对于资源受限且异构的FL客户端来说是一个挑战。之前的方法采用了低秩适应(LoRA)进行高效的联邦微调,但在LoRA适配器上使用了传统的FL聚合策略。这些方法导致了数学上不准确的聚合噪声,降低了微调效果,并且未能解决异构LoRA的问题。

tiger00O的博客 2066

【Delphi】判断一个字符串是否包含另一个字符串

用Pos函数,判断一个字符串中是否包含另一个字符串, 若存在则返回>0的值,若不存在则返回0。 示例: 判断‘boy’ 是否在‘you are a boy’中,则 i=pos(‘boy’,‘you are a boy’) ,返回值 i=11。

weixin_45616483的博客 5414

多视图学习 (Multi-View Learning)

多视角/多视图学习(Multi-view learning)是陶大成提出的一个研究方向。我们都知道,在机器学习中样本可以用不同的特征(如图片可以用LBP、SIFT等特征)来表示,或者从不同的角度进行观察(如从前后左右观察一个对象),甚至是采用不同的传感器来观测(如RGB摄像头,Depth摄像头),这些不同的观测手段、角度或特征在多视角学习中称为“视角”。多视角学习通过对不同的视角进行统一分析和研究,希望能够得到更好的分类或聚类等等的效果。

CarpeDiem 3万+

【Verilog】valid-ready双向握手机制 ——很绕但是很有意思

valid-ready双向握手机制。

GalaxyerKw的博客 1万+

pb90代码如何连接sql2008r2_如何实现字符串加字符串

之前我们讲到了数字类型可以使用+加号来计算,其实+加号不仅可以用来计算,还可以用于字符串的连接。字符串加字符串我们来看一下字符串是如何加字符串:从上图我们可以看出,两个字符串相加,输出结果就是将两个字符串按顺序连接起来。在前面的字符串输出时也在前面位置,如果字符串本身没有空格,那么输出时字符串之间也是没有空格的。字符串加变量字符串不仅可以和字符串连接,也可以直接和变量连接。变量加变量变量之间也可以...

weixin_39530839的博客 359

FOFA奇技淫巧:从搜索语法到实战场景的深度挖掘

本文深入探讨了FOFA搜索语法在网络空间测绘中的高效应用,从基础语法到实战场景的深度挖掘。通过渗透测试、威胁狩猎、资产发现等实际案例,展示了如何利用FOFA精准定位目标系统、识别蜜罐、追踪威胁,并提供了合规使用指南和性能优化技巧,助力安全工作者提升效率。

weixin_32428571的博客 237

Delphi中的各种字符串、String、PChar、Char数组

参考博客:http://www.cnblogs.com/pchmonster/archive/2011/12/14/2287686.html 其中的所有代码均在Delphi7下测试通过。 Delphi 4,5,6,7中有字符串类型包括了: 短字符串(Short String) 长字符串(Long String) 宽字符串(Wide String) ...

weixin_30567471的博客 499

鸿蒙系统开发工程师:核心技术解析与深度面试指南

摘要: 鸿蒙系统开发工程师需具备底层驱动开发、系统移植优化及分布式架构能力。核心职责包括硬件适配(Bootloader、内核移植、HDF驱动开发)、性能调优(启动加速、功耗管理)及稳定性保障。技术要求涵盖C/C++编程、Linux内核机制、鸿蒙架构(HDF、分布式服务)及ArkTS/ArkUI基础。面试重点考察系统移植流程(如ARM板适配)、驱动开发(I2C/Display)、性能优化手段及内存/同步机制的应用。

郑伟强dev的专栏 430

QGIS编译(跨平台编译)001:Flex、Bison编译(安装)(Windows、Linux、MacOS环境下安装)

QGIS编译;Flex、Bison编译(安装)(Windows、Linux、MacOS环境下安装)

LuckyHanMo的博客 3080

java常用类(重点是Arrays类,装箱以及拆箱,String,StringBuffer,StringBuilder等)

主要是java的一些常用类的使用方法,更具体的建议还是去看官方的文档。其中的重点的话,个人觉得第一个包装类的拆箱和装箱,String类,StringBUffer类和StringBuilder类以及Arrays类的一些常用方法。

m0_46335449的博客 1061

【AI编程】2025年16款主流AI编程工具全维度测评及选型指南

2025年16款主流AI编程工具全维度测评及选型指南

funfan的博客 1万+

JavaSE进阶 | 常用类学习(String类和StringBuffer类)

JavaSE进阶 | 常用类学习(String类和StringBuffer类)

m0_61933976的博客 1662

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java之String类与StringBuffer类

一、String类 1.实例化方式 1)直接赋值法 String str="abc"; String类的设计采用了共享设计模式。在JVM底层实际上会自动维护一个对象池(字符串对象池),如果采用直接赋值法赋值,JVM会先在对象池中查找,如果有,则直接引用;如果没有,则将该实例化对象放到对象池中。 所谓对象池就是一个对象数组。优点:减少内存的开销。 2)构造法 String st...

smell201611010513的博客 1808

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

String类和StringBuffer类

String类和StringBuffer类 在应用程序中经常会用到字符串,所谓字符串就是指一连串的字符,它是由许多单个字符连接而成的,如多个英文字母所组成的一个英文单词。字符串中可以包含任意字符。这些字符必须包含在一对双引号" "之内,例如"abc"。在Java中定义了String和SringBuffer两个类来封装字符串,并提供了一系列操作字符串的方法,它们都位在java.lang包中,因此不需要导包就可以直接使用。接下来针对String类和StringBuffer类进行详细讲解。 String类的初始化

xswl2000的博客 2542

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

String类,StringBuffer类以及区别

在Java中,因为String类是final类型的,所以使用String定义的字符串是一个常量,也就是说使用String定义的字符串一旦创建,其内容和长度是不可改变的.为了便于对字符串进行修改,Java提供了StringBuffer类(也成字符串缓冲区)来操作字符串.StringBuffer类和String类最大的区别在于他的内容和长度都是可以改变的.StringBuffer类就像一个字符容器,当在其中添加或删除字符时,操作的都是这个字符容器,因此并不会产生新的StringBuffer对象.

m0_74268079的博客 2284

二、Java中的String类、StringBuffer类、StringBuilder类

String类、StringBuffer类、StringBuilder类

在校大学生一枚 3184

Java 常用类库及String类详解

Java常用类库不要求有很多思想上的东西,要求对其有很熟练的使用能力。常用类库就好比在生活中手艺人手中的工具,作为一个Java程序员我们也必须熟练掌握这些工具。 导航一、java.util.Objects二、java.lang.Math三、java.util.Arrays四、java.math.BigDecimal五、java.util.Date六、java.text.DateFormatjava.text.SimpleDateFormat七、java.util.Calendar八、java.lang.Sy

xxq010516的博客 527

Java中的String类与StringBuffer 和 StringBuilder 类的应用

在实际开发中,我们可以根据具体的需求选择合适的类: 如果需要表示一个固定的字符串,可以选择String类。 如果需要在多线程环境中对字符串进行修改,可以选择StringBuffer类。 如果需要在单线程环境中对字符串进行修改,并且对性能有较高要求,可以选择StringBuilder类。

MrxiaoAXiao的博客 1050

Java—String类、StringBuffer类和StringBuilder类的使用

在Java中自带针对字符串操作的类,String类、StringBuffer类和StringBuilder类,而这三种类都是针对字符串但也有区别,在本文中则介绍这三种类的区别。String类是jdk自带的字符串类,它是一个字符串常量,长度是不可变的。当你创建字符串时,给定多少个字符就是多少个字符,不允许更改字符串长度。因为String底层使用字符串数组,而该数组使用final修饰,所以它是不可变。

Jun_ID的博客 973

10.Java 常用类之普通常用类(包装类、String、StringBuffer、StringBuilder、Math、Arrays、System、大数据处理)

10.Java 常用类之普通常用类(包装类、String、StringBuffer、StringBuilder、Math、Arrays、System、大数据处理)

weixin_52173250的博客 1034

Java中String与StringBuffer类的区别

彻底弄懂String与StringBuffer

过去即未来的博客 1375

Java常用类之 String、StringBuffer、StringBuilder

String实例化方式: 1. **方式一:通过`字面量定义`的方式** 2. **方式二:通过`new + 构造器`的方式** 面试题:String s = new String("abc"); 方式创建对象,在内存中创建了几个对象? 答:两个。一个是堆空间中new结构,一个是char[]对应的常量池中的数据:"abc"

Arbicoral的博客 1132

java中的常用类——String类和StringBuffer类

目录 一.String类 二.StringBuffer类 一.String类 String类本身就是java,lang包中的一个已定义类,我们要是使用字符串就可以使用这个类的方法来完成功能。 现在我们来看如实进行对象内容的初始化,我们可以直接赋值也可以使用String的构造方法。 public class Example001 { public static void main(String[] args) { String s1 = new String().

可小辉的博客 561

String类与StringBuffer类区别

emmmm…由于我一开始对String 、StringBuffer有点混乱,不清楚什么情况下用哪个,所以这里专门写一篇博客加深理解。 在上一篇博客中我讲了String类的特点,其中有一点就是String类的常量一旦声明,不可改变,如果改变对象内容,改变的只是其引用指向而已,通常来讲,String类的操作比较简单,但是由于String类的不可更改特性,就使得我们在操作的过程中很不方便。 为了方便...

L_R 2896
上一篇: DQL查询数据(来自狂神视频)
下一篇: Java编程基础(一)
不吃辣的IT男
博客等级 码龄7年 6560粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不吃辣的IT男

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值