20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

一、实验内容及步骤

(一)使用JDK编译、运行简单的java程序
命令行下的程序开发

步骤:打开cmd,建立HelloWorld文件夹,在文件夹下面建立java文件。进入java文件开始编写程序。

(二)使用IDEA编辑、编译、运行、调试Java程序

1、新建「HelloJDB」类,输入如下代码:

import java.util.Scanner;
public class Hello {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入名字:");
        String name=new String(scanner.nextLine());
        System.out.println("Hello"+name);
    }
}

2、在需要设置断点的一行左侧单击鼠标,出现红色圆点。比如如下在第六行设置了断点,
在上方Run菜单找到Debug...进行单步调试:

截止到断点运行结果如下:
image

二、练习:实现四则运算。

『要求』:通过命令行和IDEA两种方式实现,在IDEA下练习调试程序。

设计思路:
1.对于四则运应采用BigDecimal进行实现。
2.接受用户输入并进去相应的程序段。
代码如下:

import java.util.Scanner;
import java.math.BigDecimal;
public class sizeyunsuan {
    public static void main(String[] args) {
        String name1="加法";
        String name2="减法";
        String name3="乘法";
        String name4="除法";
        Scanner scanner=new Scanner(System.in);
        System.out.printf("开始四则运算%n");
        System.out.printf("选择加法、减法、乘法、除法:");
        String str=new String(scanner.nextLine());
        System.out.printf("请输入数字,两数字以空格分割:");
        if(name1.equals(str)){
            BigDecimal a=new BigDecimal(scanner.nextFloat());
            BigDecimal b=new BigDecimal(scanner.nextFloat());
            System.out.printf("结果是%f%n",a.add(b));
        }
        else if(name2.equals(str)){
            BigDecimal a=new BigDecimal(scanner.nextFloat());
            BigDecimal b=new BigDecimal(scanner.nextFloat());
            System.out.printf("结果是%f%n",a.subtract(b));
        }
        else if(name3.equals(str)){
            BigDecimal a=new BigDecimal(scanner.nextFloat());
            BigDecimal b=new BigDecimal(scanner.nextFloat());
            System.out.printf("结果是%f%n",a.multiply(b));
        }
        else if(name4.equals(str)){
            BigDecimal a=new BigDecimal(scanner.nextFloat());
            BigDecimal b=new BigDecimal(scanner.nextFloat());
            System.out.printf("结果是%f%n",a.divide(b));
        }
        else System.out.printf("输入不合法");
    }
}

三、实验过程中遇到的问题
在接受用户输入的时候

if String name=="加法"

是无法通过运行的,因为我们知道String是建立一个对象,只有用户的输入和字符串“加法”指向同一个对象的时候才成立,但显然所指的并不是同一个对象,所以后面改成了

        String name1="加法";
        String name2="减法";
        String name3="乘法";
        String name4="除法";
        ...;
        if(name1.equals(str));
        ...;
        else if(name2.equals(str));
        ...;
        else if(name3.equals(str));
        ...;
        else if(name4.equals(str));
        ....;

程序能够成功运行。

原文地址:https://www.cnblogs.com/fengxingck/p/6939627.html