位置: 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)(蓝桥杯咋样)

  • 微信消息怎么撤回(微信消息怎么撤回超过10分钟)

    微信消息怎么撤回(微信消息怎么撤回超过10分钟)

  • 天天跳绳怎么加入班级(天天跳绳怎么加入俱乐部)

    天天跳绳怎么加入班级(天天跳绳怎么加入俱乐部)

  • vivox50pro支持nfc功能吗(vivox50pro支持快充吗)

    vivox50pro支持nfc功能吗(vivox50pro支持快充吗)

  • 拼多多补偿金会退到哪里(拼多多补偿金会返还吗)

    拼多多补偿金会退到哪里(拼多多补偿金会返还吗)

  • 天猫次日达没到怎么办(天猫按时达没有到达怎么办)

    天猫次日达没到怎么办(天猫按时达没有到达怎么办)

  • 中国黄页什么时候开通(中国黄页什么时候改名的)

    中国黄页什么时候开通(中国黄页什么时候改名的)

  • 苹果手机增强4g信号(苹果手机增强对比度有什么用)

    苹果手机增强4g信号(苹果手机增强对比度有什么用)

  • 微信找不到密码了手机号也换了怎么办(微信找不到密码怎么办手机号不用了)

    微信找不到密码了手机号也换了怎么办(微信找不到密码怎么办手机号不用了)

  • 组成计算机的硬件结构是什么(组成计算机的硬件系统的基本部分)

    组成计算机的硬件结构是什么(组成计算机的硬件系统的基本部分)

  • 微信撤回网警能看到吗(微信撤回网警能知道吗)

    微信撤回网警能看到吗(微信撤回网警能知道吗)

  • 打印机显示一个文档被挂起是什么意思(打印机显示一个文档被挂起)

    打印机显示一个文档被挂起是什么意思(打印机显示一个文档被挂起)

  • 华为p30升级后怎么回到原来系统(华为p30升级后怎么关机)

    华为p30升级后怎么回到原来系统(华为p30升级后怎么关机)

  • 数据线越长充电越慢是真的吗(数据线越长越耗电吗)

    数据线越长充电越慢是真的吗(数据线越长越耗电吗)

  • 淘宝直播名字前面皇冠什么意思(淘宝直播名字前面红色)

    淘宝直播名字前面皇冠什么意思(淘宝直播名字前面红色)

  • 抖音定位是什么意思(抖音怎么定位自己想要的位置)

    抖音定位是什么意思(抖音怎么定位自己想要的位置)

  • 苹果4和4s外观怎么区分(苹果4和4s外观怎样区分)

    苹果4和4s外观怎么区分(苹果4和4s外观怎样区分)

  • ipad2018能插u盘吗(ipad2018可以插移动硬盘吗)

    ipad2018能插u盘吗(ipad2018可以插移动硬盘吗)

  • wifilos红灯一直闪是什么情况(wifi los红灯)

    wifilos红灯一直闪是什么情况(wifi los红灯)

  • 华为手环只能连接华为手机吗(华为手环只能连华为吗)

    华为手环只能连接华为手机吗(华为手环只能连华为吗)

  • win10降win7(Win10降win7安装程序正在更新注册表设置)

    win10降win7(Win10降win7安装程序正在更新注册表设置)

  • 如何使用菜鸟裹裹在线寄快递(如何使用菜鸟裹裹上门取件)

    如何使用菜鸟裹裹在线寄快递(如何使用菜鸟裹裹上门取件)

  • 天猫88折卡如何获取(天猫88折vip卡什么样的商品使用)

    天猫88折卡如何获取(天猫88折vip卡什么样的商品使用)

  • 饿了么如何部分退款(饿了么如何部分退款要到货后才可以操作吗)

    饿了么如何部分退款(饿了么如何部分退款要到货后才可以操作吗)

  • c盘隐藏文件显示方法(c盘显示隐藏)

    c盘隐藏文件显示方法(c盘显示隐藏)

  • 系统托盘无法隐藏图标(系统托盘无法隐藏文件夹)

    系统托盘无法隐藏图标(系统托盘无法隐藏文件夹)

  • 非金融企业利息收入计入什么科目
  • 外贸企业申报退税流程
  • 特定业务预缴所得税不能填写
  • 施工机械保险费属于什么费用
  • 员工工资的扣点
  • 应交税费明细科目设置
  • 固定资产账载金额和税收金额的区别
  • 新公司前几个月发工资
  • 公司为员工购买五险一金是什么意思
  • 附加税税率计税依据
  • 小规模纳税人酒水税率
  • 平均增长率的计算公式初中
  • 个体户在银行开户
  • 合伙人投入的资金怎么记账
  • 售后需要品控吗
  • 购买工装的进项能抵扣吗
  • 附加税费减免性质代码
  • 用友加密狗可以拔下来么
  • 工会经费税收
  • 契税减免备案材料是什么
  • 企业不得抵扣进项税的情形
  • 网络适配器感叹号代码43
  • 鸿蒙工具栏在哪里
  • win10更新windows
  • 计算机网络默认网关什么意思
  • 计提本月应交未交增值税
  • PHP:pg_parameter_status()的用法_PostgreSQL函数
  • php bi
  • 阿普拉萨
  • rgbt目标跟踪
  • 债权投资 科目
  • php实现留言板功能
  • 目标检测现状
  • html关于边框的代码
  • 基于什么意思
  • openeuler基于
  • php怎么设置图片的大小
  • 代发工资一般收多少服务费
  • 事业单位接受捐赠物资会计处理
  • 接受非货币性资产投资会计处理
  • 酒店业营业税税率
  • 租金计入主营业务成本吗
  • 银行回单箱费会退回吗
  • 万元发票和千元发票
  • 借款人和还款人不一致,收据打给谁
  • 收到成本发票如何记账
  • 环境检测费账务处理
  • 购入研发设备可以全额抵扣吗
  • 虚开发票会面临怎么样的后果?
  • 金蝶财务软件固定资产
  • 增值税免税企业可以开具专票吗
  • 2020年账簿印花税减免政策
  • 发票管理办法实体法还是程序法
  • 以前年度会计科目记错
  • 支付给个人的劳务费需要发票吗
  • 如何当好一个农民
  • 没有关联企业怎么选不了否
  • 什么是盈亏平衡法
  • sqlserver 通用分页存储过程
  • windows7/vista/server(no slic)
  • windows server 2008 r2激活密钥
  • win7系统调节亮度快捷键
  • os x10.11el capitan公测版下载地址(公测版计划注册教程)
  • win10系统进程
  • ntfs权限设置步骤
  • win双系统怎么切换
  • linux系统没有yum
  • 图形化ssh
  • win10登陆界面怎么关闭
  • linux安装后没有网卡只有lo
  • android@localhost#1
  • 批处理 >nul
  • debug命令及其基本操作
  • flash和javascript
  • 手机android版本强制升级
  • js cookie存取
  • bootstrap要学多久
  • python3模拟登录
  • 江苏省生育登记服务网
  • 地税纳税申报表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设