JavaSE篇之String类

news2024/11/18 17:33:09

1.字符串的构造

常用的有三种方法:

1.使用常量串构造
2.直接newString对象
3.使用字符数组进行构造
在这里插入图片描述

2.String对象的比较

2.1==比较是否引用同一个对象

对于基本类型变量,== 比较两个变量中存储的值是否相同。
对于引用类型变量,==比较两个引用变量引用的是否为同一个对象
注意 :String是引用类型,本身并不存储字符串本身。存啥自己看吧,爷说不上来。
在这里插入图片描述

在这里插入图片描述

2.2equals

如果要比较String类所指向的内容是否相等就用.equals.
在这里插入图片描述

2.2.1求字符串长度

在这里插入图片描述

2.2.2isEmpty

isEmpty的作用就是判断字符串内容是否为空,若为空则返回true,若不为空则返回false.
,注意:当一个String对象存了一个空格时,判定不为空,因为有长度,而isEmpty就是依靠字符串长度来判定是否为空。如下图:
在这里插入图片描述

2.2.3equalsIgnoreCase

同样用于比较两个字符串是否相等,但是可以忽略大小写不计,如下图:
在这里插入图片描述

2.2.4compareTo

比较两个字符串然后返回它们两个之间的差值。注意:是只计算两个字符串之间第一个不同的字符的ASCII的差值,如下图:
在这里插入图片描述
str1-str2=-32;
因为A的ascii值为65,a的ascii值为97,65-97=-32.

2.2.5compareToIgnoreCase

效果跟compareTo差不多,但是忽略大小写。
在这里插入图片描述

2.3字符串查找

2.3.1charAt

传下标,找字符,如下图:
在这里插入图片描述

2.3.2indexof

1.(int ch)与上面这个相反,这个是传字符,找下标,如果要找的字符在该字符串有多个就取第一次出现的下标,如下图:
在这里插入图片描述

2.(int ch,int formindex)
比第一个高级一点,第二个参数用来指定起始位置
查找。
在这里插入图片描述
3.(String str)
查找对象换成了字符串。
在这里插入图片描述
4.()String str,int formindex )
同理,多一个参数用来指定起始查找位置。
Q

2.3.3lastindexof

1.(int ch)
唯一区别就是倒着数

2.(int ch,int fromindex)
唯一区别就是倒着数

3.(String str)
唯一区别就是倒着数

4.(String str,int formindex)
唯一区别就是倒着数

2.4转化

2.4.1数值和字符串的转换

String.valueof
在这里插入图片描述
由上图可见,valueof可以将很多数据转成字符串,包括int char ,long等等,如下图就是将int 转换成字符串。
在这里插入图片描述
注意:在转换类为字符串后,如果想sout看效果,要在该类中重写toString方法,否则打印出来的就是一个地址。

2.4.2大小写转换

toUpperCase:把字符串全部转成大写,
表面上看是这样,但要记住,它并不是在直接将原字符串修改为大写,而是产生了一个新的对象。如下图:
在这里插入图片描述
toLowerCase:把字符串全部转成小写,
在这里插入图片描述

2.4.3字符串转数组

toCharArray:将字符串转成数组形式
在这里插入图片描述

2.4.4格式化

String.format(“格式化形式”,数据);
记得拿字符串接收
例如:
在这里插入图片描述

2.5字符串替换

replace
1.(char oldhar,char newChar)
将字符串中的oldChar全部替换为newChar
在这里插入图片描述

2.(CharSequence target,CharSequence replacement)
一样,只不过换的是字符串(替换与被替换长度可以不一样)

replaceFirst
这个也是换,字符字符串都能换,不过只换首个目标
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2169355.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 MongoDB 在 Spring Boot 中构建安全的 RBAC 系统

