题目给的代码不怎么严谨,请问怎么修改更好

来源:2-3 Java 中 String 类的常用方法 Ⅰ

信号与系统

2015-12-09 16:09

这段代码主要讲的是关于String的相关用法,当然也有一些我自己的看法:

一开始创建的fileName,假如这一段字符串没有"."  

那么之后的int index = fileName.lastIndexOf(".");中,index的值为 -1

继而之后的String prefix = fileName.substring(index);就会报错

我自己把这段代码这么修改了一下:

if(index != -1){

String prefix = fileName.substring(index);

if (index>0 && prefix.equals(".java")) {

System.out.println("Java文件名正确");

else {System.out.println("Java文件名无效");

}

}else{System.out.println("Java文件名无效");

}


请问还有什么更好的修改方法

写回答 关注

2回答

  • Caballarii
    2015-12-09 16:17:37
    已采纳

    if (index>0 && fileName.substring(index).equals(".java")) {

    会利用条件判断的短路机制规避报错

    但其实不管你怎么写,运行正确就行,没必要追求更精妙的写法

    信号与系统

    非常感谢!

    2015-12-10 16:28:22

    共 1 条回复 >

  • Jason333
    2015-12-09 16:22:27

    文件都会有扩展名吧 ?!

    信号与系统

    如果是故意把文件重命名,故意不加扩展名呢,是有这种可能性的

    2015-12-10 16:29:24

    共 1 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题