Split is a common function in Java. It split a full string to an array based on delimeter. For example, split "a:b:c" with ":" results in [a, b, c] In some scenario, it's better to keep the delimeter instead of discard it while splitti…
目录 1 问题描述 2 解决方案 2.1 具体编码   1 问题描述 何为spfa(Shortest Path Faster Algorithm)算法? spfa算法功能:给定一个加权连通图,选取一个顶点,称为起点,求取起点到其它所有顶点之间的最短距离,其显著特点是可以求含负权图的单源最短路径,且效率较高.(PS:引用自百度百科:spfa是求单源最短路径的一种算法,它还有一个重要的功能是判负环(在差分约束系统中会得以体现),在Bellman-ford算法的基础上加上一个队列优化,减少了冗余的松弛…
原创:转载需注明原创地址 https://www.cnblogs.com/fanerwei222/p/11904422.html Java内存分析简单介绍: 1. # 设置内存溢出时自动生成堆内存快照信息 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\log\gc.hprof -XX:+PrintGCDetails -Xloggc:D:\log\gc.log 2. 使用Jmap(Java Memory Map) 生成 堆内存信息文件 He…
介绍下Java内存区域(运行时数据区) Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域.JDK 1.8 和之前的版本略有不同. 下图是 JDK 1.8 对JVM做的改动,把方法区的具体实现----元空间已到了本地内存中. 各线程共享的:堆.方法区(元空间).直接内存: 各线程私有的:程序计数器.虚拟机栈.本地方法栈: 1️⃣ 程序计数器 它是个什么? 程序计数器是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器.字节码解释器工作时通过改变…
核心思想:面向对象编程,继承,高兼容(代码移植性强),开源,避免重复造轮子(使用mybatis,spring,redis等技术只需要将jar包依赖添加到项目中即可,jar包内就是技术核心代码,而这些框架都是专业技术团队开发出来的,这为大多数项目开发省去很多精力,拿来即用). Java的起源和发展细节就不介绍了,Java是高级开发语言,类似C++,语法和C++ 有很多类似之处,但是做了些优化,主要是在编码写程序上的优化,避免内存泄露,避免指针复杂错用等,Java中不可以直接操作指针,被隐藏. Ja…
一.SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的. 模型(Model )封装了应用程序的数据和一般他们会组成的POJO.…
简单介绍 Java中存在着两种Random函数 一.java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布. 二.java.util.Random Random()的两种构造方法: 1.Random():创建一个新的随机数生成器. 2.Random(long seed):使用单个 long 种子创建一个新…
java最明显的一个优势就是它的内存管理机制.你只需简单创建对象,java的垃圾回收机制负责分配和释放内存.然而情况并不像想像的那么简单,因为在Java应用中经常发生内存泄漏. 本教程演示了什么是内存泄漏,为什么会发生内存泄漏以及如何预防内存泄漏. 什么是内存泄漏? 定义:如果对象在应用中不再被使用,但由于它们在其他地方被引用,垃圾回收却不能移除它们(这样就造成了很多内存不能释放,从而导致内存溢出的现象.译注). 要理解这一定义,我们需要理解内存中对象的状态.下图说明了那些是未使用,那些是未引用…
什么是注解 1.注解就是Annontation,Annontation是Java5开始引入的新特征,中文名称叫做注解,它提供了一种安全的类似注释的机制,可以起到减少配置的成果,给程序起到辅助性的作用 注解有什么用处 1.注解可以生成文档 2.注解可以逐渐替代配置 3.在编译时进行格式检查 注解的原理: 注解本质是一个继承了Annotation的特殊接口,其具体实现类是Java运行时生成的动态代理类.而我们通过反射获取注解时,返回的是Java运行时生成的动态代理对象$Proxy1.通过代理对象调用…
堆.栈.方法区 1,首先了解下java中的数据类型. ①java中的八大基本数据类型:boolean, char , byte, short, int, long , float , double. ②除了基本数据类型外还有引用数据类型:类,接口,数组. 这些可以去了解,主要想记录下堆.栈和方法区的理解. 2,java中的JVM内存可分为三个区:堆(heap).堆栈(stack).方法区(Method). ①堆区 ㈠,提供所有类的实例和数组对象存储区域 ㈡,jvm只有一个堆区(heap)被所有线…
一.String类的构造方法(先粗略介绍三种 分别是s1,s2,s3) 二.String的常用判断方法 三.String类的常用获取方法 三.Sting的常用转换方法 四.String其他功能   五.StringBuilder…
http://www.360doc.com/content/14/1107/23/17130779_423471141.shtml…
1.字节码.所谓的字节码就是当java虚拟机载入某个类的对象时,首先须要将硬盘中该类的源码编译成class文件的二进制代码(字节码),然后将class文件的字节码载入到内存中,之后再创建该类的对象 2.java反射的基础是Class类(注意不是小写的class),Class类实例代表着内存中的一份字节码.常见的获取Class类对象的方法例如以下(第一种为对象的方法,另外一种为类的方法): Dog dog = new Dog(); Class dogClass = dog.getClass();…
目录 1 问题描述 2 解决方案 2.1 具体编码   1 问题描述 何为BellmanFord算法? BellmanFord算法功能:给定一个加权连通图,选取一个顶点,称为起点,求取起点到其它所有顶点之间的最短距离,其显著特点是可以求取含负权图的单源最短路径. BellmanFord算法思想: 第一,初始化所有点.每一个点保存一个值,表示从原点到达这个点的距离,将原点的值设为0,其它的点的值设为无穷大(表示不可达). 第二,进行循环,循环下标为从1到n-1(n等于图中点的个数).在循环内部,遍…
目录 1 问题描述 2 解决方案 2.1 使用Dijkstra算法得到最短距离示例 2.2 具体编码   1 问题描述 何为Dijkstra算法? Dijkstra算法功能:给出加权连通图中一个顶点,称之为起点,找出起点到其它所有顶点之间的最短距离. Dijkstra算法思想:采用贪心法思想,进行n-1次查找(PS:n为加权连通图的顶点总个数,除去起点,则剩下n-1个顶点),第一次进行查找,找出距离起点最近的一个顶点,标记为已遍历:下一次进行查找时,从未被遍历中的顶点寻找距离起点最近的一个顶点,…
包结构例如以下所看到的: 这个包的结构非常easy,类型也不多. BaseStream接口 全部Stream接口类型的父接口,它继承自AutoClosable接口,定义了一些全部Stream都具备的行为. 由于继承自AutoClosable接口,所以全部的Stream类型都能够用在Java 7中引入的try-with-resource机制中,以达到自己主动关闭资源的目的.实际上,仅仅有当Stream是通过Socket,Files IO等方式创建的时候,才须要关闭它.对于来自于Collection…
1.枚举,enum关键字,相当于public final static. 2.举例: 首先定义了一个名为spiciness的枚举类型. public enum Spiciness { NOT, MILD, MEDIUM, HOT, FLAMING } 再来测试一下enum,这个测试方法表明它有tostring()方法,很方便的显示某个enum实例的名字. public class SimpleEnumUse { public static void main(String[] args) { S…
一.流的概念 流是字节序列的抽象概念.流和文件的差别:文件是数据的静态存储形式,而流是指数据传输时的形态.文件只是流的操作对象之一.流按其操作的对象不同可以分为文件流.网络流.内存流.磁带流等.Java流类可分为两个大类:节点流类和过滤流类(也叫处理流类) 1.节点流类:用于直接操作目标设备所对应的流类.节点流类所对应的IO源或目标称为流节点.比如我们用一个类和一个文件或网络相关联,那么这个类就叫做节点流类,这个文件或网络就叫做流的节点. 二.InputStream和OutputStream类…
目录 1 问题描述 2 解决方案 2.1 使用Floyd算法得到最短距离示例 2.2 具体编码   1 问题描述 何为Floyd算法? Floyd算法功能:给定一个加权连通图,求取从每一个顶点到其它所有顶点之间的最短距离.(PS:其实现功能也称完全最短路径问题) Floyd算法思想:将顶点i到j的直接距离依次与顶点i到顶点j之间加入k个中间节点之后的距离进行比较,从中选出最短的一组距离,即为顶点i到顶点j的最短距离,然后重复上述步骤求取其它顶点之间的最短距离. 2 解决方案 2.1 使用Floy…
内部类的三种分类(成员内部类,局部内部类,匿名内部类) 1.成员内部类 (类似于成员变量和成员方法) 在类的外部类的方法中去调用内部类  输出结果: 另一种直接在别的类中使用内部类,不过需要先创建外部类的对象,然后再创建内部类的对象 输出结果如上. 2.局部内部类 与局部变量类似 3.匿名内部类(没有名字的局部内部类) 输出结果…
pull:是下拉代码,相等于将远程的代码下载到你本地,与你本地的代码合并push:是推代码,将你的代码上传到远程的动作完整的流程是: 第一种方法:(简单易懂) 1.git add .(后面有一个点,意思是将你本地所有修改了的文件添加到暂存区)2.git commit -m""(引号里面是你的介绍,就是你的这次的提交是什么内容,便于你以后查看,这个是将索引的当前内容与描述更改的用户和日志消息一起存储在新的提交中)3.git pull origin master 这是下拉代码,将远程最新的…
这篇文章主要介绍了简单了解如何在spring中使用RabbitMQ,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 常见的消息中间件产品: (1)ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现. (2)RabbitMQ AMQP协议的领导实现,支持多种场景.淘宝的MySQL集群内部有使用它进行通讯,Open…
1.java中数组的长度可以用.length来确定 2.java中的Arrays类可以对数组进行轻松的操作 (1).包名:import java.util.Arrays (2).Arrays.sort(数组名)/对数组进行从小到大排序/; (3).Arrays.toString(数组名)/直接序列化数组并输出/; (4).java有很多系统类包可以极大的节省开发时间.需要多加查看帮助文档 3.遍历一个数组的省略写法:for(int i :数组) 4.类中可以有初始化块和静态初始化块 (1).初始…
作者:沧海 各种js解析器是前端工程化的基石,可以说如果没有它,很多工程化都无法正常执行,我们每天用到的babel.webpack.eslint.TypeScript背后都需要一套对应的js解析器,今天我们来看看,目前市场上有哪些常用的解析器,他们各自又拥有什么特性尼? 前言 在说js解析器前,我们需要先了解下ESTree这个项目,这个项目的初衷通过社区的力量,保证和es规范的一致性,通过自定义的语法结构来表述JavaScript的AST,后来随着知名度越来越高,多位知名工程师的参与,使得变成了…
一.简介: Robot Framework:Robot Framework是由Python编写的一款功能丰富并且扩展性强的自动化测试框架,也可以在Java和 .NET 上运行. HttpRunner:是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求.采用 YAML/JSON 的形式描述测试场景,保障测试用例描述的统一性和可维护性.借助辅助函数(debugtalk.py),在测试脚本中轻松实现…
python 函数 定义 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 特性 减少代码重复 使程序变得可扩展 使程序变得易于维护 函数的创建 python中创建函数,需要使用__def__关键字,后面写函数的名字,然后是形参列表,大体如下: def 函数名(形参列表): 函数体...... return 返回值 其中形参列表和 return返回值并不是必须的. 函数的使用 想要调用函数程序,需要以函数名加括号的形式进行调用,而括号内可以传入参数…
<string name="format_coordinate" formatted="false">%s %d° %d\' %d\" %s %d° %d\' %d\"</string> 分号 ’ 和” 需要添加 \…
1.下载jdk:https://www.oracle.com/java/technologies/javase-jdk8-downloads.html(注意需要注册登录Oracle账号) 2.安装此处不贴图了,基本上就是改个自己喜欢的安装路径,其他一路next 3.配置环境变量 1)配置JAVA_HOME=D:\developerTools\softwares\jdk_1.8;     ("此处为jdk安装位置") 2)配置CLASS_PATH=.;%JAVA_HOME%\lib;%J…
在学校的时候.学JAVA学的模棱两可,半知半解.工作以后给我带来了非常大的困扰,所以我须要在学一遍.如今就開始吧... . java[1]是一种能够撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE)的总称.Java自面世后就很流行.发展迅速,对C++语言形成了有力冲击. Java 技术具有卓越的通用性.高效性.平台移植性和安全性,广泛应用于个人PC.数据中心…
输入: import java.util.Scanner; public class ScannerDemo{ public static void main(String[ ] args){ Scanner sc = new Scanner(System.in); int i = sc.nextInt(); System.out.println(i+1); String s = sc.next(); System.out.println(s+1); }} 输入1,输出2,再输入1,输入11 随…