介绍 您是否曾经构建过应用程序,然后突然意识到需要以更精细的方式管理用户访问权限?也许您已经硬编码了一些管理检查或在整个代码库中分散了权限逻辑。相信我,我经历过这种情况,维护起来并不好玩。 这就是基于角色的访问控制 (…

Unity3D地形系统一口气讲完!谢啦!!☆⌒(*^-゜)v

Unity 3D 地形系统概述 在三维游戏世界中,通常会将丰富多彩的游戏元素融合在一起,比如游戏中起伏的地形、郁郁葱葱的树木、蔚蓝的天空、、凶恶的猛兽等,营造出身临其境的游戏沉浸感,让玩家置身游戏世界,忘记现实。 地…

定时任务上云改造方案

优质博文:IT-BLOG-CN 一、Job单元化 什么Job需要单元化:所有会往单元化DB更新/删除/插入数据的Job都需要进行单元化改造。 什么是单元化DB 【1】指配置为DRC双向复制的DB; 【2】单元化的DB部署在多个Zone,每个Zone内的实例都会…

【含文档】基于Springboot+Vue的高校失物招领平台(含源码+数据库+lw)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统定…

物体实例分割,机器人拾取

物体实例分割是计算机视觉领域的一个关键任务,它旨在从图像中分割出每个独立物体,并且为每个物体实例提供一个独特的标识。这一任务不仅识别出图像中的物体,还能区分出多个同类物体的不同实例,例如在一张桌子上摆放的多个相同的杯…

『功能项目』宠物的攻击巨型化【80】

本章项目成果展示 我们打开上一篇79宠物的召唤跟随的项目, 本章要做的事情是实现在战斗中有几率触发宠物巨型化攻击将怪物击飞的效果 首先在主角预制体中增加隐藏的宠物巨型化 制作巨型化宠物的攻击效果 将该动画控制器放置在隐藏的巨型化宠物的动画控制器上 首先查…

新160个crackme - 065-Eternal Bliss

运行分析 选择验证方式,破解字符串标题提示为vb程序 PE分析 VB程序,32位,无壳 静态分析&动态调试 使用VB Decompiler进行分析,发现Command1_Click_403604为check按钮事件,需要使Me 1 CBool(expression) 将表达…

传输层协议 --- UDP

序言 在之前的文章 Socket 编程 中,我们只是简单的知道了怎么利用 UDP协议 或者是 TCP协议 来发送我们的数据,并且我们还知道 UDP 是不可靠的,TCP 是可靠的。但这是为什么呢?底层的构造和策略决定他们的属性!这篇文章中…

从环境部署到开发实战:消息队列 RocketMQ

文章目录 一、消息队列简介1.1 什么是消息队列1.2 常见消息队列对比1.3 RockectMQ 核心概念1.4 RockectMQ 工作机制 (★) 二、RocketMQ 部署相关2.1 服务器单机部署2.2 管控台页面 三、RocketMQ 的基本使用3.1 入门案例3.2 消息发送方式3.2.1 同步消息3.…

微服务-流量染色

1. 功能目的 通过设置请求头的方式将http请求优先打到指定的服务上,为微服务开发调试工作提供便利 请求报文难模拟:可以直接在测试环境页面上操作,流量直接打到本地IDEA进行debug请求链路较长:本地开发无需启动所有服务&#xf…

前端常见算法题集

很久没练算法了,打算接下来一段时间每天坚持写题和写题解 这是一篇前端常用算法题集,题目从从简到难,编程语言主要为JavaScript,顺便练习和熟记js的各种方法... 目录 字符串类 1.字符串相加 字符串类 下图为js中常用的字符串方…

神经网络介绍及其在Python中的应用(一)

作者简介:热爱数据分析,学习Python、Stata、SPSS等统计语言的小高同学~ 个人主页:小高要坚强的博客 当前专栏:Python之机器学习 本文内容:神经网络介绍及其在Python中的线性回归应用 作者“三要”格言:要坚…

使用python爬取豆瓣网站?如何简单的爬取豆瓣网站?

1.对python爬虫的看法 首先说说我对python的看法,我的专业是大数据,我从事的工作是java开发,但是在工作之余,我对python又很感兴趣,因为我觉得python是一门很好的语言,第一:它可以用来爬取数据…

fmql之字符驱动设备(2)

例行的点灯来喽。 之前是寄存器读写&#xff0c;现在要学习通过设备树点灯。 dtsled.c 寄存器写在reg 把用到的寄存器写在设备树的led节点的reg属性。 其实还是对寄存器的读写。 &#xff08;不推荐&#xff09; 头文件 #include <linux/kernel.h> #include <li…

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-09-26

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-09-26 1. LLMs Still Can’t Plan; Can LRMs? A Preliminary Evaluation of OpenAI’s o1 on PlanBench Authors: Karthik Valmeekam, Kaya Stechly, Subbarao Kambhampati LLMs仍然无法规划&#xff1b;LRMs可以…

【通俗易懂】FFT求解全过程,各参数详细解释

在进行FFT全过程讲解之前&#xff0c;小编先给大家解释一下&#xff0c;在FFT中出现的一些参数名词解释。 &#xff08;1&#xff09;采样频率 Fs Fs 1 / 采样间隔 根据奈奎斯特定理&#xff1a;Fs ≥ 最高频率分量的两倍&#xff0c;这样才能避免混叠 &#xff08;2&…

解决macOS安装redis以后不支持远程链接的问题

参考文档:https://blog.csdn.net/qq_37703224/article/details/142542179?spm1001.2014.3001.5501 安装的时候有个提示, 使用指定配置启动: /opt/homebrew/opt/redis/bin/redis-server /opt/homebrew/etc/redis.conf那么我们可以尝试修改这个配置文件: code /opt/homebrew/…

傅里叶级数在机器人中的应用(动力学参数辨识)

B站首发&#xff01;草履虫都能看懂的【傅里叶变换】讲解&#xff0c;清华大学李永乐老师教你如何理解傅里叶变换&#xff0c;辨清美颜和变声原理&#xff0c;&#xff01;&#xff01;_哔哩哔哩_bilibiliB站首发&#xff01;草履虫都能看懂的【傅里叶变换】讲解&#xff0c;清…

AI 智能体 | 手捏素材选题库 Coze Bot,帮你实现无限输出

做自媒体的同学经常遇到的一个痛点就是无限输出&#xff0c;那怎么才能有源源不断的选题呢&#xff1f;那就是搭建一个选题素材库。 下面就为大家介绍一下基于 Coze Bot 快速搭建素材选题库&#xff0c;希望能让大家才思泉涌。 一、流程拆解 日常素材库积累的过程可以描述为…

eslint-plugin-react的使用中,所出现的react版本警告

记一次使用eslint-plugin-react的警告 Warning: React version not specified in eslint-plugin-react settings. See https://github.com/jsx-eslint/eslint-plugin-react#configuration . 背景 我们在工程化项目中&#xff0c;常常会通过eslint来约束我们代码的一些统一格…