
java
multiangle
这个作者很懒,什么都没留下…
展开
-
使用hadoop读写mysql
与mongodb相比,hadoop提供了内置的输入输出库DBInputFormat和DBOutputFormat,但是依然要使用JDBC驱动包com.mysql.jdbc.Driver。没有的可以去http://www.mysql.com/products/connector/ 下载。下下来后,只要把该包放在项目路径下即可,切莫在文件中import该包中内容,只要import java.sql.*原创 2016-11-17 18:04:30 · 3161 阅读 · 0 评论 -
将Java中的内容直接存储为二进制文件
目前有这个需求,需要将java跑好的结果持久化,但是如果一个个输出为文本文件又不太好办,因为里面东西太多太杂,所以最好的办法是直接输出为二进制文件,把数据连同存储数据的类一起存进去,就行python中的pickle类所做的一样。在网上转了一圈,大部分是讲如何输出为文本文件的,所以在经过查询和调试以后,给出我自己的方法。要实现这个功能主要有两点,一是FileOutputStream和ObjectOut原创 2016-08-02 17:38:30 · 12237 阅读 · 0 评论 -
Java学习笔记-流操作
这里主要讲从InputStream继承出来的类和Reader继承出来的类InputStream 抽象类FileInputStream 继承自InputStream, 读写本地文件,按二进制顺序读写字节 FileInputStream(String name) FileInputStream(File file)BufferedInputStream 继承自FileInputStream,原创 2016-05-15 20:10:39 · 1055 阅读 · 0 评论 -
Java学习笔记-多态
其实在看Java编程思想之前,我对多态并没有什么概念,也没觉得多态有多重要。但是看完之后才发现,多态的存在能够使得继承更加灵活。甚至可以说,如果没有多态,子类的向上转型会更困难,父类方法的调用也会更加复杂。多态的存在,可以更好的消除类之间的耦合关系,更方便的构建可扩展的程序,使得从同一父类继承的子类表现出一种共性。从这一点上说,称多态是OOP中即数据抽象和继承之后的第三种基本特征,实在是名副其实向上原创 2016-04-26 19:17:40 · 1046 阅读 · 0 评论 -
Java学习笔记-接口和抽象类
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲:一.抽象类 二.接口 三.抽象类和接口的区别抽象类在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的转载 2016-04-20 21:45:33 · 1020 阅读 · 0 评论 -
Java学习笔记-初始化
静态数据的初始化静态数据初始化的几个原则:【次数】无论创建多少个对象,静态数据只初始化一次【时机】静态初始化只有在必要时刻才会进行。只有在第一次访问静态数据或静态域时,才会初始化【与是否创建对象无关】当加载类时,就会初始化静态对象,无论是否创建该类对象【顺序】当静态与非静态对象共存时,先初始化静态对象值得注意的是,非静态对象也会在构造函数之前初始化举例代码如下//: initializat原创 2016-04-18 10:00:25 · 1029 阅读 · 0 评论 -
使用栈来实现二叉树的反转(invert)
最近在刷leetcode,碰到这样一道题这题并不难,如果用递归的话半分钟就能搞定。不过感觉递归效率比较低,因为递归可以用栈来实现,于是琢磨能不能用栈来搞定。 这是用递归的解法:// 递归算法 public TreeNode invertTree(TreeNode root) { if (root==null) return null ; TreeNode t原创 2016-04-06 16:51:42 · 1778 阅读 · 0 评论 -
数据结构笔记及Java实现 (排序)
冒泡排序索引 清华数据结构公开课 02E-1基本介绍冒泡排序可以算是最简单的排序算法。假设有N个数,那么所谓冒泡排序,就是指将数组从第0个元素开始,依次将第n个元素与第n+1个元素比较,如果data[n]>data[n+1] 表示顺序不对(正序排序),需要将data[n]与data[n+1]交换。以此类推,最后循环结束时data[N-1]中的值肯定为这N个数中的最大值。然后再遍历前N-1个数,找出原创 2016-04-03 17:51:44 · 1154 阅读 · 0 评论 -
[Java] 学习笔记一(String,for循环,多线程,正则表达式,map用法)
StringString.equals (String) 判断两个字符串对象的内容是否相同。 值得注意的是,String.equals与’==’操作不同。前者比较的是两者的内容是否相同,而后者比较的是两者的地址是否相同。举个栗子,public class stringtest { public static void main(String[] args){ String原创 2016-03-20 19:14:03 · 1716 阅读 · 0 评论 -
[Java]使用gzip对字符串进行压缩/解压
import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.zip.GZIPInputStream;import java.util.zip.GZIPOutputStream;import java.util.zip.转载 2015-12-09 01:12:16 · 8324 阅读 · 0 评论 -
python调用Java-JPype使用介绍
转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-jpype/index.html Python 作为一种灵活的软件开发语言在当今被广泛使用。在软件开发过程中,有时需要在 Python 项目中利用既有的 Java 代码,已达到节省时间和开发成本的目的。因此,找到一个 Python 代码调用 Java 代码的桥梁是非常有意义的。 JP转载 2015-08-01 09:35:48 · 1899 阅读 · 0 评论 -
用Java发送邮件
闲来无事,写了个Java发送邮件的例子,做个记录,以便以后不时之需。要用Java发送邮件,除过JDK本身的jar包之外,还需要两个额外的jar包:JavaMail和JAF。当然,如果你使用的JavaEE的JDK,那就不用单独去网上下载了,因为JavaEE的JDK中已经自带了这两个jar包。如果你使用的是JavaSE的JDK,那么你需要去Oracle的网站上下载这两个jar包。JavaMail 1.4转载 2015-05-13 22:47:09 · 1669 阅读 · 0 评论 -
[Java] 东南大学人文讲座信息爬虫
又到了毕业季,在写人文讲座听后感的时候搜集之前听过的讲座信息总是一件很麻烦的事情,为了避免重复劳动,写了一个小爬虫来帮我搜集听过的人文讲座的相关信息,方便我来写听后感。爬虫的程序入口是Entrance类,里面只有一个main函数,输入你听过的讲座的时间(时间可以通过一卡通中心,或者小猴偷米微信查询得到),就能输出与时间对应的讲座的信息所在的网址。你也可以选择直接打开相关的网页。与之前的爬虫一样,这个原创 2015-04-23 20:57:44 · 3598 阅读 · 0 评论 -
[Java] 解决用Jsoup解析网页过程中由 造成的乱码问题
昨天晚上在写爬虫的时候,发现Jsoup会在输出utf-8网页的时候把` ` 输出成乱码“?”找了找,发现是编码的问题。那么解决思路就是把这个字符替换掉。但是如何替换,我又想了好多办法,甚至一度想过用正则表达式去解决。还来通过自己思考和查资料,得到了两种方法。方法1: 把Element转化为字符串,用String.replace替换掉,再通过Jsoup.parse()把处理过的字符串转成原创 2015-04-23 10:41:41 · 6087 阅读 · 1 评论 -
[Java][机器学习]Bayes分类算法
用Java实现Bayes分类算法。与决策树分类法相比,Bayes分类法可以轻松处理有多个分类的情况。它处理2个类和多个类本质上没什么区别。但是它相对于决策树也有一定的缺陷,即该算法是建立在各个属性统计独立的基础上的,如果属性间有关联,就会削弱算法的性能。与之前的决策树分类算法一样,要事先定义好double[][]型的训练集和检测集,格式为 double[i][0]=标号 double[原创 2015-04-12 21:11:51 · 1269 阅读 · 0 评论 -
[Java] List用法
1、List中可以添加任何对象,包括自己定义的新的类。 class Person{ ….. } 上面定义了一个Person类,下面看好如何使用List Person p1=new Person(); Person p2=new Person(); List list=new ArrayList(); list.add(p1); list.add(p2);//这里是将对象加入到lis转载 2015-04-05 15:46:38 · 10503 阅读 · 0 评论 -
[Java][机器学习]决策树算法
在之前为了处理Iris花的分类算法,写了一个决策树算法,但这个算法局限性比较大,只能用于那一种情况,所以为了增强代码的复用性,在之前的基础上修改了算法,增强了复用性。略有遗憾的是,由于很多模块,比如快速排序,是为了处理Iris花专门写的,所以现在要进行一些转换才行,一定程度上增加了代码的复杂度和冗余度。这个是以后值得注意的地方,即在设计之初就应该注意到代码的复用问题,尽可能早的定义好通用接口原创 2015-03-30 12:13:11 · 2682 阅读 · 0 评论 -
[Java][机器学习]用决策树分类算法对Iris花数据集进行处理
Iris Data Set是很经典的一个数据集,在很多地方都能看到,一般用于教学分类算法。这个数据集在UCI Machine Learning Repository里可以找到(还是下载量排第一的数据哟)。这个数据集里面,每个数据都包含4个值(sepal length,sepan width,petal length,petal width)以及其种类。而分类算法的目标,就是根据4个值来把花的种类确定原创 2015-03-25 20:16:04 · 5699 阅读 · 1 评论 -
[Java]快速排序算法的Java实现
最近想学点分类算法,在写决策树算法的时候对于连续变量要先进行排序,于是就先写了一个快排的算法。思路照着百度百科上的C语言版本学的,但是由于java中没有指令的存在,所以必须要在一些方面做些变通,修改了异常处理模块,并增加了一个合并两个字符串的函数。public class QuickSort{ /** * 快速排序 * @author Multiangle from S原创 2015-03-21 15:08:53 · 972 阅读 · 0 评论 -
Spider for UCI Machine Learning Repository
原谅我用英文标题。。。因为我觉得用英文来表示更贴切一些。。这个爬虫用于搜集UCI的机器学习知识库的一些背景资料和下载链接。主要是对jsoup包的运用,然后用jxl包把资料写入到excel里面。 每个数据集都有下列信息: Name,AssociatedTasks,AttributeCharacteristics,NumberOfInstances, NumberOfAttributes,Data原创 2015-03-06 10:16:43 · 1839 阅读 · 0 评论 -
百度贴吧爬虫 v1.0
之前想写一个爬虫,但是网上简单的教程几乎没有能运行的,不是缺关键函数就是其他的因素。无奈之下只能自己动手,之前还学了HttpURLConnection包的使用,但是用了html解析器Jsoup以后发现它自带了获取html代码的功能,因此这个爬虫就是主要围绕Jsoup来写了,还有一些正则表达式的运用来负责修剪。 主要功能是对一个帖子里楼主的所有发言进行归纳,统一保存在一个txt里面。 废话不多原创 2015-03-03 12:10:03 · 995 阅读 · 0 评论 -
使用jxl.jar来进行excel操作
jxl是一个韩国人写的java操作excel的工具, 在开源世界中,有两套比较有影响的API可供使用,一个是POI,一个是jExcelAPI。其中功能相对POI比较弱一点。但jExcelAPI对中文支持非常好,API是纯Java的, 并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。 另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。转载 2015-03-03 11:51:13 · 1549 阅读 · 0 评论 -
通过java获取html网页代码
最近这段时间想学爬虫来自己获取数据,因此找了几篇简单的java爬虫教程博客来看。令人失望的是这些爬虫基本都用不了。而复杂的爬虫又不适合初学者。由于我只是想做一个类似于脚本的东西,因此想了想,还是自己动手吧。先从获取html网页代码入手。import java.io.BufferedReader; import java.io.InputStreamReader; import java.ne转载 2015-03-03 11:29:18 · 4575 阅读 · 0 评论