regionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len);
regionMatches(int toffset,String other,int ooffset,int len); 上述两个方法用来比较两个字符串中指定区域的子串。入口参数中,用toffset和ooffset分别指出当前字符串中的子串起始位置和要与之比较的字符串中的子串起始地址;len 指出比较长度。前一种方法可区分大写字母和小写字母,如果在 boolean ignoreCase处写 true,表示将不区分大小写,写false则表示将区分大小写。而后一个方法认为大小写字母有区别。由此可见,实际上前一个方法隐含了后一个方法的功能。比如:
String s1= “tsinghua”
String s2=“it is TsingHua”;
s1.regionMatches(0,s2,6,7);
最后一个语句表示将s1字符串从第0个字符“t”开始和s2字符串的第6个字符“T”开始逐个比较,共比较7对字符,由于区分大小写,所以结果为false。
但如果最后一个语句改为:
s1.regionMatches(true,0,s2,6,7);
则结果为true,因为入口参数中true表示忽略大小写区别。
我们可以使用这个方法来判断某一个字符串是否以某个或某段具体的串为结,我们可以这样使用:
private static boolean endsWith(String str, String suffix, boolean ignoreCase)
{
if(str == null || suffix == null)
return str == null && suffix == null;
if(suffix.length() > str.length())
{
return false;
} else
{
int strOffset = str.length() - suffix.length();
return str.regionMatches(ignoreCase, strOffset, suffix, 0, suffix.length());
}
}

java.lang.String.regionMatches方法使用的更多相关文章

  1. There is no getter for property named 'XXX' in 'class java.lang.String'解决方法

    <select id="ProjectHomePage" parameterType="string" resultType="java.uti ...

  2. java.math.BigDecimal cannot be cast to java.lang.String解决方法

    从mysql数据库里取decimal(18,2)封装到Map<String,String>中 BigDecimal b = new BigDecimal(resultMap.get(&qu ...

  3. 重写java.lang.String IndexOf()方法,实现对字符串以ASCII规则截取

    /** * 根据元数据和目标ascii位数截取字符串,失败返回-1 * @param sourceStr 元数据字符串 * @param endIndex 截取到第几位 * @return 结果字符串 ...

  4. java.lang.String.getBytes(String charsetName)方法实例

    java.lang.String.getBytes(String charsetName) 方法编码将此String使用指定的字符集的字节序列,并将结果存储到一个新的字节数组. 声明 以下是java. ...

  5. 数据转换bug花了半天时间 Java.math.BigDecimal cannot be cast to java.lang.String

    从数据库取出一个 Count函数 统计的值 在代码中要转成Integer类型的时候 Integer.parseInt((String)map.get("ID_")) 报了一下错误: ...

  6. mybatis之org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'time' in 'class java.lang.String'

    mybatis接口 List<String> getUsedCate(String time); 配置文件 <select id="getUsedCate" pa ...

  7. java.lang.String 类的所有方法

    java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...

  8. java数组、java.lang.String、java.util.Arrays、java.lang.Object的toString()方法和equals()方法详解

    public class Test { public static void main(String[] args) { int[] a = {1, 2, 4, 6}; int[] b = a; in ...

  9. mybatis invalid comparison: java.sql.Timestamp and java.lang.String报错解决方法

    这个错的意思是:java.sql.Timestamp和java.lang.String无效的比较 错误的原因是:拿传入的时间类型参数与空字符串进行比较就会报这个异常 解决方法:只保留非null判断就可 ...

随机推荐

  1. iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2)

    iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2) 此时,当用户轻拍按钮后,一个叫tapButton()的方法就会被触发. 注意:以上这一种方式是动作声明和关联一起进行的,还有一种先 ...

  2. BZOJ.3238.[AHOI2013]差异(后缀自动机 树形DP/后缀数组 单调栈)

    题目链接 \(Description\) \(Solution\) len(Ti)+len(Tj)可以直接算出来,每个小于n的长度会被计算n-1次. \[\sum_{i=1}^n\sum_{j=i+1 ...

  3. 洛谷P3373 [模板]线段树 2(区间增减.乘 区间求和)

    To 洛谷.3373 [模板]线段树2 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式 输入格 ...

  4. Python3科学计算库概况

    Python3科学计算常见库入门 Numpy快速数据处理库 参见我的博客 http://www.cnblogs.com/brightyuxl/p/8981294.html http://www.cnb ...

  5. 大数据实践:ODI 和 Twitter (二)

    大数据实践:ODI和Twitter(二) 在前面的文章中,我们已经使用flume将数据从twitter抓取到Hive中,现在我们来看看ODI(Oracle Data Integrator)如何在HIV ...

  6. vscode调试C/C++时支持查看定义查看引用

    貌似老版支持现在不支持了,需要自己加第三方工具,方法如下: 确保你安装了c/c++,此文写作时版本为0.20.1 从GTAGS官网下载Win32程序,解压,将其放在合适的位置,并把其目录下/bin文件 ...

  7. 使用 IntraWeb (37) - TIWApplication

    每个访问用户都会拥有一个它的实例(WebApplication), 它除了承载 Session(会话)数据, 还要记忆着用户的浏览器信息.登陆信息等等; 另外, 窗体的建立也都依附(Owner)于它, ...

  8. JavaScript数组所有API全解密

    全文共13k+字,系统讲解了JavaScript数组的各种特性和API. 数组是一种非常重要的数据类型,它语法简单.灵活.高效. 在多数编程语言中,数组都充当着至关重要的角色,以至于很难想象没有数组的 ...

  9. EBS MOAC

    alter session set nls_language='SIMPLIFIED CHINESE';alter session set nls_language ='AMERICAN'; exec ...

  10. Knockout.Js官网学习(options绑定)

    前言 options绑定控制什么样的options在drop-down列表里(例如:<select>)或者 multi-select 列表里 (例如:<select size='6' ...