当前位置:编程学习 > JAVA >>

关于java方面的问题

我遇到了一个问题,定义一个字符串的表达式,然后分别把它压入运算符的栈中和数字栈中,求代码怎么写(用Java语言写) --------------------编程问答-------------------- 怎么没人来解答呢 --------------------编程问答-------------------- 不知道是不是正确的理解了 你的意思  下面的代码你可以看看

import java.util.Stack;

public class Test {
    public static void main(String[] args){
        String s="12-13+14-14-11-11";
        //创建栈
        Stack<Integer> numStack=new Stack<Integer>();
        Stack<Character> signStack=new Stack<Character>();
        //将字符串转换char数组
        char[] chs=s.toCharArray();
        //遍历数组
        String s1=new String();
        for(char ch:chs){
            //判断是不是数字
            if(Character.getNumericValue(ch)==-1){
                signStack.push(ch);
                //遇到符号将前面的字符组成1个整体,并存入栈中
                numStack.push(Integer.valueOf(s1));
                s1=new String();
            }else {
                s1+=String.valueOf(ch);
            }
        }
        //打印栈,这里打印出来的是存入栈的顺序
        System.out.println(signStack);
        System.out.println(numStack);
    }
}
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,