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常用类之字符串类
String 的特性 public final class String implements java.io.Serializable, Comparable<String>, Char ...
- 常用类一一字符串相关类一一String类 字符串的使用
Java字符串就是Unicode字符序列,例如“Java”就是4个Unicode字符J,a,v,a组成的. Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义的类String,每个 ...
- 常用类一一字符串相关类一一StringBuilder,StringBuffer。
package cn.bjsxt.stringbuilder; /** * String 不可变字符序列 * StringBuilder StringBuffer都是是可变字符序列 * 区别在于Str ...
- day15--Java常用类之日期相关类
Java常用类 3.日期相关类 3.1Date类 在标准Java类库中包含一个Date类,它的对象表示一个特定的瞬间,精确到毫秒.在网上商城下单时,在对报销单进行审核时,都需要获取当前的时间,通过Da ...
- Java常用类学习笔记总结
Java常用类 java.lang.String类的使用 1.概述 String:字符串,使用一对""引起来表示. 1.String声明为final的,不可被继承 2.String ...
- Java 常用类总结(SE基础)
本篇博客对java常用类相关知识进行了归纳总结,比较详细,适用于学习和复习. 1. 字符串相关的类 1.1 String String是一个final类,代表不可变的字符序列.不可被继承. Strin ...
- Java常用类的使用
Java常用类 1. Optional 在我们的开发中,NullPointerException可谓是随时随处可见,为了避免空指针异常,我们常常需要进行 一 些防御式的检查,所以在代码中常常可见if( ...
- Java基础 —— Java常用类
Java常用类: java.lang包: java.lang.Object类: hashcode()方法:返回一段整型的哈希码,代表地址. toString()方法:返回父类名+"@&quo ...
- Java常用类之要点总结
Java常用类之要点总结
- Java常用类:包装类,String,日期类,Math,File,枚举类
Java常用类:包装类,String,日期类,Math,File,枚举类
随机推荐
- Cookie中文乱码问题
页面一登录,页面二保存用户信息,放入Cookies里. 但是Cookies放入中文会引起编码问题,如报错“Control character in cookie value, consider BAS ...
- React服务器渲染最佳实践
源码地址:https://github.com/skyFi/dva-starter React服务器渲染最佳实践 dva-starter 完美使用 dva react react-router,最好用 ...
- Fibonacci 数列O(logn)解法
传统解法 提到斐波那契数列(Fibonacci Sequence),首先想到的是经典的动规(DP)算法. 时间复杂度O(n),这里空间复杂度可以优化到O(1).代码如下: int fib_n(int ...
- webstorm配置编译sass的输出目录
关于这个的问题,虽说不是很难,但还是踩了点小坑,下面就来介绍下如何使用webstorm配置编译sass的输出目录. 1.下载Ruby 2.使用Ruby安装sass 3.检测是否安装成功. 前面的几步很 ...
- 少年,是时候换种更优雅的方式部署你的php代码了
让我们来回忆下上次你是怎么发布你的代码的: 1. 先把线上的代码用ftp备份下来 2. 上传修改了的文件 3. 测试一下功能是否正常 4. 网站500了,赶紧用备份替换回去 5. 替换错了/替换漏了 ...
- [内存管理]连续内存分配器(CMA)概述
作者:Younger Liu, 本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. 原文地址:http://lwn.net/Articles/396657/ 1 ...
- linux 中的搜索命令
which 查看可执行文件的位置. whereis 查看文件位置. locate 配合数据库查看文件位置. find 实际搜索硬盘查询文件名称. grep 查找文件内容 一般不常用find命令,因为f ...
- PHP填补数字前后的0
PHP数字填补0 经常会遇到这样的问题: 自然数字是0,1,2,3...而我们需要的却是满足多少多少位数的数字,如:001,002. 在ID,编号,学号中我们会经常用到补全前面或者后面的空位(一般为前 ...
- selenium + python 登录页面,输入账号、密码,元素定位问题
示例简介: 要求:登录QQ邮箱,输入账号.密码 出现问题:页面中含有iframe框架,因此直接进行元素的查找与操作,出现找不到元素的现象,首先需进行iframe框架的转换,使用switch_to_fr ...
- Oracle12c多租户CDB 与 PDB 参数文件位置探讨、查询 CDB 与 PDB 不同值的参数
一. Oracle12c多租户CDB 与 PDB 参数文件位置CDB的参数文件依然使用12c以前的SPIFLE,pdb的参数文件不会出现在SPFILE中,而是直接从CDB中继承,如果PDB中有priv ...