20155332 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉

时间:2024-01-10 16:42:44

实验内容

  • 使用JDK编译、运行简单的Java程序;

  • 使用IDEA 编辑、编译、运行、调试Java程序。

实验知识点

JVM、JRE、JDK的安装位置与区别;

命令行运行javac;java;javac -cp; java -cp;

PATH,CLASSPATH,SOURCEPATH的设定方法与应用;

包管理:package;import;javac -d ;

IDEA管理Java项目,调试:断点、单步执行等;

Java基础语法:类型与类型转换;变量;运算符;流程控制等;

JDK帮助文档的使用。

实验步骤

(一)终端命令行下Java程序开发

步骤一:在终端中新建实验目录
按快捷键contrl + alt + T打开macOS终端
输入cd Code命令,发现进入Code目录失败,原因是Code目录根本不存在(什么嘛你们之前早都建好的怎么不说一声>_<)于是输入mkdir Code命令新建Code目录再cd Code一下进入就好啦~
输入mkdir 20155332test建立以我学号命名的实验目录
输入cd 20155332test进入实验目录
输入mkdir exp1建立第一个实验目录
输入cd exp1进入实验一目录
输入pwd命令查看当前工作路径,如下图所示:
步骤二:vim下编译、运行Java程序
输入vim Hello.java编辑Hello.java,按下i并输入以下代码:

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 + " !");
}
}

然后按esc退出编辑模式,再按:输入wq后回车保存并退出
输入javac -d . Hello.java命令编译代码,输入java Hello命令运行程序。
输入java Hello命令运行

(二)IDEA下Java程序开发、调试

步骤一:在IDEA中新建Java程序
macOS下打开IDEA:
新建Java项目
进入该项目:
新建「HelloJDB」类,输入如下代码

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;
}
}

步骤二:调试
设置断点:在需要设置断点的一行左侧灰色区域单击鼠标,出现红色圆点,比如我想在第8行设置断点:
开始调试:按ctrl + alt + R快捷键或在上方菜单栏Run里点击Debug...进行单步调试

(三)练习(通过命令行和IDEA两种方式实现,自己的学号后两位与题目总数取余的结果再加上1就是自己要完成的题号,在IDEA下练习调试程序)

实现求正整数1-N之间所有质数的功能,并进行测试。
代码:

import java.util.Scanner;
public class PrimeNumber {
public static int[] getPrimeNumber(int n){
int[] retArr=new int[n];
boolean isPrime; //isPrime作为当前这个数是否为质数的标记位
for(int i=2;i<n;i++){
isPrime=true;
for(int j=2;j<i;j++){
if(i%j==0){
isPrime=false;
break;
}
}
if(isPrime){
retArr[i]=i;
}
}
return retArr;
}
public static void main(String[] args) {
Scanner n=new Scanner(System.in);
System.out.print("请输入一个整数:");
int[] retArr=getPrimeNumber(n.nextInt());
for(int i=0;i<retArr.length;i++){
if(retArr[i] !=0){
System.out.println(retArr[i]);
}
}
}
}