gpt4 book ai didi

java - 在java小程序中指定文本字段的范围

转载 作者:行者123 更新时间:2023-12-01 14:41:31 25 4
gpt4 key购买 nike

这是我发布的代码:

          import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/* <applet code="front" width=500 height=500></applet> */
public class front extends Applet implements ActionListener {
String msg="";
TextArea text,text1;
TextField txt;
Button load, enter;

public void init() {
enter=new Button("Enter");
load=new Button("Load");
txt=new TextField(5);
text=new TextArea(10,15);

add(load);
add(text);

add(txt);
add(enter);

load.addActionListener(this);
txt.addActionListener(this);
enter.addActionListener(this);
}

public void actionPerformed(ActionEvent ae)
{
String str = ae.getActionCommand();
if(str.equals("Load")) {
msg = "You pressed Load";
} else {
if(txt.getText().toString().equals ("6")) {
msg="Set the text for 6";
text.setText("Text");
} else {
msg="Invalid number";
text.setText("");
}
}
repaint();
}

public void paint(Graphics g) {
g.drawString(msg,350,250);
}
}

正如你所看到的,当文本字段中的值等于 6 时,它会显示一条消息。但现在我希望仅当该消息在 5-6 范围内时才显示该消息。所以我尝试了以下代码

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/* <applet code="front" width=500 height=500></applet> */
public class front extends Applet implements ActionListener {
String msg="";
TextArea text,text1;
TextField txt;
Button load, enter;

public void init() {
enter=new Button("Enter");
load=new Button("Load");
txt=new TextField(5);
text=new TextArea(10,15);

add(load);
add(text);

add(txt);
add(enter);

load.addActionListener(this);
txt.addActionListener(this);
enter.addActionListener(this);
}

public void actionPerformed(ActionEvent ae)
{
String str = ae.getActionCommand();
if(str.equals("Load")) {
msg = "You pressed Load";
} else {

String a = txt.getText();
int a1=Integer.parseInt(a); //I also used Integer.valueOf(a)
if(a1>="5"&&a1<="6")
{
msg="Set the text";
text.setText("Text");
} else {
msg="Invalid number";
text.setText("");
}
}
repaint();
}

public void paint(Graphics g) {
g.drawString(msg,350,250);
}
}

但是当我编译此代码时,出现以下错误:

operator >= cannot be applied to int, java.lang.String operator <= cannot be applied to int, java.lang.String

我知道 getText() 返回一个字符串,因此我使用 parseInt 将其转换为整数,但我无法理解该错误。

最佳答案

您正在尝试将 int 与字符串值进行比较。

  if(a1>="5"&&a1<="6") // 5 and 6 are string representation whereas a1 is int

需要

   if(a1>=5 && a1<=6)  // 5 and 6 are int representation

注意:如果你想比较字符串,请使用.equals()。

关于java - 在java小程序中指定文本字段的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15910433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com