当前位置:   article > 正文

Java基础:字符串(String)及常用操作_java string 操作

java string 操作

目录

字符串的声明及创建

字符串的操作

连接字符串(+或concat)

获取字符串的长度 length

查找字符串 indexOf

获取字符串某个位置的字符 charAt

查询某个字符串是否存在 contains

截取字符串 substring(一)

截取字符串 substring(二)

去除前后空格 trim

字符串替换 replace(一)

字符串替换 replace(二)

字符串替换 replace(三)

判断字符串的开始 startsWith(一)

判断字符串的开始 startsWith(二)

判断字符串的结尾 endsWith

分割字符串 split

判断两个字符串是否相等 equals

其它



字符串的声明及创建

字符串的声明及赋值

  1. //声明字符串变量a
  2. String a;
  3. //同时声明字符串b和c
  4. String b,c;
  5. //给b赋值
  6. b="我是B";
  7. //声明字符串并赋值
  8. String d="我是D";
  9. String e="我是E",f="我是F";

使用new创建String对象

  1. //使用new创建String对象
  2. String g=new String("我是G");

使用字符数组创建String对象

  1. //使用字符数组创建String对象
  2. char[] charArr={'我','是','H'};
  3. String h=new String(charArr);//h="我是H"
  4. char[] charArr1={'1','2','3','4','5','6'};
  5. //从字符数组中提取,从索引为3的位置开始提取2个字符
  6. String i=new String(charArr1,3,2);//i="45"

字符串的操作

功能

举例

连接字符串(+或concat)

使用“+”号连接字符串

  语法  

str1+str2             连接两个字符串

str1.concat(str2)        str1末尾增加字符串str2

  举例  

  结果  

 把a和b连接起来:我是一个中国人
把a和b连接起来,并在最后增加一个感叹号:我是一个中国人!
我今年12岁,明年我就是121岁
我今年12岁,明年我就是13岁

  要点  

  • 使用“+”连接两个字符串
  • 使用“concat”在末尾增加字符串
  • 字符串和其他类型(如int、float类型)连接是,会先将其它类型直接转字符串
  • 注意输出结果3和输出结果4的区别
  • 字符串太长,可以使用+号换行

String d="我是"+

"一个中国人";

获取字符串的长度 length

str.length()

  语法  

str.length()              

作用:获取字符串str的长度

  • str:任意字符串

  举例  

  结果  

a的长度:14

  要点  

  • 一个中文只占一个长度
  • 空格也占一个长度

查找字符串 indexOf

indexOf(String s)

lastIndexOf(String s)

  语法  

str.indexOf(String s)     

作用:获取s在str中第一次出现的位置

  • str:任意字符串
  • s:要查找的字符串

str.lastIndexOf(String s)     

返回:s在str中最后一次出现的位置

  • str:任意字符串
  • s:要查找的字符串

  举例  

  结果  

大写C在字符串中的位置:2
小写c在字符串中的位置:-1
大写C在字符串中最后出现的位置:6

空字符串最后出现的位置:7

  要点  

  • indexOf是查找的字符或字符串首次出现的位置
  • lastIndexOf是查找的字符或字符串最后一次出现的位置
  • 返回的位置是从0开始的
  • 如果不存在,则返回 -1
  • 空字符串使用lastIndexOf查找的位置等于字符串的总长度

获取字符串某个位置的字符 charAt

str.charAt(int index)

  语法  

str.charAt(int index)             

作用:获取在str中index位置的字符

  • str:任意字符串
  • index:指定要返回字符的下标
  举例  

  结果  

字符串中第3个位置的字符是:C
 

  要点  

  • 位置从0开始,即0表示第一个位置

查询某个字符串是否存在 contains

str.contains(string str1)

  语法  

str.contains(string str1)

作用:查询str是否存在str1

  • str:任意字符串
  • str1:查询的某个字符串

  举例  

  结果  

ABC23是否包含C2:true
ABC23是否包含ABC23:true

截取字符串 substring(一)

substring(int beginIndex)

  语法  

str.substring(int beginIndex)

作用:获取从beginIndex位置开始截取直到str结尾的子串

  • str:任意字符串
  • beginIndex:开始截取的索引位置

  举例  

  结果  

从第3个位置开始截取,得到的字符串::CDEFC

截取字符串 substring(二)

substring(int beginIndex,int endIndex)

  语法  

