插入排序算法 #include <stdio.h>void print_array(int * arr, int size){ int i; printf("==========start==========="); for(i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("===========end============");}void inser..
springboot websocket 无法自动注入问题处理 websoket 由于是多对象无法通过属性自动注入,解决方案:声明static类型的(需要注入的)属性 通过set方发进行注入代码如下@Controller@ServerEndpoint(value = "/websocket")public class WebSocketController { private static SocketMessageHandler socketMessageHandler; @Autowired public void se
Hibernate-validator校验框架 1. 前言Validator开发者使用手册,适用后台校验功能的开发参考。文档中提到的功能,都是经过严谨测试验证过的,保证可用,请开发人员放心设计和开发。1.1. 背景在我们日常后台的开发中,涉及到很多的字段验证,一般普通的验证框架就基本上可以满足日常的开发需求,但有一些情况,这些普通的验证框架无法达到要求,例如,现在有一个Segment类,里面有一个属性deptCi
归并排序 /** * 归并排序算法:将需要排序的数组分成小数组进行归并排序 * Created by hasee on 2017/6/8. */public class Test { public static void main(String[] args) { int[] a = {2,1,4,3,6,8,7,9,10,13,12}; mergeSort
选择排序 /** * 选择排序算法: * 在数组中选出最小(大)的一个元素并与第一个元素交换,然后找出第二小的元素与第二个元素交换…… * Created by hasee on 2017/6/27. */public class SelectSort { public static void main(String[] args) { doSort(2,1,5,3,6,
插入排序2 /** * 插入排序的递归实现: * 使用递归的方法代替循环遍历 * Created by hasee on 2017/6/8. */public class InsertSort2 { public static void doSort(int[] a){ if(a.length>2){ doSort(Arrays.copyOf(a,a
插入排序1 /** * 插入排序算法: * 将数组中下一个元素插入到已排好的数组中的合适的位置,当所有的元素均插入时完成排序 * Created by hasee on 2017/6/26. */public class InsertSort { public static void doSort(int... arr){ for(int i=1;i<arr.length;i
深入理解Java类加载器(ClassLoader) 【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/73413292出自【zejian的博客】关联文章:深入理解Java类型信息(Class对象)与反射机制深入理解Java枚举类型(enum)深入理解Java注解类型(@Annotation)深入理
String类1 public class Test01 { public static void main(String[] args) { //串池中创建 Hello String s1 = "Hello"; //串池中找到 Hello 并引用 String s2 = "Hello"; //堆内存中创建 Hello
泛型 -- 泛型方法 /** * 泛型方法 -- 泛型方法可以定义在普通类中,也可以定义在泛型类中 * 定义泛型方法时泛型变量放在修饰符后,返回值前 */public class ArrayAlg { public static T getMiddle(T... a){ return a[a.length / 2]; }}public class Tes
泛型 -- 泛型类 /** * 简单的泛型类定义: * 类名后加(E表示集合的元素类型,K,V分别表示key和value,T(U,S)表示任意类型) */public class Pair { private T first; private T second; public Pair() { first = null; second = n
生产范围内的随机数 /** * 产生范围内的随机整数数 * 带种子时每次产生的随机数相同 */public class RandomInt { public static void main(String[] args) { RandomInt.showList(RandomInt.getIntRandom(10,5,15)); System.out
外观设计模式1 /** * 外观模式 -- 将多个相互依赖的类的依赖关系放在一个类中 * 避免类相互持有,实现松耦合 */public class Computer { private CPU cpu; private Memory memory; private Disk disk; public Computer() { this.cpu = new
装饰设计模式1 /** * 装饰设计模式 * 为一个对象动态的添加一些功能 * 原类和装饰类共同实现一个接口,装饰类持有类的对象, * 并在实现接口方法时调用该对象对该接口的实现方法,同时添加新的功能 */public class Decorator implements Sourceable { private User user; public Decorator(User u
适配器模式3 /** * 适配器模式 -- 接口的适配器模式 * 当不希望实现某个接口的所有方法时使用接口的适配器模式 * 使用一个抽象类实现接口中的所有方法,在写其他类的时候继承改抽象类 * 同时重写需要的方法,从而避免实现所有的接口方法 */public abstract class Wrap implements Targetable { @Override public vo
适配器模式2 /** * 适配器模式 -- 对象的适配器模式 * 当希望将一个对象(source)转换为s满足一个接口(Targetable)的新对象(adapter)时, * 创建一个类(Adapter)实现接口,该类持有一个原对象(source), * 并在实现方法中调用实例source的方法 */public class Adapter implements Targetable {
适配器模式1 /** * 适配器模式 -- 类的适配器模式 * 当希望将一个类(Source)转换为满足一个接口(Targetable)的新的类(Adapter)时, * 新的类继承待适配的类并实现接口 */public class Adapter extends Source implements Targetable { @Override public void method02