博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串类/正则表达式
阅读量:2387 次
发布时间:2019-05-10

本文共 2686 字,大约阅读时间需要 8 分钟。

  • Java Character类

Character 类用于对单个字符进行操作。Character 类在对象中包装一个基本类型 char 的值

  • Java String类

字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串

注意:String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。如果需要对字符串做很多修改,那么应该选择使用。

创建格式化字符串

String类使用静态方法format()返回一个String对象而不是PrintStream对象。String类的静态方法format()能用来创建可复用的格式化字符串,而不仅仅是用于一次打印输出。

  • StringBuffer和StringBuilder类

当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类

和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象

StringBuilder类在Java 5中被提出,它和StringBuffer之间的最大不同在于StringBuilder的方法不是线程安全的(不能同步访问)

由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类。

在应用程序要求线程安全的情况下,则必须使用StringBuffer类

在Java中字符串作为String类的实例来处理,以对象的方式来处理字符串。声明字符串变量必须经过初始化才能使用,否则出错。

 

  • Java中对字符串的处理

连接字符串(+,字符串与其他类型的数据连接,结果为字符串,自动调用toString()方法

求字符串长度(调用length()方法,字符串的下标是0到length()-1)

字符串查找(indexOf()、lastIndexOf())

获取指定位置的字符(charAt(int index))

获取子字符串(substring(int beginIndex),substring(int beginIndex,endIndex))

去除空格(trim()方法)

字符串替换(replace(char s1,char s2)方法,char s1要与原字符串中字符的大小写保持一致

判断字符的开始与结尾(startsWith()  endsWith())

判断字符串是否相等(串池:不重复,不回收垃圾;==<内容和内存地址都要相同>、equals()<相同的字符和长度,区分大小写>、equalslgnoreCase()<忽略大小写>)、按字典顺序比较两个字符串<compareTO(),大于返回正整数,小于返回负整数,相等返回0>

字母大小写转化(toLowerCase() toUpperCase())

字符串分割(split(String sign) split(String sign,int limit))

格式化字符串、使用正则表达式,字符串生成器。

 

Java字符串

////////////

 

//字符串比较

//通过字符串函数 compareTo (string) ,compareToIgnoreCase(String) 及 compareTo(object string)

//来比较两个字符串,并返回字符串中第一个字母ASCII的差值

 

//查找字符串最后一次出现的位置

//通过字符串函数 strOrig.lastIndexOf(Stringname) 来查找子字符串 Stringname 在 strOrig 出现的位置

 

//删除字符串中的一个字符

//通过字符串函数 substring() 函数来删除字符串中的一个字符,我们将功能封装在 removeCharAt 函数中

 

//字符串替换

//使用 java String 类的 replace 方法来替换字符串中的字符

 

//字符串反转

//使用 Java 的反转函数 reverse() 将字符串反转

 

//字符串搜索

//使用了 String 类的 indexOf() 方法在字符串中查找子字符串出现的位置

//如过存在返回字符串出现的位置(第一位为0),如果不存在返回 -1

 

//字符串分割

//使用了 split(string) 方法通过指定分隔符将字符串分割为数组

 

//测试两个字符串区域是否相等

//使用了 regionMatches() 方法测试两个字符串区域是否相等

 

//字符串性能比较测试

//通过两种方式创建字符串,并测试其性能

 

//字符串优化

//通过 String.intern() 方法来优化字符串

 

//字符串格式化

//通过 format() 方法来格式化字符串,还可以指定地区来格式化()

 

//连接字符串

//通过 "+" 操作符和StringBuffer.append() 方法来连接字符串,并比较其性能

  • Java正则表达式

正则表达式定义了字符串的模式。正则表达式可以用来搜索、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。 java.util.regex包主要包括以下三个类

 

Pattern类

pattern对象是一个正则表达式的编译表示。Pattern类没有公共构造方法。要创建一个Pattern对象,你必须首先调用其公共静态编译方法,它返回一个Pattern对象。该方法接受一个正则表达式作为它的第一个参数。

 

Matcher类

Matcher对象是对输入字符串进行解释和匹配操作的引擎。与Pattern类一样,Matcher也没有公共构造方法。你需要调用Pattern对象的matcher方法来获得一个Matcher对象

 

PatternSyntaxException

PatternSyntaxException是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

       Pattern p = Pattern.compile(REGEX);//创建Pattern对象

       Matcher m = p.matcher(INPUT); // 获取 matcher 对象

 

matches 和lookingAt 方法

matches 和lookingAt 方法都用来尝试匹配一个输入序列模式。它们的不同是matcher要求整个序列都匹配,而lookingAt 不要求。这两个方法经常在输入字符串的开始使用

参考地址

转载地址:http://rniab.baihongyu.com/

你可能感兴趣的文章
web游戏框架哪家强?国内外精选优质框架分析及注意事项
查看>>
各行业都爱用什么编程语言开发?
查看>>
css3实现ps蒙版效果以及动画,炫酷吊炸天!
查看>>
程序员休息时间接私活遭公司辞退,不明觉厉?
查看>>
CSS 、JS实现浪漫流星雨动画
查看>>
新手网站建设指南(2)
查看>>
新手网站建设优化,这些网站为你提供数之不尽的免费素材!(3)
查看>>
HTML特殊字符显示(常用到的特殊符号,箭头相关,数学相关,标点,符号相关等)...
查看>>
40岁的程序员找不到工作,原来码农真的是碗青春饭
查看>>
2018年前端性能优化总结,这也是我做程序员的第五个年头了
查看>>
前端进阶(三)从0到1学AJAX,这篇就够了!
查看>>
强大的CSS:实现平行四边形布局效果
查看>>
强大的CSS:var变量的局部作用域(继承)特性
查看>>
强大的CSS: 使用“变量种子计数器”扩展动画更多可能性
查看>>
强大的CSS:focus-visible伪类真的太6了!
查看>>
强大的CSS:3种姿势实现26个英文字母的案例
查看>>
强大的CSS:placeholder-shown伪类实现Material Design占位符交互效果
查看>>
强大的CSS:图形绘制合集,方便你我!
查看>>
强大的CSS:scroll-snap滚动事件停止及元素位置检测
查看>>
程序员30岁前,月薪达不到30K,该何去何从?
查看>>