String类中indexOf()的用法及应用
主要有以下四种形式
- int indexOf(int charValue): 返回指定字符在字符串中第一次出现处的索引,若没有则返回-1。
- int indexOf(int charValue, int index): 返回从指定位置 index 开始查找指定字符在字符串中第一次出现处的索引,若没有则返回-1。
- int indexOf(String string): 返回指定字符在字符串中第一次出现处的索引,若没有则返回-1。
- int indexOf(String string, int index): 返回从指定位置index 开始查找指定字符在字符串中第一次出现处的索引,若没有则返回-1。
注意
5. indexOf的对象是字符串。
6. int indexOf(int charValue)中的charValue是对应字符串的ASCII码。
7. indexOf()的下标从0开始。
8. 例子:
String string = “abcdefg”;
system.out.println(string.indexOf(97)); //输出0,97对应的值为a
遇到的应用
ssm结合shiro框架中,判断用户权限:
//获取用户全部权限
HttpSession session = request.getSession();
User user = (User) session.getAtrribute("loginUser");
List <Permission> permissionList = user.getPermissionList();
//当前请求方法需要的权限 (AOP)
String privileges = requestPermission.value();
//判断权限``
for(Permission permission : permissionList){
if(permission.getType() != 1){
//判断用户是否拥有能执行当前方法的权限
if(permission.indexOf(user.getCode()) > -1){
return true;
}
}
}