20155228 实验一《Java开发环境的熟悉》实验报告

实验内容

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

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

实验要求

  • 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程;

  • 完成实验、撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等);

  • 实验报告中统计自己的PSP(Personal Software Process)时间;

  • 严禁抄袭。

实验知识点

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

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

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

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

  • Eclipse(Netbeans)管理Java项目,调试:断点、单步执行等;

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

  • JDK帮助文档的使用。

实验步骤

命令行下Java程序开发

1.进入终端:

在图形界面下鼠标右键可以打开终端,打开的终端所处的位置就是打开终端前所在文件夹的位置。或者使用快捷键ctrl+t

2.新建Code目录并进入:

home目录下输入mkdir Code新建目录Code,并输入cd Code进入Code目录。如果不在home目录下可以输入cd ~返回到home目录。输入ls可以查看当前文件夹下所有文件的名字。

3.建立并进入实验目录:

输入mkdir 20155228新建实验目录,输入cd 20155228进入实验目录,输入mkdir exp1新建实验一目录,输入cd exp1进入实验一目录。输入pwd可以查看现在所处位置。

4.新建vim文档编写代码:

输入vim Hello.java新建vim文档并进入编辑。打开文档后按a进入插入模式,输入以下代码。

 package ljp;
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 + " !");
}
}
  • 第一行代码的package使得代码在编译后将class文件放到java文件所在目录下的名为ljp文件夹中,如果没有就新建一个。

  • 第二行代码的import是调用API方法java.util.Scanner

5.编译运行代码:

输入javac -d . Hello.java编译代码,输入java ljp.Hello运行代码。

  • 编译代码的命令中-d是后面输入要编译的代码的位置,命令中.是指当前文件夹。

  • 运行代码的命令中ljp.Hello是指运行当前目录下名为ljp中的名为Hello的代码。

IDEA下Java程序开发、调试

1.新建工程和文件

运行IDEA点击create a new project,输入工程名,工程名随意写。然后在工程文件夹下的src文件夹新建文件,输入文件名,文件名也随意写下,但是在后面写public class时候需要保证公共类名与文件名相同。

2.输入代码并编译:

2 public class code0407 {
3 public static void main(String[] args) {
4 int i = 5;
5 int j = 6;
6 int sum = add(i, j);
7 System.out.println(sum);
8
9 sum = 0;
10 for(i=0; i< 100; i++)
11 sum += i;
12
13 System.out.println(sum);
14 }
15
16 public static int add(int augend, int addend){
17 int sum = augend + addend;
18 return sum;
19 }
20}

输入代码后按下ctrl+shift+f10编译代码

3.设置断点调试代码

  • 设置断点:点击行号右边空白位置即可设置断点

  • 运行当断点处:shift+f9到右上角去点那个昆虫图标也可以。

  • 运行下一行(step over):f8或者到左下角去点那个向下的箭头也可以。

  • 进入和离开函数(step in、step out)

切换到debuger栏目可以看到各个自变量在当前步骤的数值。

练习: 实现学生成绩管理功能,并进行测试。

程序的功能是对输入的学生的姓名和成绩进行排序并以成绩升序的形式进行输出。

import java.util.*;
public class code040702 {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
System.out.println("输入学生的个数:");
int num=in.nextInt();
int a,b,i,j,temp,temp2;
int[] scores=new int[100];
String[] name=new String[100];
int[] rank=new int[100];
String tempname;
for(a=0;a<num;a++)
{
rank[a]=a;
b=a+1;
System.out.printf("请输入第%d个学生的姓名和成绩:",b);
name[a]=in.next();
scores[a]=in.nextInt();
}
/*for(a=0;a<num;a++)
{
System.out.printf("%d ",scores[a]);
}*/
for(i=0;i<(num-1);i++)
{
for(j=(i+1);j<num;j++)
{
if(scores[i]>scores[j])
{
temp=scores[i];
scores[i]=scores[j];
scores[j]=temp;
temp=rank[i];
rank[i]=rank[j];
rank[j]=temp;
}
}
}
System.out.println("学生成绩升序排名");
for(a=0;a<num;a++)
{
b=rank[a];
System.out.printf("%s %d\n",name[b],scores[a]);
} }
}

运行结果截图如下:

编程中遇到的问题和解决:

编程中主要遇到的问题是如何实现学生姓名和成绩的相互关联。在开始的时候我想到的办法是定义一个学生类,其中包括学生姓名的字符串成员变量和学生成绩的整数成员变量。这里涉及到多个学生,所以需要新建多个学生类实例,通过是上网查阅发现需要使用泛型还有Arraylist,从实现上来说并不容易。所以后来改换另外一种思路,将成绩和姓名分别放入一个数组和一个字符串中。另外再新建一个标号数组用于确定名字的输出顺序,在对成绩进行排序的时候也对标号进行排序,在输出成绩的时候根据标号输出对应的名字。

