java
gentelyang
呵呵
展开
-
java集合类:set、list、map、queue
编程时我们需要集中存放很多数据,一般数组是比较好的选择,但是前提是我们要事先知道要保存的对象的数量,因为数组长度是不变的,如果我们需要保存一个可以动态增长的数据,在编译时无法确定具体的数量,java的集合类就是一个比较好的解决方案。集合类主要负责保存、盛装其他数据,因此集合类也被称为容器类。所以的集合类都位于java.util包下,后来为了处理多线程环境下的并发安全问题,java5还在java.u...原创 2018-05-02 16:39:42 · 159 阅读 · 0 评论 -
回溯法
回溯法(back track method)也称为试探法,是蛮力法的改进。在包含问题的所有可能解空间中,从根节点处罚,按照深度优先策略进行搜索,对于解空间树的某个节点,如果该节点满足问题的约束条件,则进入该子树继续进行搜索,否则将以该节点为根节点进行剪枝。回溯法常常可以避免搜索所有可能解,适用于组合较数较大的问题。 这样我们就可以用树的形式展示出各种路径,再分别计算每种方案价值,从而得到最优解...原创 2018-04-29 21:29:56 · 359 阅读 · 0 评论 -
基于LinkedList实现栈和队列
1:提供一组栈的接口,其底层关联到一个LinkedList(双端队列)实例。由于只暴露部分基于栈实现的接口,所以可以提供安全的栈实现。mport java.util.LinkedList;public class Stack<T> { private LinkedList<T> storage = new LinkedList<T>(); /** ...原创 2018-05-08 16:30:30 · 236 阅读 · 0 评论 -
位运算java
https://www.jianshu.com/p/b677858bc085原创 2018-06-20 18:22:49 · 167 阅读 · 0 评论 -
Union find算法总结
最近比较忙,就不怎么整理了,看这三个博客+算法课本1.5https://blog.csdn.net/zjkC050818/article/details/62419111https://blog.csdn.net/dm_vincent/article/details/7655764https://blog.csdn.net/dm_vincent/article/details/7769159...原创 2018-06-06 14:40:11 · 373 阅读 · 0 评论 -
红黑树算法总结
http://www.cnblogs.com/skywang12345/p/3245399.html看这篇博客原创 2018-06-06 15:10:08 · 159 阅读 · 0 评论 -
KMP算法和BM算法
https://www.cnblogs.com/yjiyjige/p/3263858.html原创 2018-06-06 20:37:53 · 2234 阅读 · 0 评论 -
IO流
IO流要多去记忆才可以,平常多敲敲原创 2017-04-27 19:07:51 · 315 阅读 · 0 评论 -
Java反射很简单
刚开始学习反射的时候感觉很抽象很难懂,但是其实自己静下心来好好想想其实并不难原创 2017-04-26 21:21:26 · 461 阅读 · 0 评论 -
数组和集合(三)
说一下Map集合,Map集合还是比较重要的,后面在操作数据库和利用框架时经常用到: java.util.Map:用于操作成对的对象集合,Key和value成对存在,一个key对应一个value,key不能重复。 HashMap:是Map接口的典型实现类,是线程不安全的,所以效率高 LinkedHashMap: Hashtable:是一种比较老的方法,是线程安全的,效率低 properti原创 2017-04-28 20:39:08 · 305 阅读 · 0 评论 -
数组和集合(二)
集合数组都是用来存储数据的,数组本身可以存储数据了,为什么还要学习集合呢? 集合定义:集合像一种容器,可以存储、获取、操作数据对象的容器。 数组有一定的弊端,所以我们用集合来克服数组的不足:数组的长度不可改变,这一点一定和c++区分出来,刚学习c++时,有一种动态数组,其长度是可以申请改变的,而java中数组的长度就是固定的,数组没有提供可以查看数组中有效元素个数的办法 一:集合的特原创 2017-04-28 17:27:29 · 242 阅读 · 0 评论 -
多态
多态就是一类事物的多种表现形态。 1.对象的多态性: 就是父类的引用指向子类的对象 例子:Person p = new Man(); //这是多态的向上转型,不用强转 p.eat(); p.walk(); 需要注意的是在多态中,编译时看的是多态的左边,看的是父类的引用(父类不具备子类的特有方法),运行时,看的是子类的对象,实际运行的是子类重写父类的方法。上述过程还有两个高大上点原创 2017-04-29 07:24:20 · 216 阅读 · 0 评论 -
this和super关键字
一:this 关键字:代表当前对象,可用于调用属性、方法、构造器. this.属性; this.方法; this(……); 注意: ①this 调用本类构造器,必须写在构造器中可执行代码的首行 ②this 调用本类构造器,必须保证至少有一个构造器中不使用this(避免递归构造器调用) 谁能让拥有this关键字的方法运行了,谁就是当前对象 例子:class Person{ pr原创 2017-04-29 08:07:08 · 313 阅读 · 0 评论 -
java三大特性之封装
1:我对封装的理解就是把需要隐藏的隐藏起来,需要暴露的暴露出去。那如何把该隐藏的隐藏起来呢,就是利用private将属性私有化,然后利用public修饰的set和get方法设置和获取属性。(set是void没有返回值) 如:private String name; public String getName(){ return;原创 2017-04-29 09:38:22 · 260 阅读 · 0 评论 -
static
static修饰符:代表静态的,可用于修饰 属性、方法、代码块、内部类 一:static修饰属性(静态变量或类变量) ①:static修饰的属性随着类的加载而加载,随着类的消失而消失,所以是周期最长的 ②:静态变量被所有该类的对象所共享 ③:一旦某个对象更改了属性值,其他对象的该属性值也要改变 ④:类变量的存在优于对象 ⑤:通过“类名.类变量” 二:类变量与实例变量什原创 2017-04-29 19:49:09 · 326 阅读 · 0 评论 -
javaWEB_Servlet
在eclipse中搭建javaweb运行环境太简单就不说了 一:javaweb的概述 java web是一组Servlet、HTML页、类以及其他可以被绑定的资源构成的。可以在各种供应商提供的实现Servlet规范的Servlet容器中运行。 所以javaweb应用包含: -servlet -jsp -实用类 -静态文档如HTML、图片等 -描述web应用的信息(web.xml)原创 2017-05-02 13:59:06 · 331 阅读 · 0 评论 -
多线程心得
多线程这只是入门,如果想深入学习多线程,推荐去看一下多线程方面的书籍原创 2017-04-27 08:25:46 · 712 阅读 · 0 评论 -
数组和集合(一)
想说一下数组再说集合: 数组属于引用数据类型之一,三大引用数据类型分别为:类,接口和数组 数组用于批量保存一类数据 一:要知道数组如何进行初始化,数组初始化的两种方法 ①:静态初始化: int [] a = {1,2,3};或者int [] a = new int[] {1,2,3}; ②:动态初始化: int [] a = new int[3]; a[0]="haha"原创 2017-04-28 17:21:29 · 251 阅读 · 0 评论