java howto ArrayList推,popup,移位和不移位
我已经确定Java ArrayList.add
类似于JavaScript Array.push
我被困在find类似于以下的ArrayList
函数
-
Array.pop
-
Array.shift
-
Array.unshift
我倾向于ArrayList.remove[At]
最后一个是我现在工作(Android)最重要的。 在此先感谢!
ArrayList
在其命名标准中是独一无二的。 这里是等价的:
Array.push -> ArrayList.add(Object o); // Append the list Array.pop -> ArrayList.remove(int index); // Remove list[index] Array.shift -> ArrayList.remove(0); // Remove first element Array.unshift -> ArrayList.add(int index, Object o); // Prepend the list
请注意, unshift
不会删除一个元素,而是将一个元素添加到列表中。 还要注意,Java和JS之间的angular落行为可能会有所不同,因为它们都有自己的标准。
前段时间我遇到了这个问题,我发现java.util.LinkedList
最适合我的情况。 它有几种方法,有不同的命名,但是他们正在做所需要的:
push() -> LinkedList.addLast(); // Or just LinkedList.add(); pop() -> LinkedList.pollLast(); shift() -> LinkedList.pollFirst(); unshift() -> LinkedList.addFirst();
也许你想看看java.util.Stack
类。 它有推,stream行的方法。 并实现了List接口。
对于移位/不移位,你可以参考@ Jon的答案。
然而,你可能想关心ArrayList的东西,arrayList是不同步的。 但是Stack是。 (Vector的子类)。 如果你有线程安全的要求,Stack可能比ArrayList好。
Underscore-java库包含方法push(值),pop(),shift()和unshift(值)。
代码示例:
import com.github.underscore.$: List<String> strings = Arrays.asList("one", "two", " three"); List<String> newStrings = $.push(strings, "four", "five"); // ["one", " two", "three", " four", "five"] String newPopString = $.pop(strings).fst(); // " three" String newShiftString = $.shift(strings).fst(); // "one" List<String> newUnshiftStrings = $.unshift(strings, "four", "five"); // ["four", " five", "one", " two", "three"]
- button与图像,ImageButton和可点击的ImageView之间的区别?
- 自定义对象的Android ArrayList – 保存到SharedPreferences – 可序列化?
- 嵌套的Recycler视图高度不包裹其内容
- InflateException与官方devise库中的FloatingActionButton
- 导航抽屉(Google+与YouTube)
- 当我加载ADT时,为什么我收到错误“Android SDK需要Android Developer Toolkit版本XX.XX或以上?
- 我们应该用ToolBarreplaceAction Bar吗?
- SQLite数据库和ContentProvider的最佳实践
- 从小部件启动活动