Java 整数比较与对话框交互实战:输入处理与条件判断全解析

一、原题完整代码呈现
以下是计算机二级Java考试中关于整数比较与对话框交互的典型题型,主要考察变量定义、类型转换及程序退出,包含4处需要填写的空白(标记为//*********Found********):
import javax.swing.JOptionPane;
public class Java_3 {
public static void main( String args[] ){
String firstNumber, //存储第1个输入数据
secondNumber, //存储第2个输入数据
//*********Found********
_____________________; //字符串输出
int number1, //用来比较的第1个int型数据
number2; //用来比较的第2个int型数据
//以字符串格式读输入数据
firstNumber =
JOptionPane.showInputDialog( "请输入第1个整数:" );
secondNumber =
JOptionPane.showInputDialog( "请输入第2个整数:" );
//将字符串转换为int整数
//*********Found********
number1 = Integer.parseInt( __________________________ );
//*********Found********
number2 = Integer.parseInt( __________________________ );
//用空字符串初始化结果变量
result = "";
if ( number1 == number2 )
result = number1 + " == " + number2;
if ( number1 != number2 )
result = number1 + " != " + number2;
if ( number1 < number2 )
result = result + "\n" + number1 + " < " + number2;
if ( number1 > number2 )
result = result + "\n" + number1 + " > " + number2;
if ( number1 <= number2 )
result = result + "\n" + number1 + " <= " + number2;
if ( number1 >= number2 )
result = result + "\n" + number1 + " >= " + number2;
//显示结果
JOptionPane.showMessageDialog(
null, result, "比较结果",
JOptionPane.INFORMATION_MESSAGE);
//*********Found********
___________________.exit( 0 );
}
}二、空白处逐一解析与解答
1. 第一处空白:定义存储比较结果的字符串变量
答案:result
//*********Found********
result; //字符串输出解析:
程序需要一个字符串变量存储比较结果(如“3 == 3”“5 > 2”等),后续代码中多次使用result变量(如result = ""、result = number1 + " == " + number2),因此需在此处定义String result,填写result。
2. 第二处空白:将第一个输入字符串转换为整数的参数
答案:firstNumber
//*********Found********
number1 = Integer.parseInt( firstNumber );解析: firstNumber是通过JOptionPane.showInputDialog获取的第一个整数的字符串形式,Integer.parseInt方法需要接收该字符串参数将其转换为int类型,赋值给number1,因此填写firstNumber。
3. 第三处空白:将第二个输入字符串转换为整数的参数
答案:secondNumber
//*********Found********
number2 = Integer.parseInt( secondNumber );解析:
类似第二处,secondNumber是第二个整数的字符串输入,需通过Integer.parseInt转换为int类型并赋值给number2,因此填写secondNumber。
4. 第四处空白:程序退出的类名
答案:System
//*********Found********
System.exit( 0 );解析: exit(0)是java.lang.System类的静态方法,用于终止当前运行的Java虚拟机(程序退出)。调用该方法需通过System类名,因此填写System。
三、完整正确代码
四、程序功能与运行说明
程序功能
该程序通过对话框与用户交互,实现两个整数的全面比较,核心功能包括:
- 弹出输入对话框,接收用户输入的两个整数(以字符串形式)
- 将输入的字符串转换为整数类型(
int) - 通过6种比较运算符(
==、!=、<、>、<=、>=)判断两数关系 - 将所有成立的关系以字符串形式拼接,通过消息对话框展示结果
- 程序运行结束后正常退出
运行说明
输入阶段:
- 程序启动后,首先弹出输入框“请输入第1个整数:”,用户输入第一个整数(如
5) - 接着弹出第二个输入框“请输入第2个整数:”,用户输入第二个整数(如
3)
- 程序启动后,首先弹出输入框“请输入第1个整数:”,用户输入第一个整数(如
转换与比较:
- 输入的字符串“5”和“3”分别通过
Integer.parseInt转换为整数5和3 - 程序通过6个
if语句判断关系,成立的关系会被拼接到result中
- 输入的字符串“5”和“3”分别通过
结果展示:
消息对话框标题为“比较结果”,内容为所有成立的关系:
5 != 3 5 > 3 5 >= 3
程序退出:
- 点击对话框“确定”按钮后,程序通过
System.exit(0)终止运行
- 点击对话框“确定”按钮后,程序通过
五、核心知识点总结
对话框交互(JOptionPane)
- 输入对话框:
JOptionPane.showInputDialog(String message)用于获取用户输入,返回值为String类型(即使输入数字也以字符串存储) - 消息对话框:
JOptionPane.showMessageDialog(Component parent, Object message, String title, int messageType)用于展示结果,本例中parent为null(无父组件),messageType为信息图标
- 输入对话框:
字符串与整数的转换
- 核心方法:
Integer.parseInt(String s)将数字字符串转换为int类型(若字符串非数字格式,会抛出NumberFormatException) - 转换意义:输入的原始数据是字符串,必须转换为数值类型才能进行比较运算
- 核心方法:
条件判断与字符串拼接
- 比较运算符:
==(等于)、!=(不等于)、<(小于)、>(大于)、<=(小于等于)、>=(大于等于)用于判断两数关系 - 字符串拼接:通过
+运算符将整数与字符串(如" == ")拼接,形成可读性强的结果文本;\n表示换行,使结果更清晰
- 比较运算符:
程序退出
System.exit(0):终止Java虚拟机(JVM),参数0表示正常退出(非0表示异常退出)- 必要性:Swing程序中,若未显式退出,可能因后台线程导致程序无法完全终止,
System.exit(0)确保程序彻底结束
六、常见错误与应试技巧
常见错误分析
- 第一处空白变量名错误:写成其他名称(如
output),导致后续result变量未定义(编译报错) - 第二/三处空白转换参数错误:参数写反(
secondNumber给number1)或写成变量名拼写错误(如firstNum) - 第四处空白退出类名错误:写成
JOptionPane.exit(exit是System的方法,非JOptionPane)或system(Java区分大小写,需大写S)
- 第一处空白变量名错误:写成其他名称(如
应试技巧
- 变量定义:“结果字符串叫result,前面声明后面用,类型String不能忘,前后一致才正确”
- 类型转换:“输入字符串转整数,Integer.parseInt来帮助,参数就是输入串,first对应number1,second对应number2”
- 程序退出:“程序结束要退出,System.exit(0)记清楚,0是正常退出码,虚拟机终止靠它促”
- 调试提示:若转换时报错,检查输入是否为纯数字(如含字母则无法转换);若结果异常,检查比较运算符是否正确
通过本题,我们掌握了对话框输入输出、字符串与整数转换、多条件判断及程序退出的综合技能。这类题型是“用户交互+数据处理”模式的典型体现,对理解Java基础语法与简易GUI结合的应用具有重要意义。