为了账号安全,请及时绑定邮箱和手机立即绑定

问一个神奇的问题:

<c:out value="${fn:endsWith('helle','e') }"></c:out>

<c:out value="${fn:endsWith('hhlle','e') }"></c:out>

访问的时候显示 false true 。 为什么啊啊????

正在回答

1 回答

public static boolean endsWith(String input, String substring) {
   if(input == null) {
       input = "";
   }

   if(substring == null) {
       substring = "";
   }

   int index = input.indexOf(substring);
   return index == -1?false:(index == 0 && substring.length() == 0?true:index == input.length() - substring.length());
}

这是它的源码,你看了这个应该就明白了,

最后index == input.length() - substring.length(),在helle中,input.length()为5,而substring.length()为1,

而index为1,所以index!=5-1,所以返回false

1 回复 有任何疑惑可以回复我~
#1

慕粉3904766 提问者

非常感谢!
2016-10-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JSP常用标签
  • 参与学习       46089    人
  • 解答问题       80    个

配置及使用常用JSTL标签,这是一项必备的基本技能

进入课程

问一个神奇的问题:

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信