三国纷争
ArrayList 操作您可以从O(1) 中的an中获取一个值并ArrayList在 O(1) 中添加一个值。此外,ArrayList已经内置了可帮助您检索和添加元素的操作。字符串操作Concatenation:使用 concat 和 slice 操作,结果会更糟。字符串粗略地说是字符数组。例如,"Hello" + "Stack" 可以表示为 array['H', 'e', 'l', 'l', 'o']和 array ['S', 't', 'a', 'c', 'k']。现在,如果要连接这两个String,则必须组合两个数组的所有元素。它会给你一个长度为 10 的数组。因此,连接 - 或创建你的新字符数组 - 是O(n + m).最糟糕的是,如果您连接 n String,您的复杂度将为O(n^2)。拆分:拆分字符串的复杂度通常为O(N)或更多。这取决于您将为拆分操作提供的正则表达式。操作String通常不那么可读,并且很难调试。长话短说AnArrayList通常比使用 操作更好String。但一切都取决于您的用例。