自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 JDBC PreparedStatement

为什么使用PreaparedStatement:1.使用statement需要通过字符串,拼写出对应的数据库命令2. 使用PreparedStatement可以有效防止sql注入,sql注入攻击是利用某些系统没有对用户输入的数据进行充分的检查,而在用户输入数据中注入非法的SQL语句段或命令,从而利用系统的SQL引擎完成恶意行为的做法,对于Java而言,只要使用PreparedStatement取代...

2018-05-29 11:30:29 204

原创 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 210

原创 输入两棵二叉树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 366

原创 实现一个函数来调整该数组中数字的顺序

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分。前后两个指针,如果前偶后奇,就交换。这样只能完成前面偶数,后面奇数,可能会改变偶数与偶数,奇数与奇数相对位置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 384

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除