这行代码什么意思?

map.put("extName", fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase());

阅读 2.5k
2 个回答

获取一个文件名的扩展名,转成小字母,然后保存到一个map中。

lastIndexOf();//函数是从末尾获取字符的索引,返回查到的第一个字符的索引。
"example".lastIndexOf("e");//6,为何不返回0,因为这个函数从末尾开始查找,找到一个就返回。
"helloWorld".lastIndexOf("l");//8
subsubring();//获取子串
"example".substring(2);//ample
toLowerCase();//将字符转为小写
"HELLO".toLowerCase();//hello
fileName.substring(fileName.lastIndexOf(".")+1);//返回一个文件名字的大写扩展名,加1是因为扩展名在.的后面。
"example.txt".substring("example.TXT".lastIndexOf(".")+1).toLowerCase;//txt
map.put("keyName","keyValue");//这是设置map的key值
map.put("exName","example.TXT".substring("example.txt".lastIndexOf(".")+1).toLowerCase);
map.put("exName","txt");//等价于上面的。
map.get("exName");//txt, 用 get(keyName)来获取Key的值.

这么详细,希望采纳。我也是Java初学者,多多交流。

新手上路,请多包涵

lastIndexOf 是获取最后一个字符的索引,与之相对应的是 indexOf 是获取第一个

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