Java常用类之【字符串相关类型】
一、字符相关类型
分类:
1.不可变的字符序列:
String类2.可变的字符序列:
StringBuilder类——->线程不安全的 执行效率相对较高
StringBuffer类——->线程安全的 执行效率相对较低
二、不可变的字符序列—-String类
2,1构造方法
参数为字符数组://String str=new String(new char[]{‘a’,’b’,’c’});
参数为字符数组+偏移量+count://String str=new String(new char[]{‘a’,’b’,’c’,’d’},0,3);// 第一个参数 char数组
// 第二个参数 偏移量 从数组中第几个数据开始写入String字符串
// 第三个参数 count 写几个
// 偏移量+ count 不能超过数组的长度参数为字节数组://String str=new String(new byte[]{1,2,3});
直接赋值://String str=“abc”;
2,2基本方法
1)用来创造新字符串的方法
拼接:str.Concat(str)【拼接字符串】
替换:str.replace(要被替换的str,用于替换的)
替换:replaceAll(String regex, String replacement)
替换第一个:String replaceFirst(String regex, String replacement)
截取:str.substring(int beginIndex)或者str.substring(int beginIndex, int endIndex)
转换为小写:str.toLowerCase()
转换为大写:toUpperCase()
去除首尾空格:str.trim()
2)查找字符的方法
匹配开头返回Boolean:str.startsWith(String prefix, int toffset) 【prefix为匹配的字符串,offset偏移量】或startsWith(String prefix)
匹配结尾:str.endsWith(String suffix)
字符串第一次出现的位置:indexOf(str) 或indexOf(str, int fromIndex) 【fromIndex为从哪个下标开始找】(没有返回-1,下同)
字符串最后一次出现的位置:lastIndexOf(int ch) 或lastIndexOf(int ch, int fromIndex) 【fromIndex是从左向右数,然后从这个位置向左去匹配】
【该字符串是否含有指定字符串】contains(string regex) //参数为判断的字符串
3)比较字符的方法
判断内容是否相等:str.equals(str)
忽略大小写比较:str.equalsIgnoreCase(str)
按字典顺序比较两个字符串:str1.compareTo(str);【先比较第一个字符,相等,就接着比,直到分出大小,全部相同,返回0,str1小则返回负数,大为正数】(得到的数值为两字符对应码的差值e-d=1),compareToIgnoreCase(String str)
匹配正则:str.matches(String regex)
4)其他
将不同基本类型转为字符串:String.valueOf(基本类型)
将字符串拆分为【字符数组】:str.toCharArray()
将字符串拆分为【字符串数组】:str.split(regex)或split(String regex, int limit) 【limit限制拆分的个数】
判断字符串是否为空:str.isEmpty() 【当且仅当 length() 为 0 时返回 true】
获取字符串长度:str.length()
charAt(index)【获取字符串中对应下标值的字符,返回char类型】
三、可变的字符序列
StringBuffer类
与String类相比较,新增方法:
反向排列:buffer.reverse()
转为字符串:buffer.toString()
将字符串插入指定位置:buffer.insert(1, “ww”)【参数1:偏移量】
删除指定下标字符:buffer.deleteCharAt(2)
删除指定范围字符串:buffer.delete(1, 2)【参数1:开始下标,参数2:结束下标】
在后面添加字符串:buffer.append(“abc”)
注意:
没有频繁的追加或者删除字符串内容 ——————–用String
频繁的操作追加或者是删除字符串中的内容的时候—————- 用StringBuffer 比较有优势 节省内存开销
Java常用类之【字符串相关类型】相关推荐
- Java常用类(数学相关类 /字符串相关类/时间相关类/格式化类)
Java类库概述 Java类库文档 https://docs.oracle.com/javase/8/docs/api/ 可以下载文档离线版本(chm格式) https://blog.csdn.net ...
- Java36——Java常用类之其他相关类
1.System类 System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. 由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该 ...
- 返回值 包装类_(九)Java常用类
(九)Java常用类 String类 概述 /*String:字符串,使用一对""来表示. * 1.String声明为final,不能被继承. * 2.String实现了Seria ...
- Java常用类(谷粒商城学习记录)
Java常用类 谷粒商城学习记录 谷粒商城学习记录 谷粒商城学习记录 干嘛老是提示我与别人的文章相似呢?真的是我自己整理的啊啊啊 老是提示与这个文章相似 https://blog.csdn.net/c ...
- java常用类(Object、String、Math、Date)
文章目录 java常用类(Object.String.Math.Date) 一.object类及其方法 1. getClass()方法 2. hashCode()方法 3. toString方法 4. ...
- Java高级--Java常用类
Java常用类 字符串相关的类 String String的实例化方式 String常用方法 String与字符数组转换 字符数组--->字符串 字符串--->字符数组 String与字节 ...
- JavaEE基础第9章Java常用类
第9章Java常用类 字面量的定义方式都是存在常量池中的,常量池中不会存储多个一样的字符串,在定义一个字符串的时候会先去常量池中找有没有存在的,有就将地址传过去,没有就新建. String字符串 概念 ...
- Java基础-->一篇讲全Java常用类(详细易懂,建议收藏)
Java基础–>一篇讲全Java常用类(详细易懂,建议收藏) 文章目录 Java基础-->一篇讲全Java常用类(详细易懂,建议收藏) 1.字符串相关的类 String类 概述 创建Str ...
- 这些Java常用类,你必须要学会,还不快快收藏?(近两万字详细介绍)
零基础学习之Java常用类 概述 包装类 和数学相关的类 String类 创建字符串对象 使用构造方法 使用静态方法 使用" " + 拼接 字符串对象的比较 字符串的常用方法 可变 ...
- java常用类的方法,java常用类的使用方法
java常用类的使用方法 Interger:整数类型 1.属性. static int MAX_VALUE:返回最大的整型数: static int MIN_VALUE:返回最小的整型数: stati ...
最新文章
- 谈谈redis,memcache的区别和具体应用场景
- Linux arm9 设置中断向量表,STM32学习笔记之中断向量表,MDK程序启动分析
- 人工智能时代的数据中心该怎么建?腾讯给出了自己的答案
- ClangFormat代码格式化
- ubuntu更换下载源
- why we see different http status code like 404, 500. where are they handled
- todo在此放置对话框控件_MFC界面开发进入BCGControlBar v30.5时代,Gantt Chart控件升级...
- 假设一动态集合S用一个长度为m的直接寻址表T来表示。请给出一个查找S中最大元素的过程。(算法导论第十一章11.1-1)
- hbase可视化工具_做数据可视化,三大热门BI工具试用总结
- DeepFM调参总结
- 《实战 Java 高并发程序设计》笔记——第1章 走入并行世界(一)
- MySQL - 安装教程详细图解
- CSS3 Shape详解
- 修复下载后已发生损坏的压缩包(.rar)文件
- mysql 父子排序_mysql 父子结构排序
- PHP + QQ邮箱发送邮箱验证码
- CDH-TXKT-hive、impala
- 2.VIM文本编辑器的下载与使用
- 2020-03-18HTML
- 2013年:各大IT公司待遇【转载】
热门文章
- C++ Primer 5th笔记(chap 14 重载运算和类型转换)递增和递减运算符
- C++ Primer 5th笔记(10)chapter10 泛型算法 : read
- java结丹期(14)----javaweb(cookiesession)
- 04-Debug FS
- Web安全之代码执行漏洞
- DVWA学习(二)SQL Injection(Blind)
- 两个小程序利用注入如何进行简单交互
- 身为网络安全的,连BlackMatter勒索软件都不知道,说出去丢不丢人啊
- 15、MySQL运算符的优先级
- Python多线程——LOCK锁