Java 接受输入(JOptionPane) 并计算结果
请问各位大大这种题目怎么实现的?用javax.swing类的JOptionPane接受用户输入一个计算表达式(showInputDialog())例如:“88*3=”然后...
请问各位大大 这种题目怎么实现的?
用javax.swing类的JOptionPane接受用户输入一个计算表达式(showInputDialog())
例如:“88*3=”
然后在命令行输出计算结果
*号换成 +、-、/要求都要可以的....... 展开
用javax.swing类的JOptionPane接受用户输入一个计算表达式(showInputDialog())
例如:“88*3=”
然后在命令行输出计算结果
*号换成 +、-、/要求都要可以的....... 展开
2个回答
展开全部
static int ab;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = JOptionPane.showInputDialog(null, "请输入一个表达式:");
String s1 = s.substring(0,s.length() - 1);
char[] c = {'+','-','*','/'};
char c1 = find(s1,c);
int a = Integer.parseInt(s1.substring(0, ab-1));
int b = Integer.parseInt(s1.substring(ab+1, s1.length()));
System.out.println(result(a,b,c1));
}
public static char find(String s ,char[] c) {
for(int i = 0; i < s.length(); i++)
for(int j = 0; j < c.length; j++)
if(s.charAt(i)==c[j]) {
ab = i;
return c[j];
}
return '+';
}
public static int result(int a,int b,char c) {
switch(c) {
case '+' : return a+b;
case '-' : return a-b;
case '*' : return a*b;
default : return a/b;
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = JOptionPane.showInputDialog(null, "请输入一个表达式:");
String s1 = s.substring(0,s.length() - 1);
char[] c = {'+','-','*','/'};
char c1 = find(s1,c);
int a = Integer.parseInt(s1.substring(0, ab-1));
int b = Integer.parseInt(s1.substring(ab+1, s1.length()));
System.out.println(result(a,b,c1));
}
public static char find(String s ,char[] c) {
for(int i = 0; i < s.length(); i++)
for(int j = 0; j < c.length; j++)
if(s.charAt(i)==c[j]) {
ab = i;
return c[j];
}
return '+';
}
public static int result(int a,int b,char c) {
switch(c) {
case '+' : return a+b;
case '-' : return a-b;
case '*' : return a*b;
default : return a/b;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询