前言
//取扩展名不要“.”
//”originalFilename“表示扩展名,如“.jpg”
//"originalFilename.lastIndexOf(".")"会返回“0”,表示扩展名中“.”所在的文置
//“originalFilename.substring(originalFilename.lastIndexOf(".") + 1);”即“originalFilename.substring(0+1);”:截取扩展名中第一个以后的字符,包括第一个元素
//所以,最后“String extName="jpg"”
String extName=originalFilename.substring(originalFilename.lastIndexOf(".") + 1);
最近看到这么一句代码,琢磨半天没琢磨太懂,总结一下,以便后用。
substring
//截取str中从int32开始的字符串,并将其赋值给str;
str=str.substring(int32);
//截取str中从int32开始长度为int32的字符串,并将其赋值给str;
str=str.substring(int32,int32);
//举例:
string str = "人生在世还不是有时笑笑人家有时给人家笑笑!";
//返回“是有时笑笑人家有时给人家笑笑!”
str=str.substring(5);
//返回“是有时笑笑”
str=str.substring(5,5);
lastIndexOf
//返回此向量中最后一次出现的指定元素的索引;如果此向量不包含该元素,则返回 -1。
str=str.lastIndexOf(Object o);
//返回此向量中前int32个元素中最后一次出现的指定元素的索引;如果此向量不包含该元素,则返回 -1。
str=str.lastIndexOf(Object o,int32);
//举例:
string str = "人生在世还不是有时笑笑人家有时给人家笑笑!";
//返回“4”
str=str.lastIndexOf(还);
//返回“-1”,0-3中没有“还”
str=str.lastIndexOf(还,3);
IndexOf
//返回此向量中第一次出现的指定元素的索引,从 index 处正向搜索,如果未找到该元素,则返回 -1。
str=str.IndexOf(Object o,int32);
//举例:
string str = "人生在世还不是有时笑笑人家有时给人家笑笑!";
//返回“-1”
str=str.IndexOf(还,5);
//返回“2”
str=str.IndexOf(还,2);
总结
IndexOf、LastIndexOf都是返回一个位置,是个整数值;找不到都返回-1,索引序列都是从左到右的(起始值是0);
Substring是字符串截取,返回值是一个截取后的字符串。