有没有办法将字符添加到堆栈?

时间:2013-01-21 00:37:33

标签: java

有没有办法将字符串中的字符添加到堆栈而无需创建自己的push和pop方法?

示例将非常感谢!

2 个答案:

答案 0 :(得分:7)

Stack<Character> myStack = new Stack<Character>();

char letter = 'a';
myStack.push((Character) letter);

创建一个包含Character个对象的堆栈,然后在插入之前将char投射到Character

Java Character类:http://docs.oracle.com/javase/7/docs/api/java/lang/Character.html

就像intInteger一样,您需要先包装一个原语,然后才能将其插入到数据结构中。

编辑:显然,Stack已被弃用,因为它继承自Vector。原因如下:Why is Java Vector class considered obsolete or deprecated?

正如Mark Peters所说,您应该使用LinkedListArrayDeque

答案 1 :(得分:3)

我决定回答这个问题,因为有一些误解...... 所以, 有String

String s = "your string";

创建StackListLinkedList)期待对Michael的回答发表评论

Stack<Character> d = new Stack<Character>();

char推送逻辑

进行所有循环后
 for (char c : s.toCharArray()) {
        d.push(c);
    }

这就是全部!!!