java课堂笔记------字符串API
Posted yuer629
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java课堂笔记------字符串API相关的知识,希望对你有一定的参考价值。
* int length() * 获取当前字符串中的字符个数(长度),无论中英文 * 每个字符都算一个长度 str.length(); * int indexOf(String str) * 查找给定的字符串在当前字符串中第一次出现的位置。 * 返回值为给定的字符串第一个字符在当前字符串的下标 * 由于java大小写敏感,所以必须全部匹配上才可以返回具体的下标。 index = str.indexOf("in"); * int indexOf(String str ,int from) * 重载方法: * 从当前字符串指定下标位置开始查找第一次出现给定字符串的位置。 * 同样的,若没有找到会返回-1. index = str.indexOf("in",3); * int lastIndexOf(String str) * 查找当前字符串中最后一次出现给定字符串的位置 index = str.lastIndexOf("in"); * 获取字符串中的部分内容 * String substring(int start,int end) * 从指定下标start出对应的字符开始,截取到指定下标end * 处之间的字符串,需要注意的是,不包含end位置的字符。 * java API中凡是使用2个数字表示一个范围,通常都是 * "含头不含尾"的。 str.substring(4,9); * String trim() * 去除当前字符串中两边的空白 String trim = str.trim(); * char charAt(int index) * 获取当前字符串中指定位置对应的字符 char c = str.charAt(9); * boolean startsWith(String str) * boolean endsWith(String str) * 判断当前字符串是否是以给定的字符串开头的,另一个 * 是判断是否是以给定的字符串结尾的。 boolean starts = str.startsWith("think"); boolean ends = str.endsWith("ava"); * String toUpperCase() * String toLowerCase() * 将当前字符串中的英文部分转换为全大写和全小写 String upper = str.toUpperCase(); String lower = str.toLowerCase(); //通常用来忽略大小写判断(例如验证码判断) * static String valueOf() * 字符串提供了若干的静态方法valueOf() * 作用就是将其他类型转换为字符串。比较常用的是将 * 基本类型转换为字符串。 String s1 = String.valueOf(123);//"123" String s2 = String.valueOf(123.123);//"123.123" //任何类型与字符串连接结果都是字符串。 String s3 = 123+""; * java.lang.StringBuilder * 内部维护一个可变的字符数组。为了解决频繁修改 * 字符串内容带来的性能损耗。 * 内部提供了用于编辑字符串的相关方法: * 增删改插 StringBuilder sb = new StringBuilder("123456"); * StringBuilder append(String str) * 在当前字符串末尾追加给定内容 sb.append("789"); //获取StringBuilder内部编辑后的字符串 str = sb.toString(); * StringBuilder delete(int start,int end) * 删除当前字符串中给定范围内的字符串 sb.delete(1, 2); * StringBuilder insert(int offset,String str) * 将给定的字符串内容插入到指定位置处 sb.insert(2, "456"); * StringBuilder replace(int start,int end,String str) * 将当前字符串中给定范围内的字符串替换为给定的字符串 sb.replace(0, 2, "456"); //反转字符串 sb.reverse(); * boolean matches(String regex) * 验证当前字符串是否满足给定的正则表达式的格式要求 * 需要注意:无论正则表达式是否使用了"^","$"都是全 * 匹配验证 String str = "[email protected]"; * [a-zA-Z0-9_][email protected][a-zA-Z0-9_]+(\.[a-z]+)+ String regex = "[a-zA-Z0-9_][email protected][a-zA-Z0-9_]+(\\.[a-z]+)+"; boolean matches = str.matches(regex); * String[] split(String regex) * 将当前字符串中满足正则表达式的部分"切掉",保留剩下的部分。拆分字符串操作。 String str = "abc123jh452fh748hf870sdfs5aq75qew"; String[] array = str.split("[0-9]+"); * String replaceAll(String regex,String str) * 将当前字符串中满足正则表达式部分的内容替换为 * 给定的字符串 String str = "fhhf132fhg67fh606fhf234assd798dgh"; /* * 将当前字符串中的数字部分,替换为"#NUMBER#" */ str = str.replaceAll("\\d+", "#NUMBER#");
以上是关于java课堂笔记------字符串API的主要内容,如果未能解决你的问题,请参考以下文章
Java基础学习笔记十三 常用API之正则表达式DateDateFormatCalendar
[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段