实验一 Java开发环境的熟悉
实验一 Java开发环境的熟悉
实验一 Java开发环境的熟悉
实验目的
- 命令行下Java程序开发
- idea下Java程序开发、调试
- 通过命令行和Eclipse两种方式实现在idea下练习调试程序
实验内容及步骤
(一)使用JDK编译、运行简单的Java程序
- 创建以自己学号命名的文件夹
- 进入实验文件夹编写Hello的代码
package lxs;
import java.util.Scanner;
public class Hello{
public static void main(String[] args){
System.out.println("Input your first name, please:");
Scanner s = new Scanner(System.in);
String name = s.next();
System.out.println("Hello " + name + " !");
}
}
- 输入
javac -d . Hello.java
命令编译代码,输入java lxs.Hello
命令运行程序 - 项目结果如下图所示
(二)idea下Java程序开发、调试
- 创建项目并新建类
- 新建一个文件并进行代码编写
package lxs;
public class HelloJDB {
public static void main(String[] args) {
int i = 5;
int j = 6;
int sum = add(i, j);
System.out.println(sum);
sum = 0;
for(i=0; i< 100; i++)
sum += i;
System.out.println(sum);
}
public static int add(int augend, int addend){
int sum = augend + addend;
return sum;
}
}
- 运行结果如图
- 代码调试
-
设置单步断点
-
设置条件断点
-
(三)小练习
判断一个数是不是回文数,数从命令行输入,并进行测试
- 代码
import javax.swing.JOptionPane;
public class Demo01
{
public static void main(String args[])
{
loopNumber();
}
static void loopNumber(){
int number=0,d5,d4,d3,d2,d1;
String str=JOptionPane.showInputDialog("输入一个1至99999之间的数");
number=Integer.parseInt(str);
if(number<100000&&number>0) //判断number在1至99999之间的条件
{
d5=number/10000; //计算number的最高位(万位)d5
d4=(number/1000)%10 ; //计算number的千位d4
d3=(number/100)%10 ; //计算number的百位d3
d2=(number%100)/10;
d1=number%10;
if(d5 !=0) //判断number是5位数的条件
{
System.out.println(number+"是5位数");
if(d5 ==d1 && d4 == d2) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d5 == 0 && d4 != 0) //判断number是4位数的条件
{
System.out.println(number+"是4位数");
if(d1 ==d4&&d2==d3) //判断number是回文数的条件码
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d5 == 0&&d4 == 0&&d3 !=0) //判断number是3位数的条件
{
System.out.println(number+"是3位数");
if(d3 == d1) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d2!=0)
{
System.out.println(number+"是2位数");
if(d1==d2)
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d1!=0)
{
System.out.println(number+"是1位数");
System.out.println(number+"是回文数");
}
}
else
{
System.out.printf("\n%d不在1至99999之间",number);
}
}
}
- 命令行测试
-
输入一个数
-
正常情况
-
边界情况
-
异常情况
-
- idea测试
遇到问题及解决方案
- 问题一:在设置断点之后,一直next,但到最后却无输出,即使重复调试、不断更替断点位置、再单步调试,始终在最后没有结果
-
问题一解决方案:开始搜了一下
idea中设置断点无输出
,但搜索结果却大抵是断点无效
或者其他,好不容易找到一个通过选项栏tools
中找寻Debugging
再进行下一步操作,却发现没有Debugging这一栏,于是重新回到代码中,在不断调试反复操作尝试中发现了console
这一按钮,在每次断点调试完后,发现原本的空白在调试的最后一瞬间跳出输出了。 -
总结:万变不离其宗,要想解决代码出现的问题,不管进行了何种查阅,最终仍应回到代码中不断调试。
统计PSP(Personal Software Process)时间:
步骤 | 耗时 | 百分比 |
---|---|---|
设计 | 30 | 30% |
代码实现 | 20 | 20% |
测试 | 20 | 20% |
分析总结 | 30 | 30% |
实验小结
本次实验在Ubuntu和Windows系统的idea中完成,学会了如何新建文件夹设置目录,同时明白了如何在idea上设置断点并进行单步、条件调试等操作。