我来自C ++背景。我使用向量push_back和pop_back方法来推送和弹出向量中的元素。我知道arraylist等同于vector,但我没有在arraylist API中找到与push_back和pop_back等效的方法。我能找到的壁橱是LinkedList。我是否遗漏了某些东西,或者在C ++中还有其他与vector相同的东西吗?
感谢任何帮助。
答案 0 :(得分:6)
从ArrayList
使用 add()
到 push_back
。
对于 pop_back
,你必须更多地使用索引和 remove()
。
让我们来看看这个例子:
// push_back equivalent
ArrayList<int> a = new ArrayList<int>();
a.add(2); // Add element to the ArrayList.
a.add(4);
// pop_back equivalent.
a.remove(a.size()-1); // Remove the last element from the ArrayList.
答案 1 :(得分:1)
您可以// loadImagesForElement :: (HTMLElement, [String]) -> Promise<[HTMLImageElement]>
const loadImagesForElement = (target, imageUrls) => {
return $.when.apply($, imageUrls.map(loadImage)).then(
function(/* images */) {
Array.prototype.forEach.call(arguments, i => target.appendChild(i))
},
err => console.error(err)
)
}
使用add()
,push_back()
使用remove()
。
pop_back()
P.S:ArrayList<data_type> data = new ArrayList<data_type>();
data.add(value1);
data.add(value2);
data.remove(data.size() - 1);
是一个不是API的容器。
答案 2 :(得分:1)
我们可以使用LinkedList<E>
数据结构
最后添加:add(E e)
使用以下内容删除:pollLast()
示例:强>
package test;
import java.util.*;
public class test{
public static void main(String args[]){
LinkedList<String> al=new LinkedList<String>();
al.add("element1");
al.add("element2");
al.add("element3");
Iterator<String> itr=al.iterator();
while(itr.hasNext()){
System.out.print(itr.next()+" ");
}
System.out.println(" ");
al.add("element4");
itr=al.iterator();
while(itr.hasNext()){
System.out.print(itr.next()+ " ");
}
System.out.println(" ");
//pop_back
al.pollLast();
itr=al.iterator();
while(itr.hasNext()){
System.out.print(itr.next()+" ");
}
}
}
<强>结果:强>
element1 element2 element3
element1 element2 element3 element4
element1 element2 element3
答案 3 :(得分:0)
combineReducers
的{p> add()
和push_back
的{{1}}
这里remove(list.size()-1)
是ArrayList对象。