位置: IT常识 - 正文

【手把手带你学JavaSE】String类(下篇)(手把手教大家)

编辑:rootadmin
【手把手带你学JavaSE】String类(下篇) 目录前言一、字符串查找二、字符串转换2.1 数值和字符串转化2.2 大小写转化2.3 字符串和数组的转换2.4 格式化三、字符串替换四、字符串拆分4.1 拆分处理4.2 部分拆分4.3 拆分IP地址五、字符串截取六、其他的方法6.1 String trim()6.2 boolean isEmpty()6.3 int length()6.4 判断字符串开头结尾6.5 boolean contains(String str)七、StringBuilder&&StirngBuffer7.2 String、StringBuffer、StringBuilder的区别前言

推荐整理分享【手把手带你学JavaSE】String类(下篇)(手把手教大家),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:手把手教大家,手把手教大家,手把手教,手把手教你易学入门,手把手教你学,手把手教会你,手把手教学视频,手把手教会你,内容如对您有帮助,希望把文章链接给更多的朋友!

上篇我们已经学习了String类的一些知识,接下来我们接着学习!

一、字符串查找

字符串查找也是字符串中非常常见的操作,String类提供的常用查找的方法。

二、字符串转换2.1 数值和字符串转化

static String valueof() 数值转字符串 Integer.parseInt() 字符串整形 Double.parseDouble() 字符串转浮点型

class Student{ String name; int age; public Student(String name,int age){ this.name = name; this.age = age; } @Override public String toString() { return "Student{" + "name='" + name + '\'' + ", age=" + age + '}'; }}public class Test { public static void main(String[] args) { String s1 = String.valueOf(123); String s2 = String.valueOf(12.3); String s3 = String.valueOf(true); String s4 = String.valueOf(new Student("ahdiauhd",23)); System.out.println(s1); System.out.println(s2); System.out.println(s3); System.out.println(s4); System.out.println("==========================="); int data1 = Integer.parseInt("1234"); double data2 = Double.parseDouble("12.5"); System.out.println(data1); System.out.println(data2); }}

2.2 大小写转化

String toUpperCase() 转大写 String toLowerCase() 转小写 这两个函数只转换字母。