PSP时间统计

步骤 耗时 百分比
需求分析 5min 8%
设计 10min 16%
代码实现 30min 50%
测试 5min 8%
总结分析 10min 16%

20155228 实验一《Java开发环境的熟悉》实验报告的更多相关文章

  1. 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...

  2. 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20175316 盛茂淞 2018-2019-2 <Java程序设计>实验一 Java开发环境的熟悉 实验报告 一.实验要求 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA ...

  3. 20165327《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...

  4. 20165205 实验一 java开发环境的熟悉 实验报告

    20165205 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘喆君 学号:20165205 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验 ...

  5. 20162327实验一Java开发环境的熟悉实验报告

    20162327 <程序设计与数据结构>第一次实验报告 基础知识 1.JDB的使用 使用JDB调试程序需要以下五个步骤: 1.设置断点 stop in 2.run 3.print 4.ne ...

  6. 实验一Java开发环境的熟悉

    实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...

  7. 20175316 盛茂淞 实验一 Java开发环境的熟悉

    20175316 盛茂淞 实验一 Java开发环境的熟悉 实验目的 使用JDK编译.运行简单的Java程序 实验要求 1.建立"自己学号exp1"的目录 2.在"自己学号 ...

  8. 20155327实验一 Java开发环境的熟悉

    20155327实验一 Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的java程序 2.使用IDEA编辑.编译.运行.调试java程序 实验步骤 1.使用JDK编译.运行简单的jav ...

  9. 20165233 实验一 Java开发环境的熟悉

    20165233 实验一 Java开发环境的熟悉 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 2.完成实验.撰写实验 ...

  10. 20155231 java实验一 Java开发环境的熟悉

    20155231 java实验一 Java开发环境的熟悉 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 完成实验.撰写实验 ...

随机推荐

  1. wait()函数的详细分析

    之前一直没太深入的去理解wait()函数,今天机缘巧合之前又看了看,发现之前没有真正的理解该函数. 众所周知,wait()函数一般用在父进程中等待回收子进程的资源,而防止僵尸进程的产生. (In UN ...

  2. mysql的增删改查

    1.启动 Navicat for MySQL, 在 MySQL – 新建连接中完成连接参数配置.2.登录到本地数据库服务器后, 连接到 test 数据库上.3.用 Create Table 建立 St ...

  3. pandas基础

    1.相关库导入 2.创建数据结构 pandas 有两个重要的数据结构: Series 和 DataFrame 创建Series数组,代表一行或一列 创建DataFrame ,代表二维数组 第一种方式: ...

  4. SSH的通讯和认证

    SSH的通讯和认证 转自:http://blog.sina.com.cn/s/blog_4e9440910100zxk0.html 之前一直对SSH的认证模棱两可,今天对SSH的通讯,认证和配置有了进 ...

  5. Python一个文件调用另外一个文件的方法

    from common.Log import MyLog as Log 写法不完善修改为 import common.Log.MyLog as Log 即可

  6. 第 7 章 Data 类型

    目录 第 7 章 Data 类型 一.创建方式 二.转时间戳 其他 第 7 章 Data 类型 @(es5) 参考了: 阮一峰javascript的标准.<javascript高级教程> ...

  7. cuda9.0编译caffe报错nvcc fatal : Unsupported gpu architecture 'compute_70'

    Tesla V100 cuda9.0 caffe编译的时候报上述错误,修改方法: CUDA_ARCH := #-gencode arch=compute_20,code=sm_20 \ #-genco ...

  8. wordpress用Elementor拖拽生成酷炫页面

    很多朋友看到wordpress网站做得很高大上,想知道是怎么做到的,其实很简单,用Elementor就能拖拽生成酷炫页面,ytkah就直接上干货了. 1.安装Elementor,到wordpress后 ...

  9. 火币网API文档——REST 行情、交易API简介

    REST API 简介 火币为用户提供了一套全新的API,可以帮用户快速接入火币PRO站及HADAX站的交易系统,实现程序化交易. 访问地址 适用站点 适用功能 适用交易对 https://api.h ...

  10. Ubuntu中Redis的安装与使用

    安装 安装Redis服务器端 apt-get install redis-server 安装完成后,Redis服务器会自动启动,我们检查Redis服务器程序. 检查Redis服务器系统进程 ps -a ...