自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(109)
  • 资源 (3)
  • 收藏
  • 关注

原创 算法 - 计算一个四则运算字符数组(Java)

实现一个一位数字的四则运算计算函数,输入是一个char数组,输出是计算结果。比如,输入是 char[] inputs = {'1','+','2','*','3'},输出是7。输入的字符里面,如果是数字,则只有1位;如果是符号,则只有加减乘除四个运算符,没有括号...

2021-03-27 14:27:13 735

原创 算法-根据输入数组,用后一个值减去前一值得到差值,找出最大的差值(Java)

贪心算法: 根据输入数组,返回后一个值减去前一值的差值,找出最大的值(注意先后顺序)package algorithm;import java.util.Arrays;public class Greedy { public static void main(String[] args) { int[] prices = {7, 9, 1, 5, 3, 6, 4}; int max = getMaxProfit(prices); .

2021-03-25 19:33:37 1122

原创 Java编码规范-创建和销毁对象

使用static factory 方法取代构造方法(Consider static factory methods instead of constructors) 当构造方法参数很多时考虑使用builder (Consider a builder when faced with many constructor parameters) 单例模式的属性用私有的构造方法或者是一个enum 类型初始化(Enforce the singleton property with a privagte constr

2021-03-12 18:18:19 186

原创 Pattern - Factory Method (Creational Pattern)

Factory Method 顾名思义就是负责创建对象的方法。Factory Method适用情景:当一个类无法预测创建什么类型的对象时 当一个类想要它的子类去指定要创建的对象时 当类将责任委托给子类,并且想在子类中本地化信息时例子:Pattern - Template Method pattern (Behavioral Pattern)中的createProcessor就是工厂方法。...

2021-02-24 17:01:45 101

原创 Pattern - Adapter pattern (Structural Patterns)

Adapter pattern适用情景:如果想使用已有的类(Adaptee),并且自身(Target)的接口并不满足需求 想要创建一个可以重复使用的类(Adapter),这个类要与另一个无关的类(Adaptee)交互,也就是说两个类之间不一定有兼容的接口 (只用于对象适配器-Object adapter)需要使用多个已有的子类(Adaptee1, Adaptee2),但是为这些子类(Adaptee1, Adaptee2)分别创建子类是不切实际的,这时可以创建一个对象适配器(Adapter)用来适配其

2021-02-24 14:07:55 69

原创 Pattern - Template Method pattern (Behavioral Pattern)

Template Method pattern适用情况:为了一次性实现一个算法的不变部分,子类实现变化的部分时。 为了避免代码重复,当子类中的共同行为应该被分解出来并写在通用类中时。首先确定现有代码中的差异,然后将这些差异拆分成新的操作,最后将不同的代码替换成一个template method,这个template method调用这些新的操作。 为了控制子类扩张。可以定义一个template method, 这个template method在特定的地方调用hook操作,从而允许扩展只发生在这些特

2021-02-23 13:36:50 171 2

原创 sql - delete和truncate区别

delete 和 truncate 都可以删除表数据。区别:delete是DML命令,truncate是DDL命令。truncate可以删除整张表的数据而不维护表的完整性,delete可以删除指定的数据, delete不能绕过完整性强制机制。| Key | delete | trucate || Basic|删除指定的数据|删除整张表的数据|| where 语句 | 可以带where语句 |不能跟where|| Locking| 删数据前锁定要删除的数据| 锁整张表|| 回滚| 可以回滚变更

2021-01-09 22:31:23 1043

原创 算法 - 找出数组中第二大的元素(java)

public class SecondMax { public static void main(String[] args) { SecondMax count = new SecondMax(); Integer[] arr = {10, -2, 33, 140, 25, 33, -2, 0, 140}; //1. Use sorting, output is : //The second max element is 33

2021-01-09 22:16:38 730 2

原创 算法 - 计算数组中每个数字出现的次数(java)

public class Count { public static void main(String[] args) { Count count = new Count(); int[] arr = {10, -2, 33, 140, 25, 26, 10, -2, 0, 25, 10, 33, -2, 50}; count.printElementsCount(arr); // output is (0出现1次,-2出现2次,以此类

2021-01-09 21:37:40 3488

原创 算法 - 从数组中找出和为给定值的所有组合(java)

public class Pairs { public static void main(String[] args) { Pairs pairs = new Pairs(); // 输出结果为: //[1, 2] //[1, 2, 0] //[1, 3, 0, -1] //[1, 3, -1] //[3] //[3, 0] //[0, -1, 4] .

2021-01-09 21:22:57 2819

原创 算法 - 从数组中找出两个数和为给定值的组合(java)

public class Pairs { public static void main(String[] args) { Pairs pairs = new Pairs(); //1. no duplicated elements, result is : //arr[0] + arr[11]= 40 //arr[3] + arr[5]= 40 //arr[6] + arr[8]= 40 //arr[1

2021-01-09 21:18:41 542

原创 Pattern - Telescoping Constructor pattern

Telescoping Constructor pattern当一个类属性较多,需要创建接受许多参数列表的构造方法时,需要这种设计方法。次等的写法(重复代码较多):public class Person { private final String name; private final String lastName; private final int age; private final String profession; private fi

2020-12-29 18:36:18 132

原创 汉诺塔(Hanoi towers)- java

汉诺塔递归算法如下:输入的n表示的是环的数量 假如有三个柱子A,B,C,将A上的n个环移动到C上,始终保持由小到大的次序: 首先把前面n-1个环从A移动到B上,使用C作为辅助 然后将最后一个环从A移动到C上 最后将B上的n-1个环从B移动到C上,使用A作为辅助 public class Hanoi { public static void main(String[] args) { Scanner scanner = new Scanner(System.in)

2020-06-13 16:17:19 210

原创 java学习总结 - 线程

程序-进程-线程程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。进程(process)是程序的一次执行过程,或是正在运行的一个程序。动态过程:有它自身的产生、存在和消亡的过程。如:运行中的QQ,运行中的MP3播放器程序是静态的,进程是动态的线程(thread):进程可进一步细化为线程,是一个程序内部的一条执行路径。若...

2020-02-16 18:40:48 135

原创 java学习总结 - 反射

Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。Java反射机制提供的功能在运行时判断任意一个对象所属的类 在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法 在运行时调用任意一个对象的成员变量和方法 生成动态代理反射相关的主要API...

2020-02-16 11:45:39 154

原创 java学习总结 - IO流

注意: 流正的开,反着关(close)File类

2020-02-15 22:53:29 99

原创 java学习总结 - 泛型

Java中的泛型只在编译阶段有效。在编译过程中,正确检验泛型结果后,会将泛型的相关信息查出,并且在对象进去和离开方法的边界处提娜佳类型检查和类型转换的方法。也就是说,泛型信息不会进入到运行时阶段。泛型类独享实例化时不指定泛型,默认为Object泛型不同的引用不能相互赋值泛型接口泛型方法方法,也可以被泛型化,不管此时定义在其中的类是不是泛型化的。在泛型方法中...

2020-02-15 18:06:19 157

原创 java学习总结 - 集合

Table of ContentsHashSetTreeSet:自然排序定制排序List与ArrayListArrayList和VectorMapHashMap 与 HashtableTreeMapCollections操作集合的工具类集合类存放在java.util包中,是一个用来存放对象的容器。集合只能存放对象,比如存一个int型整数5...

2020-02-15 16:37:29 174

原创 java学习总结

java都是值传递基本数据类型的变量传递的是值,即栈中的值引用数据类型的变量传递的是栈中的值,即对应的堆中对象的地址java支持单继承,不允许多重继承。override:子类重写父类方法,只是重写方法体;重写方法不能使用比被重写方法更严格的访问权限(如果父类的方法是public,子类重写的时候不能缺省);两者必须同时为static或同时为非static;子类抛出的异常不能大于父...

2020-02-14 00:42:04 110

原创 选择排序

public void selectionSort(int[] a) { for(int j=0; j<a.length-1; j++) { int minPos = j; for(int i=j+1; i<a.length; i++) { if(a[minPos] > a[i]) { minPos = i; } } //s...

2019-08-05 12:21:19 110

原创 冒泡排序

public void bubbleSort(int[] a) { for(int i=0; i<a.length-1; i++) { boolean stop = true; for(int j=0; j<a.length-1-i;j++) { if(a[j]>a[j+1]) { int tmp = a[j+1]; a[j+1] =...

2019-08-05 12:16:35 88

原创 最常见的SQL语句

假设有employee和department两个table1. Return employee record with max salaryselect * from employee where salary = (select Max(salary) from employee)2. Select highest salary in employee table.selec...

2019-07-28 21:15:30 149

原创 Windows Server 2016 升级到 Windows server 2019

准备工作准备Windows server 2019的镜像文件(类似这样的文件17763.107.101029-1455.rs5_release_svc_refresh_SERVER_VOL_x64FRE_en-us.iso)步骤将iso文件拷贝到Windows server 2016上,并双击打开,可以看到类似这样的目录结构: 如果windows server 2016上运行了AD...

2019-03-14 18:20:00 13032 2

原创 Python面向对象编程(OOP)技术总结

Table of Contents属性对象初始化构造方法(函数)析构方法(函数)类的方法实例方法类方法静态方法类的继承继承类构造方法方法与属性的继承属性Sample:class Book: name = "C Programming" __publisher = "T University" def show(se...

2018-10-30 14:58:32 314

原创 队列的正确顺序 - 算法有待改善

1. 描述有一群人站队,每人通过一对整数(h,k)来描述,其中h表示人的高度,k表示在此人前面队列中身高不小于此人的总人数。实现一个算法输出这个队列的正确顺序。输入格式输入格式为二维列表,即list[list[]]形式外层list包含队列中全部的人,内层list为[h,k]格式,代表个人信息。输出格式输出格式为:list[list[]]形式与输入格式一样,需要按照队列顺序排列。输入输出示例示例 输...

2018-07-09 22:12:57 483

原创 凯撒密码

1 . 描述凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:原文: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z密文: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C...

2018-07-09 21:48:58 2335

原创 斐波那契数列

1. 描述斐波那契数列如下:F(0)=0, F(1)=1F(n)=F(n-1)+F(n-2)编写一个计算斐波那契数列的函数,采用递归方式,输出不超过n的所有斐波那契数列元素,调用上述函数,完成如下功能:用户输入一个整数n,输出所有不超过n的斐波那契数列元素、输出数列的元素和及平均数,输出按照顺顺序,用英文逗号和空格分割。输入示例1:5输出示例1:0,1,2,3,5,12,22. 代码def f(n...

2018-07-09 21:32:22 666

原创 SQL script- 将select获得的数据结合其他的数据插入一个已经存在的table

使用insert into select .例子:declare @minNum int; --定义变量用来循环初始值declare @maxNum int; --定义循环的上线declare @copiedNum = 1234 -- 源数据Column1的筛条件set @minNum=53508; -- 初始化最小值set @maxNum=54494; -- select@maxNum=5449...

2018-06-22 17:11:53 209

原创 Usefull links

fiddler dochttp://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/DecryptHTTPSSelenium-python tutorialhttp://selenium-python.readthedocs.io/index.html

2018-05-29 17:55:26 163

原创 tomcat部署多个站点方法

要解决的问题:1.目前tomcat部署,更新一个站点不得不重启所有站点2.tomcat启动后的命令窗口,如果关闭,则tomcat服务便会挂掉怎么解决:1.使用tomcat多实例部署方式,1个网站=1个tomcat实例=1个端口号;2.将每个tomcat实例分别制作成不同的windows服务;步骤:现在我要部署2个网站,分别是ebm-web和ebm-mobile-

2016-12-06 10:56:36 11576 2

原创 Java实现数据库的备份和还原简易教程(SQL Server,零基础学起)

注意:以SQL Server2008为例。1.安装sql server2008下载地址:https://www.microsoft.com/en-us/download/confirmation.aspx?id=169564位系统选择“SQLEXPR_X64_ENU.exe",其他的根据自己使用的PC配置选择。安装完打开Microsoft SQL Server Mangemen

2016-11-04 10:54:48 5646

原创 Fiddler抓不到forefox火狐浏览器包

fiddler可以抓到ie浏览器的包,但是抓不到Firefox浏览器的包。操作步骤:1.打开Fiddler -> 菜单栏 Tools ->Telerik Fiddler Options ->Connections  ->点击蓝色字体的“Copy Browser Proxy Configuration URL” (即拷贝代理配置文件路径)2.打开FireFox ->菜单栏Tools

2016-11-03 11:55:40 9137 1

原创 正则表达式匹配字符串

如给定一个字符串:  Util.clickElement(driver,clickBtn);要想替换成:new Actions(driver).moveToElement(clickBtn).click();其中clickElement函数的第二个参数clickBtn是可变的,如果要对全文中该函数的调用都给替换成掉,那么可做如下处理:搜索字符串的正则表达式:Util.clickEl

2016-09-19 17:08:53 943

原创 Firefox 安装selenium ide插件失败:该附加组件无法安装 因为它似乎已损坏

Firefox安装Selenium ide插件时提示:该附加组件无法安装 因为它似乎已损坏,如下图:此时千万不要去想着这个插件有问题,可能是Firefox的版本问题。在Firefox45之后的新版本安装插件时都要进行签名认证,未经验证的都不能安装。那么不要用新版本的Firefox就好了。1. 安装45.0.2版本Firefox并修改其签名配置信息。安装个45.0.2版本的,打开

2016-09-08 14:56:21 25687

原创 Jenkins修改端口号(成功率高)

Jenkins默认的端口号是8080,修改方法:1. 打开终端,cd 到Jenkins的安装目录(即jenkins.war所在目录),如:D:\Program Files (x86)\Jenkins2. 执行命令:其中8081就是新的端口号,也可以设置为其他的端口。3. 输入上面命令后,回车,出现下面信息:表示修改成功。4. 打开浏览器输入 : localhost:

2016-09-08 13:59:31 57798 1

原创 Selenium - (new Actions(driver)).moveToElement(ele).click().perform() 页面没反应

使用findElement找到table中的某个元素ele后,执行点击:(new Actions(driver)).moveToElement(ele).click().perform(),但是页面没反应怎么办?事实上,如果ele.isDisplayed()==true时不代表ele真的可见,ele有3种情况:完全可见、完全不可见 和 部分可见。1. 完全可见ele.click() 或

2016-07-29 17:28:30 6185 3

原创 求素数算法-Java

例如求1000以内的素数:方法一:定义素数:除了1和它本身以外不再被其他的除数整数。    public void printPrime(){        for(int i=2; i&lt;1000; i++)        {            if(2==i || 3==i){                System.out.print(i+" ");   ...

2016-07-19 15:50:12 14459 3

原创 解决办法:ios模拟器键盘不弹出

iOS模拟器运行程序,当鼠标点击UITextField 或UITextView时,键盘不弹出,控制台输出如下信息:Can't find keyplane that supports type 4 for keyboard iPhone-Portrait-NumberPad; using 563160167_Portrait_iPhone-Simple-Pad_Default解决办法:点

2016-04-15 23:14:23 1539

原创 eclipse 安装 TestNG插件的方法

1. 打开eclipse,选择Help-> Install  New Software...2. 点击Work with: 后Add..按钮,输入name为TestNG,Location:http://beust.com/eclipse3. 列表中搜索出来的TestNG 的name 和Version信息,全部选中。4. 点击 Next 一步一步安装即可。

2016-04-13 14:49:46 412

原创 解决办法:Java使用Selenium JAR包没有帮助文档

现象: 使用Selenium Java jar包时,编写代码按下F2提示如下信息:            Note: This element neither has attached source nor attached Javadoc and hence no Javadoc could be found.原因: 没有给Selenium java jar包设置相应的javadoc

2016-04-11 16:42:42 1557

selenium-ide-2.5.0.zip

2016-03-16

gtest-1.7.0.zip

Google开源单元测试框架gtest源代码

2016-02-17

gtest源文件

Google开源单元测试框架gtest源代码

2016-02-17

空空如也

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

TA关注的人

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