java charAt() 和 startsWith() 哪个更快?

我的问题是,如果我想检查特定索引中字符串的一个字符(只检查一个字符),哪种方法非常有效 charAt() 或 startsWith()。我的意思是在比较时间复杂度时,我可以猜测startsWith() 获得的时间比 charAt() 多。因为startsWith() 需要检查一组字符而charAt() 只需要检查一个字符。

现在告诉我你的意见......你认为哪个只检查一个字符是有效的。


桃花长相依
浏览 368回答 2
2回答

一只斗牛犬

这两种方法都可用于检查特定字符的值。charAt() 直接返回请求索引处的字符,如果提供相应的参数,startsWith(prefix, index) 将返回true。主要区别在于第二种方法有更多的开销。因此,理论上选项 1 的性能稍好一些。但除此之外,您更愿意选择选项 1,因为它以最清晰的方式满足您的需求。真正重要的区别不在于性能,而在于您的代码传达您的意图。因此,尽管可以使用 startsWith() 来执行您想要的操作,但以这种方式使用它是违反直觉的。

慕神8447489

如果我想检查特定索引中字符串的一个字符(只检查一个字符)你自己回答的。如果您需要在特定索引中检查,则不能使用startsWith(),因为您无法选择索引。他们做不同的工作,所以,根据你的问题,总是使用 charAt()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java