Kal*_*nam 24 java collections stack interface
我试图使用Stack,但我对术语有点困惑.
我发现Stack该类只有push(E e)Java doc.
并且具有add(E e)和addAll(Collection<? extends E> c)作为Vector类的继承方法.
它们是否具有相同的功能,或者更好地用于push(...)向Stack对象插入元素.
换句话说,如果我用add(...)而不是,我会遇到任何问题push(...)吗?
roo*_*ook 19
Kalyanaraman Santhanam:
编辑:如果我使用add(...)而不是push(...),我会遇到任何问题吗?
绝对不会,你不会遇到任何问题,因为它add是List界面的一部分Stack,但你应该注意到代码的进一步可读性以及其他程序员的意图.push方法将给他们一个线索,他们正在使用该Stack对象,他们将明确知道期待什么.另请注意,push返回值不同add(前者具有"推送对象"类型,后者只是boolean响应)
小智 8
唯一的区别是返回类型
System.out.println(stack.push("1"));
Output : 1
System.out.println(stack.add("2"));
Output : true
Run Code Online (Sandbox Code Playgroud)
但Stack推荐使用Push方式