str.substring(int beginIndex,int endIndex)

作用:从beginIndex位置开始截取至endIndex位置结束的子串

  • str:任意字符串
  • beginIndex:开始截取的索引位置
  • endIndex:截取的结束位置

  举例  

  结果   

从第3个位置开始,截取至第5个位置结束,得到的字符串::CDE
 

去除前后空格 trim

trim()

  语法  

str.trim()                

作用:去除str前后空格

  • str:任意字符串

  举例  

  结果  

去空格后得到的字符串:ABC D EFC

  要点  

  • trim()只能去掉字符串的前后空格,不能去除字符串中间的空格

字符串替换 replace(一)

replace(oldchar,newchar)

  语法  

str.replace(oldstr,newstr)                

作用:把str中所有的oldstr替换成newstr

  • str:任意字符串
  • oldstr:要被替换的字符串
  • newstr:替换后的字符串

  举例  

  结果  

把a替换成b: ABCD-ABCD
把A替换成b: bBCD-bBCD

把a替换成b的时候,因为字符串中没有小写“a”,所以返回原字符串。

  要点  

  • 如果被替换的字符oldstr在字符串中出现多次,会将所有的oldstr替换成newstr

字符串替换 replace(二)

replaceAll(String regex,String replacement)

  语法  

str.replaceAll(String regex,String replacement)                

作用:把str中所有的regex(或符合正则表达式的)替换成replacement,和replace最大的区别就是:replace不支持正则表达式,而replaceAll支持正则表达式

  • str:任意字符串
  • regex:要被替换的字符串或正则表达式
  • replacement:替换后的字符串

  举例  

  结果  

把\d替换成*: ABCD123*
把数字替换成*: ABCD***\d

例子中的 \d 在replace中表示的就是“\d” 这个字符串,而在replaceAll中表示的是一个表示数字的正则表达式。 

字符串替换 replace(三)

replaceFirst(String regex,String replacement)

  语法  

str.replaceFirst(String regex,String replacement)                

作用:把str中第一次出现的regex(或符合正则表达式的)替换成replacement,支持正则表达式

  • str:任意字符串
  • regex:要被替换的字符串或正则表达式
  • replacement:替换后的字符串

  举例  

  结果  

把第一个出现的3替换成*:ABC12*123
把第一个出现的数字替换成*:ABC*23123

判断字符串的开始 startsWith(一)

startsWith(String prefix)

  语法  

str.srartsWith(String prefix)                

作用:判断str是否以prefix开始,返回true或false

  • str:任意字符串
  • prefix:前缀字符串

  举例  

  结果  

ABC123123是否以ABC开头:true
ABC123123是否以abc开头:false

判断字符串的开始 startsWith(二)

startsWith(String prefix,int index)

  语法  

str.srartsWith(String prefix,int index)                

作用:从索引index位置开始判断str是否以prefix开始,返回true或false

  • str:任意字符串
  • index:开始查找的位置
  • prefix:前缀字符串

  举例  

  结果  

ABC123123是否以BC开头:false
ABC123123从第二位置开始,是否以BC开头:true

判断字符串的结尾 endsWith

endsWith(String suffix)

  语法  

str.srartsWith(String suffix)                

作用:判断str是否以suffix结尾,返回true或false

  • str:任意字符串
  • suffix:后缀字符串

  举例  

  结果  

ABC23是否以23结尾:true
ABC23是否以ABC23结尾:true

分割字符串 split

split(String regex)

  语法  

str.split(String regex)                

作用:根据指定的分隔符regex(支持正则表达式)对str进行拆分,返回一个数组

  • str:任意字符串
  • suffix:分隔符

str.split(String regex,int limit)                

作用:根据指定的分隔符regex(支持正则表达式)对str进行拆分,返回一个数组

  • str:任意字符串
  • suffix:分隔符
  • limit:分割次数

  举例  

  结果  

判断两个字符串是否相等 equals

str.equals(str1)

  语法  

str.equals(String str1)                

作用:判断str是否等于str1(具有相同的字符序列)

  • str:任意字符串
  • str1:任意字符串

  举例  

  结果  

str1==str2的结果:false
str1.equals(str2)的结果:true

  要点  

  • 注意==和equals的区别

其它

  举例  

  结果  

 abc DED  转小写: abc ded  
 abc DED  转大写: ABC DED  

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号