对不起,不知道长度是在施工时计算的!
我得到200个字符串长的字符串A,5个字符串长字符串B如果我这样做
int Al = A.length; int Bl = B.length;
并且比较它 - 一切似乎都很好但是如果我这样做几百万次来计算某些东西,它对于我需要的东西来说太昂贵了.
更简单和更简洁的方法是可以比较两个字符串的一些功能,并告诉我何时另一个是至少与另一个相同.类似于(compare_string_lengths(stringA,stringB) - >其中字符串B必须至少与字符串A一样长(字符)才能为函数返回TRUE.
是的,我知道函数不知道哪个字符串更短,但是如果两个字符串的长度将被并行计数,那么当一个字符串超过另一个时,函数知道要"回答"的内容.
谢谢你的任何提示.
如果你只需要知道字符串的长度是否不同(或者如果你想在比较之前检查长度是否相等),我认为你不能比比较Length属性更快.从字符串中检索长度是O(1)操作.
要实际比较你需要查看每个字符的字符串,这使它成为一个O(n)操作.
编辑:
如果事情运行得太慢,你应该试着看一下分析器,什么是最慢的部分?也许是你的字符串构造花费时间?