- 博客(21)
- 收藏
- 关注
原创 JDBC PreparedStatement
为什么使用PreaparedStatement:1.使用statement需要通过字符串,拼写出对应的数据库命令2. 使用PreparedStatement可以有效防止sql注入,sql注入攻击是利用某些系统没有对用户输入的数据进行充分的检查,而在用户输入数据中注入非法的SQL语句段或命令,从而利用系统的SQL引擎完成恶意行为的做法,对于Java而言,只要使用PreparedStatement取代...
2018-05-29 11:30:29 205
原创 JDBC连接数据库
添加数据库驱动到程序中:1. Java.sql.Driver是数据库厂商必须实现的接口,加入mysql的驱动,解压mysql-connector-java-.zip2. 在当前项目文件夹下新建lib目录3. 将解压文件夹下的mysql-connector-java-.jar复制到lib目录下4. 右键build-path,add to buildpath 加到类路径下.s但是通常,程序中不需要直接...
2018-05-29 09:29:14 122
原创 关于使用EmguCV出现 “无法加载 DLL“cvextern”: 找不到指定的程序” 的解决方法
网上的复制x86中的库到项目debug文件夹下,并不管用,试试配置环境变量。(楼主机子为windows 7 64位系统,IDE为VS2017)开始配置环境变量。在用户变量里新建PATH,里面填上安装或解压后的Emgu目录下的bin和libs里的x86和x64(emgu版本emgucv-pro 3.3.0.2824),路径之间分号隔开。配置完成后重启电脑,就没有报错了。...
2018-05-16 21:08:59 2574 2
原创 Java 多线程
进程是一个程序的一次执行过程,是动态的。线程是进程的一个执行路径,当进程需要执行多项任务,就需要多线程。Java程序的线程至少有main线程和垃圾回收线程。多线程的创建:一 . 继承java.lang.Thread(这样就不能继承其他的类,单继承),重写run(),方法体就是线程执行的任务。 创建该类对象,调用start()启动该线程并调用相应的run()。 class Test...
2018-05-11 20:15:31 144
原创 Java 对象序列化
对象的序列化就是对引用数据类型的IO传输,将内存中的对象转换成二进制流,进而存储在硬盘文件中或者进行网络传输,这就是序列化;FileOutputStream ---> ObjectOutputStream---->writeObject(Object,序列化的类)---->flush()将序列化的对象提取出来还原成对象,就是反序列化。FileInputStream---->...
2018-05-11 11:03:51 116
原创 Java IO流
public static void main(String[] args) throws IOException{ File file = new File("hello.txt"); System.out.println(file.getName()); System.out.println(file.getParent()); System...
2018-05-10 23:06:05 126
原创 java TreeSet自然排序和定制排序
import java.lang.Comparable;import java.util.Comparator;import java.util.TreeSet;//TreeSet自然排序与定制排序,//1. 自然排序需要类实现Comparable接口,重写compareTo(),由于Set的不可重复性,要保证具有相同属性的元素不被重复添加,就需 要重写添加进Set的元素类的equals()和ha...
2018-05-10 15:05:43 375
原创 Java Map接口
Map接口: -----HashMap: 主要的Map实现类; -----LinkedHashMap: 链表维护 -----TreeMap: 按照添加进Map中的元素的key的指定属性进行排序 (同TreeSet,自然排序与定制排序,不过是针对key...
2018-05-10 14:55:38 138
原创 Java集合
Java集合分为Collection和Map两种体系Collection接口: Set接口 : 元素无序,不可重复的集合------数学意义上的集合; Set中常用的方法,都是Collection中的 主要实现类:HashSet(主要实现类), LinkedHashSe...
2018-05-09 22:08:48 106
原创 java 异常
java语言中,在程序执行中发生的不正常情况叫做异常(开发的语法错误和逻辑错误不是异常);异常分为两类:Error和Exception;Error:Java虚拟机无法解决的严重问题,如JVM系统内部错误,资源耗尽等严重错误,一般不编写 针对性的代码进行处理;Exception:其他因为编程错误或偶然的外在因素导致的一般性问题,可以使用针对性代码进行处理, ...
2018-05-09 17:30:32 103
原创 java内部类
定义在类的内部的类,内部类分为: 成员内部类(声明在类内部,方法外)和局部内部类(声明在方法内)成员内部类具有成员的特点(四个修饰符,普通类只有public和default; static修饰,普通类不能使用static),也具有类的特点。成员内部类对象的创建:class Person{ String name...
2018-05-09 11:41:00 90
原创 抽象java
abstract 修饰类或者方法,不能用来修饰属性,构造器,不能与private,final,static同用修饰类:抽象类,不可被实例化, 抽象类是成员变量,成员方法,抽象方法,构造器的集合。 抽象类有构造器(凡是类都有构造器,接口没有构造器),天生被继承, 抽象方法所在的类必须是抽象类,但是抽象类可以没有抽象方法。 修饰方法:抽...
2018-05-09 10:47:09 148
原创 static
static 可以修饰除了构造器以外的所有类成员:属性,成员方法,代码块,内部类静态属性(类变量),对象共享的变量,存储在静态域,随着类的加载而加载,类.变量;静态方法(类方法):随着类的加载而加载,类.方法, 实例变量(也就是非静态变量)是随着对象的创建而被加载,因此类变量,类方法的加载 都比实例变量,成员方法要早,这也解释了为什么静态方法不能直接调用非静态变量和非静态方法 因为他们还没有被...
2018-05-08 16:38:26 119
原创 操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5思路: 对于每个根节点,交换左右子节点,因此使用递归,交换了左右子节...
2018-05-04 10:50:50 211
原创 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/public class Solution { public boolean HasS...
2018-05-04 10:35:01 262
原创 反转链表(java)
方法一: 使用栈,出栈的时候一次指向下一个栈顶的节点/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/import java.util.Stack;public class Solution { public L...
2018-05-03 16:06:30 108
原创 输入一个链表,输出该链表中倒数第k个结点。
方法一:先遍历一遍链表,得到节点数目count,再取第count-k个节点即可。/*耗时24mspublic class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public List...
2018-05-03 15:18:14 369
原创 实现一个函数来调整该数组中数字的顺序
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分。前后两个指针,如果前偶后奇,就交换。这样只能完成前面偶数,后面奇数,可能会改变偶数与偶数,奇数与奇数相对位置public class Solution { public void reOrderArray(int [] array) { if(array=...
2018-05-03 15:01:20 394
原创 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。(Java)
方法一:选择移动标志位,而不是移动原数,因为如果该数是一个负数,向右移动的时候,高位会自动补充1;public class Solution { public int NumberOf1(int n) { int count =0; int flag =1; while(flag !=0) { ...
2018-05-02 16:44:24 194
原创 Java 实现 feibonacci数列
方法一: 递归实现,代码简洁,但是效率较低public class Solution { public int Fibonacci(int n) { if(n<1) { return 0; } if( n <=2) { return 1; } return Fibo...
2018-05-02 15:10:40 534
原创 旋转数组最小值的查找(二分法变形)
二分法变形,旋转数组的组成特点是,前面递增(不是严格的递增),后面递增(不是严格递增),但是前面部分大于等于后面部分。因此最小值就是两个部分的分界点。查询时,从中间开始查询,将中间值与前部分的最小值,后部分的最大值比较。倘若中间值大于前部分最小值,那么中间值就位于前部分,那么前部分的指针就要移动到中间值;倘若中间值小于后部分的最大值,那么中间值就位于后部分,那么后部分的指针就要移动到中间值。直到前...
2018-05-02 15:03:48 385
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人