maoxiaolu 2009-01-16 09:51
浏览 209
已采纳

上学时,java基础课上的一个例子,我忘了,大家记得不?

上学时,java基础课上的一个例子,我忘了,大家记得不?

比如有一个类 A.class
在cmd 下输入 java A

然后在屏幕命行上显示几行文字

1.计算乘法
2.退出
.........

然后你在命令行下接着能输出 1 2 3 回车
命令行就能返回结果 6

输入 2回车 就退出程序

就是这样一个例子,还是上学时的,发现自己竟然想不起来怎么实现的。天天学习各种框架, 可是连上学时学的基础都想不起来了, 真是惭愧。
[b]问题补充:[/b]
草草的改一下 异常兄的

[code="java"]
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Test7 {

public static void main(String[] arg){   
    System.out.println("1.one");   
    System.out.println("2.ext");   
     while(true){   
        String a;
        try {

            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

            if((a=br.readLine())!=null){
                if(a=="1"){   
                       System.out.println("16624478");    
                 }else if(a=="2"){   
                        break;   
                 }
            }


        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }   

     }   
    } 

}
[/code]

没有截获到命令

草草的改一下 taopian兄的
[code="java"]
import java.util.Scanner;

public class Test6{

public static void main(String args[]) {

System.out.println("1.计算乘法 ");

System.out.println("2.退出 ");

System.out.println("请选择:");

Scanner scanner = new Scanner(System.in);   

String choose = scanner.next();   


if (choose.equals("1")) {   
    // String num1 = scanner.next();   
    // String num2 = scanner.next();   

    // int n1 = Integer.parseInt(num1);   
    // int n2 = Integer.parseInt(num2);   

    System.out.println("n1 * n2");   
}

}

}
[/code]

不过只能计算一遍,我记得还可以多次计算直到按2退出。

[b]问题补充:[/b]
认真的结合两位的指点改一下,应该是这样了,谢谢。

[code="java"]
import java.util.Scanner;

public class Test6{
public static void main(String args[]) {

System.out.println("1.计算乘法 ");

System.out.println("2.退出 ");

System.out.println("请选择:");

Scanner scanner = new Scanner(System.in);   
String choose = "";   
String[] a;
int n1,n2;

while(true) {
  choose = scanner.next();

    if(choose.equals("2"))break;        
    if((a = choose.split("\\*")).length==2){
      try{
        n1 = Integer.parseInt(a[0]);
        n2 = Integer.parseInt(a[1]);
        System.out.println(choose + " = "+ (n1*n2));}catch(Exception e){}           
    }
}   

}
}

[/code]

  • 写回答

6条回答 默认 最新

  • 桃片 2009-01-16 10:33
    关注

    按照你的要求,再改了一下:

    [code="java"]
    public static void main(String args[]) {
    Scanner scanner = new Scanner(System.in);

        String choose = null;
    
        while (!"2".equals(choose)) {
            System.out.println("1.计算乘法 ");
            System.out.println("2.退出 ");
            System.out.println("请选择:");
    
            choose = scanner.next();
    
            if ("1".equals(choose)) {
                String num1 = scanner.next();
                String num2 = scanner.next();
    
                int n1 = Integer.parseInt(num1);
                int n2 = Integer.parseInt(num2);
    
                System.out.println(n1 * n2);
            }
        }
    }
    

    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 关于#python#的问题:自动化测试