0
我想知道这是否;返回一个子字符串的内容与返回子字符串本身
public String seeColor(String str)
{
int l = str.length();
if(l >= 3 && str.substring(0, 3).equals("red")) return "red";
if(l >= 4 && str.substring(0, 4).equals("blue")) return "blue";
else return "";
}
编译的速度比较快;
public String seeColor(String str)
{
int l = str.length();
if(l >= 3 && str.substring(0, 4).equals("red")) return str.substring(0, 4);
if(l >= 4 && str.substring(0, 5).equals("blue")) return str.substring(0, 5);
else return "";
}
或者可能这两种方式吸吮,还有另一种更有效的方法,我不知道?
为什么你关心在编译时间上的差异,我宁愿?它将基本上没有什么不同。注意这两个例子并不相同:第二种情况相当于简单的返回“;”(删除两个条件;忽略空安全),因为两个条件都不能匹配。 –
我在CodingBat上做了一个练习,字符串'str'将被其他值取代......我想知道哪种方法是最快的,因为我试图在解决问题时总是采用最具性能的方法。 **编辑:** 在真实世界的应用程序中使用哪种方法真的没有区别? – CaffeinatedSynapse
编译时间或执行时间? – benbenw