ubuntu16.04下配置JDK 1.8+安装Java EE,并实现最大子数组算法
软工第二次作业:
1、在个人电脑中安装一个集成开发环境(Microsoft Visual Studio、Eclipse或其它工具均可),要求该环境能够提供单元自动测试功能;
2、记录安装过程,并将全部内容发表在博客中;
3、实现最大子数组和算法,并将该段代码上传至Coding.net系统中;
4、自行选择合适的覆盖标准并设计测试用例对该段代码进行测试,并将测试结果发布在博客中,结果以如下表格形式完成。
本文为干货,希望有用,欢迎评论。
由于我的labtop上安装的是ubuntu16.04系统,其上不支持VS,固决定安装Eclipse以便日后开发。下面介绍ubuntu16.04系统下安装Eclipse的具体步骤:
- 下载jdk:jdk-8u101-linux-x64.tar.gz
- 下载Eclipse:eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz(下载资源可移步官网)
- 将jdk解压到/usr/local文件夹中。双击压缩文件解压到/home目录下,后将文件通过终端命令转移到/usr/local目录下:mkdir /usr/local———创建一个新文件夹
(另外可以直接用终端命令sudo tar zxvf jdk-8u101-linux-x64.tar.gz -C /usr/local达到上述目的。需要注意的是网上下载的压缩文件默认保存在/home/download下,如果直接用上述命令从这一目录解压文件到目标目录下,就会提示找不到这一文件,我试着先把文件解压到/home下,再通过root权限移动文件,结果就成功了,至于原因还请知道的大神不吝赐教~)
- 配置jdk环境变量。命令:sudo vim /etc/profile———使用vim打开文件,并在文件尾添加如下语句:
JAVA_HOME=/opt/jvm/jdk1..0_77 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
查看是否安装成功:java -version,若显示如下,则说明安装成功。
- 安装Eclipse。将其用同样的方法解压到/usr/local文件夹中。
- 创建Eclipse桌面快捷方式。在中端输入:sudo gedit /usr/share/applications/eclipse.desktop——弹出文本编辑器,忽略终端警告,在文本编辑器中输入:
[Desktop Entry] Type=Application Name=Eclipse Comment=Eclipse Integrated Development Environment Icon=/usr/lib/eclipse/icon.xpm Exec=/usr/lib/eclipse/eclipse Terminal=false
保存并退出,安装完成。
- 之后在文件夹中找到eclipse图标,双击即可打开。
(补充:在这里安利一款linux下功能强大的截图软件ksnapshot。在命令行输入:sudo apt-get install ksnapshot,等待安装完成之后就可以自由自在的截屏了~)
另外,百度了一下什么叫“单元自动测试”,这里介绍的挺详细的:http://www.infoq.com/cn/articles/road-of-automated-unit-testing-practices/,但我还是一头雾水,有兴趣的朋友可以看一下。
最大子数组和算法实现以及单元测试
代码实现代码:
package test;
import java.util.*;
public class MaxSubArraySum {
public static void main(String []args) {
int len, res;
Scanner scan = new Scanner(System.in);
len = scan.nextInt();
int []a = new int [len];
for(int i = 0; i < len; i++)
a[i] = scan.nextInt();
res = Method(a, len);
System.out.println("该数组的最大子数组和为:" + res);
} static int Method(int []a, int len) {
int i;
int MaxSum = 0;
int CurSum = 0;
for(i = 0; i < len; i++){
CurSum += a[i];
if(CurSum > MaxSum)
MaxSum = CurSum;
if(CurSum < 0)
CurSum = 0;
}
return MaxSum;
}
}
单元测试代码:
package test; import static org.junit.Assert.*; import org.junit.After;
import org.junit.Before;
import org.junit.Test; public class MaxSubArraySumTest { @Before
public void setUp() throws Exception {
} @After
public void tearDown() throws Exception {
} @Test
public void testMethod1() {
int len = 5;
int []a = {1,2,3,4,1};
System.out.println("该数组的最大子数组和为:" + MaxSubArraySum.Method(a, len));
}
@Test
public void testMethod2() {
int len = 5;
int []a = {1,2,3,-4,-1};
System.out.println("该数组的最大子数组和为:" + MaxSubArraySum.Method(a, len));
}
@Test
public void testMethod3() {
int len = 4;
int []a = {1 ,4 ,-5, 6};
System.out.println("该数组的最大子数组和为:" + MaxSubArraySum.Method(a, len));
}
@Test
public void testMethod4() {
int len = 4;
int []a = {1, 0, -1, 2, -1, 3};
System.out.println("该数组的最大子数组和为:" + MaxSubArraySum.Method(a, len));
} }
运行结果:
代码托管:https://coding.net/u/Drogheda/p/SchoolWork/git/blob/master/README.md
ubuntu16.04下配置JDK 1.8+安装Java EE,并实现最大子数组算法的更多相关文章
- Ubuntu16.04下配置ssh免密登录
Ubuntu16.04下配置ssh免密登录 环境准备:新建两台虚拟机,而且两台虚拟机上都装有Ubuntu16.04的系统,使两台虚拟机之间保持互通状态.分别为两台虚拟机命名为A,B.假设我们要使A虚拟 ...
- Linux入门(16)——Ubuntu16.04下配置sublime text 3使用markdown
sublime text 3安装两个插件: MarkDown Editing OmniMarkupPreviewer 有的人使用 MarkDown Editing markdownpreviewer ...
- Windows 7下配置JDK环境变量和Java环境变量配置
下面来介绍一下Java环境变量配置,是在Windows 7下配置JDK环境变量. 方法/步骤 1 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为:C:\Program Fil ...
- ubuntu16.04下配置apache2与php
系统版本:ubuntu16.04 命令均在终端中输入,用浏览器测试 //安装apache2命令 sudo apt install apache2 //测试是否安装成功 浏览器地址栏输入“localho ...
- ubuntu16.04下配置caffe无GPU
1. 安装依赖项 1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5- ...
- Ubuntu16.04下配置VScode的C/C++开发环境
博客转载:https://blog.csdn.net/weixin_43374723/article/details/84064644 Visual studio code是微软发布的一个运行于 Ma ...
- 转:Ubuntu16.04下配置php+vscode+xdebug开发环境
转:https://blog.csdn.net/its_my_dream/article/details/78549619 操作系统是Ubuntu16.04,首先要安装和配置php运行环境,我这里用的 ...
- 2018.4.1 Ubuntu16.04 下配置Tomcat服务器以及设置dingshi启动
Tomcat自启动的设置技巧 以root用户登录系统: cd /etc/rc.d/init.d/ vi tomcat #!/bin/sh # # tomcat: Start/Stop/Restart ...
- ubuntu16.04下配置静态ip
ubuntu下配置静态ip 1.先获取ip基本信息 ifconfig enp3s0 Link encap:以太网 硬件地址 2c:4d:54:65:de:6e inet 地址:192.168.199. ...
随机推荐
- solr5.2 mysql 增量索引
前提:数据库里数据进行增删改操作时,相应的solr需要修改或者新建索引,之前从数据库中导入数据并创建索引的操作是全量创建,如果本身数据库数据量非常大,就需要增量创建索引 1./usr/local/sr ...
- 关于 windows 下 node_modules\node-sass\vendor 的报错解决方法
项目git clone下来之后,运行npminstall, npm start报错代码如下: ERROR in ENOENT: no such file or directory, scandir ' ...
- static 使用要注意的地方
protected static string headimg = string.Empty; 这里用到 static ,下面如果这样写 object himg = DBUtility.DbH ...
- http://www.cnblogs.com/holly8/p/6178828.html
http://www.cnblogs.com/holly8/p/6178828.html
- iOS duplicate symbol 变量 in 类名 报错
该错误信息是我在一个.h文件里申明了公共变量,然后在其他类里重复使用. Build Settings ->No Common Blocks默认为YES,编译器就报错了,需要修改Build Set ...
- Python开发【十二章】:ORM sqlalchemy
一.对象映射关系(ORM) orm英文全称object relational mapping,就是对象映射关系程序,简单来说我们类似python这种面向对象的程序来说一切皆对象,但是我们使用的数据库却 ...
- shortcuts on Windows and MacOS
我现在使用Window 10与MacOS,发现各千秋,也发现Window向MacOS学习并借鉴了一些东西. MacOS有一点非常好的地方是,它可以不怎么使用鼠标,而通过TouchPad便可完成.体验起 ...
- PPT图片双屏抽奖系统现场主要操作流程介绍
目录 第一步:前期准备工作 第二步:现场预备与辅助展示工作 第三步:现场正式抽取工作 PPT图片双屏抽奖系统-现场抽奖视频实录 第一步:前期准备工作 把第二个步骤优化处理制作好的PPT文件 [图片.p ...
- 关于git自己所学到的东西
1.什么是Git(傻瓜内容跟踪器) Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 Git 是 Linus Torvalds (Linus在1991年创建了 ...
- 一张图轻松搞懂javascript event对象的clientX,offsetX,screenX,pageX区别
总是会被javascript的event对象的clientX,offsetX,screenX,pageX 弄得头晕,于是决定做个图来区分一下(画得我手那个酸呀....) 先总结下区别: event.c ...