有个问题,我想实现一个计算器,,当我第一次输入0时,第二次是无法输入值的,也就是说不能让0开头,部分程序如下ForeScreen="";
else if(c=="1"||c=="2"||c=="3"||c=="4"||c=="5"||c=="6"||c=="7"||c=="8" || c=="9"||c=="0")
 {   if (ForeScreen=="0")
  ;
   else
         {ForeScreen += e.getActionCommand(); 
         text.setText(ForeScreen); 
         }
       } 
我的思想是,假设我输入的第一值是0,则ForeScreen="0",那么第二次输入值的时候,则会满足{中的if语句,让它不响应,可是为什么运行的时候还是不行啊,就是我第一次输入0后,在输入其他值,它还是会响应,还是0后可以输入值,是哪里有问题啊?
另外还想问个问题,为什么我的Frame无法改变背景色啊?谢谢回答了

解决方案 »

  1.   

    判断两个字符串是否相等最好用.equals();
    改成if(c.equals("1") || c.equals("2") || ........) {}
      

  2.   

    把后面的那个也改成 if (ForeScreen.equals("0")) 
      

  3.   

    懂了,谢谢了,可以实现了!想请教下,书上说,AWT和Swing有时可以互换,就是我把用AWT写的菜单栏前面都加上J然后写入IMPORT JAVAX.SWING.*,可以看到效果,也可以写addActionlistener(this),但是用鼠标单击的触发的时候却会报错,这是怎么回事啊,谁能给我个用SWING.编写的菜单栏以及实现吗,谢谢了!我写的是这样的:
    public void init()
    {JMenuBar myB=new JMenuBar();
    setJMenuBar(myB);
    JMenu m1=new JMenu("文件(E)");
    m1.add(new JMenuItem("打开"));
    JMenuItem m11=new JMenuItem("保存");
    m1.add(m11);
    m1.add("打印");
    m1.addSeparator();
    //JMenuItem exit=new JMenuItem("退出");

    //exit.addActionListener(this);
    m1.add(exit);
    m1.addActionListener(this);
    myB.add(m1);


    JMenu m2=new JMenu("编辑(V)");
    m2.add("复制");
    JMenu m21=new JMenu("颜色");
    m21.add("前景色");
    m21.add("背景色");
    m21.addActionListener(this);
    m2.add(m21);
    m2.addSeparator();
    //JCheckboxMenuItem mycmi=new JCheckboxMenuItem("全选");
    //mycmi.addItemListener(this);
    //m2.add(mycmi);
    m2.addActionListener(this);
    myB.add(m2);

    JMenu m3=new JMenu("帮助(H)");
    m3.add("关于");
    m3.addActionListener(this);
    myB.add(m3);
    setVisible(true);
    }
    public void actionPerformed(ActionEvent e)
    {if (e.getActionCommand()=="退出")
    System.exit(0);
    }
    可是当我触发的时候却会报错!
      

  4.   

    使用编程工具比如jbuilder 来生成,不就好了,这种问题用ide工具生成了,然后看代码就好了,我就是这样慢慢自学的
      

  5.   

    可我用的是ECLIPSE啊,听别人说初学的人,都最好用这种编译工具的啊!
      

  6.   

    ECLIPSE 也有插件支持的  你去网上搜搜SWT的插件
      

  7.   

    “听别人说初学的人,都最好用这种编译工具的啊!”哈哈哈!谁给你说的?!Eclipse使用复杂,根本不适合初学的人。对于初学者,即使你在DOS下面使用命令行,都比用Eclipse来得轻松。
    初学者最好使用EditPlus或者JCreator。