20165334 实验一 Java开发环境的熟悉

20165334 实验一 Java开发环境的熟悉

实验内容

1、使用JDK编译、运行简单的java程序

2、使用IDEA编辑、编译、运行、调试java程序

实验步骤

1、使用JDK编译、运行简单的java程序

步骤

  • 使用mkdir建立学号目录
  • 使用vim Hello编写代码
  • 使用javac -d . Hello.java编译代码
  • 使用java ltl.Hello运行代码

截图如下

2、使用IDEA编辑、编译、运行、调试java程序

  • 编写HelloJDB调试项目
  • 设置断点
  • 单击菜单「Run」->「Debug...」(或使用Alt+Shift+F9快捷键)开始调试Java程序
  • 单步运行:Step IntoStep Over
  • 设置条件断点
  • 方法断点:有时候我们怀疑某个方法出错了,就可以设置方法断点。把光标移到方法中的任一行,使用菜单「Run」->「Toggle Method Breakpoint」

截图如下:

练习题: 产生一个随机数,让用户猜测,猜错了告诉用户是大了还是小了。 并进行测试(正常情况,异常情况,边界情况)

代码如下

第一次代码

//键盘输入,没有考虑边缘情况
import java.util.Random;
import java.util.Scanner;
public class rdtexttwo {
    public static void main(String[] args) {
        Random rd = new Random();
        int a = rd.nextInt(100);

        System.out.println("请输入100以内的数猜:(注意你一共有三次机会)");
        Scanner input = new Scanner(System.in);

        for (int i = 0; i < 3; i++) {
            int b = input.nextInt();
            if (b == a) {
        
                System.out.println("恭喜你猜对了,兄弟你可以去买彩票了!");
                break;
            }
            else if (b < a) {
                System.out.println("哎呀,你猜的有点小了,可以猜大点");
            }
            else
                System.out.println("你猜的数有点大");
        }
    }

}
//命令行输入
import java.util.Random;
public class rdtextone {
	public static void main(String args[]) {
		Random rd=new Random();
		int a=rd.nextInt(100);
                int b;
		b=Integer.parseInt(args[0]);
		System.out.println("请输入100以内要猜的数:");
		if(b==a) {
			System.out.println("恭喜你猜对了,你可以去买彩票了");
		}
		else if (b<a) {
			System.out.println("哎呀,你猜的数有点小");
		}
		else {
			System.out.println("你猜的数有点大");
		}
	}
}

运行截图

第二次修改考虑边缘情况
由于学了第七章的try -catch语句,便设计了防止用户输入错误的功能。

代码如下

import java.util.Random;
import java.util.Scanner;
public class rdtext {
    public static void main(String[] args) {
        Random rd = new Random();
        int a = rd.nextInt(100);
        System.out.println("请输入100以内的数猜:(注意你一共有三次机会)");
        Scanner input = new Scanner(System.in);
            try {
                for (int i = 0; i < 3; i++) {
                    int b = input.nextInt();
                    if (b == a) {
                        System.out.println("恭喜你猜对了,兄弟你可以去买彩票了!");
                        break;
                    } else if (b < a) {
                        System.out.println("哎呀,你猜的有点小了,可以猜大点");
                    } else
                        System.out.println("你猜的数有点大");
                }
            } catch (Exception e) {
                System.out.println("输入有误,请输入100以内的数字");
            }
    }
}

运行截图

实验过程中遇到的问题

在设计猜数程序是第一次没有考虑边缘情况,第二次设计虽然解决了防止用户输入非数字的功能,但还没解决用户输入大于100的情况,我尝试用while(input.nextInt() <100),虽然解决了这个问题但引入另一个问题,当用户输入正常数字时没有运行结果,我会慢慢解决。

实验总结

边缘测试可以发现很多问题,不断测试才能设计一个完美的程序

步骤 耗时 百分比
需求分析 10min 10%
设计 20min 20%
代码实现 50min 50%
测试 10min 10%
分析总结 10min 10%
posted @ 2018-04-02 17:37  litianlong  阅读(270)  评论(4编辑  收藏  举报