public static void main(String[] args) { String s1 = "Hello"; String s2 = "HADSDKJA"; //小写转大写 System.out.println(s1.toUpperCase()); //大写转小写 System.out.println(s2.toLowerCase()); }

2.3 字符串和数组的转换

char[ ] toCharArray() 字符串转数组 new String(数组引用) 数组转字符串

public static void main(String[] args) { String s = "Hello"; //字符串转数组 char[] ch = s.toCharArray(); for (int i = 0; i < ch.length; i++) { System.out.println(ch[i]); } System.out.println("==================="); //数组转字符串 String s2 = new String(ch); System.out.println(s2); }

2.4 格式化

static String format( );

public static void main(String[] args) { String s = String.format("%d-%d-%d",2022,9,17); System.out.println(s); }

三、字符串替换

使用一个指定的新的字符串替换掉已有的字符串数据,可用的方法如下:

public static void main(String[] args) { String s = "Hello World!"; System.out.println(s.replace("l","a")); System.out.println(s.replaceFirst("l","k")); }

注意事项: 由于字符串是不可变对象, 替换不修改当前字符串, 而是产生一个新的字符串。

四、字符串拆分

可以将一个完整的字符串按照指定的分隔符划分为若干个子字符串。

4.1 拆分处理public static void main(String[] args) { String s1 = "Hello World! Hahaha asjkd"; String[] arr = s1.split(" ");//按空格拆分 for (String s:arr) { System.out.println(s); } }

4.2 部分拆分public static void main(String[] args) { String s1 = "Hello World! Hahaha asjkd"; String[] arr = s1.split(" ",2); for (String s:arr) { System.out.println(s); } }

4.3 拆分IP地址public static void main(String[] args) { String str = "188.166.1.1" ; String[] arr = str.split("\\.") ; for(String s: arr) { System.out.println(s); } }

五、字符串截取【手把手带你学JavaSE】String类(下篇)(手把手教大家)

public static void main(String[] args) { String s = "Hello World!"; System.out.println(s.substring(0)); System.out.println(s.substring(0,5)); }

1. 索引从0开始。 2. 注意前闭后开区间的写法, substring(0, 5) 表示包含 0 号下标的字符, 不包含 5 号下标 。

六、其他的方法6.1 String trim()

方法:String trim()

功能:去掉字符串中的左右空格,保留中间空格。

public static void main(String[] args) { String s = " Hello World "; System.out.println("[" +s+"]"); System.out.println("[" +s.trim()+"]"); }

6.2 boolean isEmpty()

isEmpty() 方法用于判断字符串是否为空

public static void main(String[] args) { String s = " "; System.out.println(s.isEmpty()); }

6.3 int length()

用于求字符串的长度

public static void main(String[] args) { String s = "MoyuWangPangdudu"; System.out.println(s.length()); }

6.4 判断字符串开头结尾

boolean startsWith(String prefix) 判断字符串是否以某个字符串开头的 boolean endWith(String sufix) 判断字符串是否以某个字符串结尾的

public static void main(String[] args) { String s = "MoyuWangPangdudu"; System.out.println(s.startsWith("Mo")); System.out.println(s.endsWith("dudu")); }

6.5 boolean contains(String str)

判断字符串中是否包含某个字符串

public static void main(String[] args) { String s = "MoyuWangPangdudu"; System.out.println(s.contains("Wang")); }

七、StringBuilder&&StirngBuffer

由于String的不可更改特性,为了方便字符串的修改,Java中又提供StringBuilder和StringBuffer类。

这两个类大部分功能是相同的,这里介绍 StringBuilder常用的一些方法.

public static void main(String[] args) { StringBuilder sb1 = new StringBuilder("Hello"); StringBuilder sb2 = sb1; //追加:即尾插->字符、字符串、整型数字 sb1.append(" ");//Hello sb1.append("World!");//Hello World! sb1.append(123);//Hello World!123 System.out.println(sb1); System.out.println(sb1 == sb2);//true System.out.println(sb1.charAt(0)); // 获取0号位上的字符 H System.out.println(sb1.length());// 获取字符串的有效长度17 System.out.println(sb1.capacity());// 获取底层数组的总大小 sb1.setCharAt(0, 'h'); // 设置任意位置的字符 hello World!123 sb1.insert(0,"Hello World!!");// Hello world!!Hello World!123 System.out.println(sb1); System.out.println(sb1.indexOf("Hello")); // 获取Hello第一次出现的位置 System.out.println(sb1.lastIndexOf("hello"));// 获取hello最后一次出现的位置 sb1.deleteCharAt(0); // 删除首字符 System.out.println(sb1); sb1.delete(0,5);// 删除[0, 5)范围内的字符 System.out.println(sb1); String str1 = sb1.substring(0,5);// 截取[0, 5)区间中的字符以String的方式返回 System.out.println(str1); sb1.reverse();//字符串逆转 str1 = sb1.toString(); // 将StringBuffer以String的方式返回 System.out.println(str1); }

String和StringBuilder最大的区别在于String的内容无法修改,而StringBuilder的内容可以修改。频繁修改字符串的情况考虑使用StringBuilder 。

注意:

String和StringBuilder类不能直接转换。如果要想互相转换,可以采用如下原则:

String变为StringBuilder: 利用StringBuilder的构造方法(StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容)或append()方法

StringBuilder变为String: 调用StringBuilder重写的toString()方法

7.2 String、StringBuffer、StringBuilder的区别String的内容不可修改,StringBuffer与StringBuilder的内容可以修改.StringBuffer与StringBuilder大部分功能是相似的StringBuffer采用同步处理,属于线程安全操作;而StringBuilder未采用同步处理,属于线程不安全操作
本文链接地址:https://www.jiuchutong.com/zhishi/300115.html 转载请保留说明!

上一篇:使用nodejs写接口(nodejs写后端接口)

下一篇:AcWing - 蓝桥杯集训每日一题(DAY 1——DAY 5)(蓝桥杯咋样)

  • qq看点弹幕怎么关闭(qq看点弹幕怎么发彩色弹幕)

    qq看点弹幕怎么关闭(qq看点弹幕怎么发彩色弹幕)

  • 神舟笔记本怎么样(神舟笔记本怎么开启独显直连)

    神舟笔记本怎么样(神舟笔记本怎么开启独显直连)

  • 怎样解除华为手机支付保护(怎样解除华为手机反复重启)

    怎样解除华为手机支付保护(怎样解除华为手机反复重启)

  • 微信把对方删除之后聊天记录还在吗(微信把对方删除了对方知道吗)

    微信把对方删除之后聊天记录还在吗(微信把对方删除了对方知道吗)

  • 12306人脸识别不能通过怎么办(12306人脸识别不是本人)

    12306人脸识别不能通过怎么办(12306人脸识别不是本人)

  • 华为mate30pro怎么重启手机(华为mate30pro怎么刷机)

    华为mate30pro怎么重启手机(华为mate30pro怎么刷机)

  • 陌陌隐身能看到在线吗(陌陌隐身能看到信息吗)

    陌陌隐身能看到在线吗(陌陌隐身能看到信息吗)

  • 华为p40怎样设置返回键(华为p40怎样设置简易模式)

    华为p40怎样设置返回键(华为p40怎样设置简易模式)

  • 5G宽带有多大(5g的宽带)

    5G宽带有多大(5g的宽带)

  • 腾讯会议直播上课老师可以看见学生吗(腾讯会议直播上课能看到学生吗)

    腾讯会议直播上课老师可以看见学生吗(腾讯会议直播上课能看到学生吗)

  • 抖音评论能发链接吗(抖音在评论区里放链接)

    抖音评论能发链接吗(抖音在评论区里放链接)

  • 快手的特别关心在哪里设置(快手的特别关心在哪里取消)

    快手的特别关心在哪里设置(快手的特别关心在哪里取消)

  • 笔记本电脑要网线吗(笔记本电脑要网线接口吗)

    笔记本电脑要网线吗(笔记本电脑要网线接口吗)

  • 微信人脸识别不了是什么原因(微信人脸识别不匹配怎么办)

    微信人脸识别不了是什么原因(微信人脸识别不匹配怎么办)

  • 图形与图像属于什么媒体(图形图像属于什么媒体)

    图形与图像属于什么媒体(图形图像属于什么媒体)

  • 电脑键盘灯亮没反应是怎么回事(电脑键盘灯亮没声音)

    电脑键盘灯亮没反应是怎么回事(电脑键盘灯亮没声音)

  • 苹果7怎么开启4g网络(苹果7怎么开启定位服务)

    苹果7怎么开启4g网络(苹果7怎么开启定位服务)

  • 爱奇艺怎么看登录记录(爱奇艺怎么看登录了几个账号)

    爱奇艺怎么看登录记录(爱奇艺怎么看登录了几个账号)

  • 苹果xr夜景拍照如何(iphone xr 夜景)

    苹果xr夜景拍照如何(iphone xr 夜景)

  • 苹果备忘录突然没了是为什么(苹果备忘录突然不支持人脸解锁)

    苹果备忘录突然没了是为什么(苹果备忘录突然不支持人脸解锁)

  • ios12关闭软件下载密码(苹果手机关闭软件下载)

    ios12关闭软件下载密码(苹果手机关闭软件下载)

  • 玩游戏网络延时怎么办?该如何解决?(玩游戏网络延时高怎么处理)

    玩游戏网络延时怎么办?该如何解决?(玩游戏网络延时高怎么处理)

  • 最新CUDA环境配置教程(ubuntu 20.04 + cuda 11.7 + cuDNN 8.4)(cuda运行环境)

    最新CUDA环境配置教程(ubuntu 20.04 + cuda 11.7 + cuDNN 8.4)(cuda运行环境)

  • C#,图像二值化(01)——二值化算法综述与二十三种算法目录(c++图像二值化)

    C#,图像二值化(01)——二值化算法综述与二十三种算法目录(c++图像二值化)

  • convertquota命令  替换旧的磁盘额数据文件(convert convert)

    convertquota命令 替换旧的磁盘额数据文件(convert convert)

  • css选择器的使用规范(css选择器怎么用)

    css选择器的使用规范(css选择器怎么用)

  • 帝国CMS怎么解决单次只能上传20个文件的问题(帝国cms教程官方完整版)

    帝国CMS怎么解决单次只能上传20个文件的问题(帝国cms教程官方完整版)

  • 缴纳代扣个人所得税分录
  • 支付城镇土地使用税会计科目
  • 小微企业年度所得税优惠政策
  • 小规模纳税人加油发票可以抵扣吗
  • 向银行借款存入银行会引起
  • 小规模纳税人做账要做增值税吗
  • 幼儿园固定资产登记表
  • 附加税减免所得税汇缴的时候需要调整吗
  • 政府补贴中介合法吗
  • 房地产经营税金计算公式
  • 前程无忧靠什么赚钱
  • 购买座机计入哪个科目?
  • 固定资产之前没提折旧,数额交大
  • 国家税务局通用定额发票查询
  • 异地工程预缴个税
  • 购买烟怎么做账
  • 增值税税负率计算器
  • 企业以现金形式支付货款
  • 董事会费汇算清缴计入什么科目
  • 扩建费用
  • 小规模30万免税政策
  • 重分类不成功
  • 捐赠计提管理费的账务处理?
  • 员工离职一次性结清工资
  • 如何维护电脑系统安全?
  • 购入嵌入式软件能一次性扣除吗
  • 爱荷华州的首府
  • 预收账款调增应纳税所得额
  • 留存收益是否计入成本
  • 营改增前甲供材施工企业如何缴纳企业所得税
  • aliwssv.exe是什么进程
  • 企业年金缴纳标准400什么意思啊
  • php自定义函数的关键字是什么
  • 建筑企业分项目信息采集表怎么填
  • 皮丘拉湖畔的乌代布尔城市宫殿,印度 (© Chaiyun Damkaew/Getty Images)
  • 合伙企业分红个税税率表
  • TypeError The view function did not return a valid response. The function either returned None 的解决
  • php构造函数重载
  • 季报的利润表本月金额填的是当月数可以吗
  • opencv 边缘
  • 快速傅里叶变换matlab
  • vgextend命令作用及含义
  • thinkphp如何做微服务
  • 进项发票和销项发票统计
  • 送货单需要跟在凭证后面吗
  • 清包工方式建筑服务
  • 免征增值税政策的政策有哪些?
  • 代开运输发票会不会造成重复征税?
  • 研究费用记入什么费用
  • 公益性捐赠会计利润总额计算方法
  • 新开公司费用
  • 其他业务支出包括哪些内容科目
  • 应付职工薪酬核算的有
  • sql server2005一个表中可以设置
  • centos7搭建nfs详细步骤
  • solaris教程
  • wave editor教程
  • ubuntu系统如何
  • linux pwdx命令
  • ubuntu怎么刷新桌面
  • win8开始界面如何设置成win7
  • 自由选择工具快捷键
  • 跑跑跑游戏
  • exception继承
  • nodejs调用go
  • linux系统中可用于添加用户账号
  • bat ping批处理
  • 脚本语言教程
  • nodejs实现微服务
  • import python-docx
  • js effect
  • 盗梦英雄限时占卜顺序
  • js遍历foreach
  • 浙江通用电子发票查不到
  • 天津违规养犬的处罚依据
  • 税务跨区变更需要什么资料
  • 贵州地税网上申报大厅
  • 一般纳税人每月开票金额有限额吗
  • 房产税税源编号
  • 代办营业执照代办人有什么法律责任
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设