Fel*_*eno 4 java arrays string stringbuilder
我正在编写一个拼写纠正器,为用户提供建议.要做到这一点,我正在使用一个和两个编辑距离的单词.有四种技巧:
其中一些需要通过单词进行多次迭代,并执行诸如交换两个字母或在字符串中间添加字母之类的操作.
我知道String在java中是不可变的,并且字符串生成器中的插入可能会根据需要创建字符串的副本,所以我想知道char数组是否会使这更快.
很难说 - 没有更多的背景 - 各种方法中哪一种最快.(或者即使速度差异相关;或者速度是最重要的指标).
您需要针对您的情况对各种方法进行基准测试.
StringBuilder只是一个包装器char[],添加功能,如必要时调整数组大小; 插入/删除等时移动元素
将char []直接用于某些事情可能会稍微快一点,但是你会失去(或必须重新实现)许多有用的功能.