回 帖 发 新 帖 刷新版面

主题:[讨论]新手求助!!!

我想要的效果是,在文本框每输入一个英文单词,回车后将英文和中文解释添加到文本框中.英文单词及其解释可事先定义在程序中.下面是我做的程序,请高手帮帮手,改一下使它达到我想要的效果...

import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class UseText extends Applet implements ActionListener
{
  TextArea ta;
  TextField tf;
  String cha;
  String a;
 String eng[]={"god","good","bad","fine"};
     String ch[]={"上天","好的","坏的","良好"};
  public void init()
  {
     ta=new TextArea(4,30);
    tf=new TextField(30);
    add(ta);
    add(tf);
   tf.addActionListener(this);
   tf.requestFocus();
  }
    public void actionPerformed(ActionEvent e)
     {
      
       if(e.getSource()==tf)
         {  cha=tf.getText();
             if(cha=="god"){a=ch[0];}
             if(cha=="good"){a=ch[1];}
             if(cha=="bat"){a=ch[2];}
              
                   ta.append(tf.getText() + " " + a);  

              tf.setText(" ");    
              repaint();
              
          }
              
     }
}

回复列表 (共4个回复)

沙发

首先你的类名就是错的啊,不能包含空格。
至于程序为什么不能实现,我也不是很清楚啊,因为我也是新手哦!

板凳


请有能力的人士帮帮手吧!!!!

3 楼

比较两个对象是否相等用 equals(Object obj)方法 ,不要用 == 

if(cha.equals("god"))

4 楼

[quote]比较两个对象是否相等用 equals(Object obj)方法 ,不要用 == 

if(cha.equals("god"))[/quote]

equals() 是比较对象的内容相等

if(cha=="god"){a=ch[0];}
if(cha=="good"){a=ch[1];}
if(cha=="bat"){a=ch[2];}

都改为
if(cha.equals("god"){
a=ch[0];
}
if(cha.equals("good"){
a=ch[1];
}
if(cha.equals("bat"){
a=ch[2];
}

if(cha.equals(eng[0]){
a=ch[0];
}
if(cha.equals(eng[1]){
a=ch[1];
}
if(cha.equals(eng[2]){
a=ch[2];
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册