编程技术

ArrayList类源码分析

ArrayList源码分析ArrayList是以数组为基础实现的一个动态数组容器,通过以下的代码分析可知,一方面在ArrayList中添加或者删除元素(除了在数组容器末尾添加或者删除元素),是需要移动大量元素的借助System.arraycopy()来实现拷贝移动,另一方面,由于数组实现基础,可依靠数组下标,可以实现随机访问,当然查找具体的元素,还是需要循环去查找的,再者ArrayList不是thread-safe的,在代码中无论是add,remove,g

系统 2019-08-29 22:02:44 2219

编程技术

建造模式

一、定义与结构GOF给建造模式的定义为:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。可以将建造模式的精髓概括为:将构造复杂对象的过程和对象的部件解耦。这是对降低耦合、提高可复用性精神的一种贯彻。其实这种精神贯彻在GOF几乎所有的设计模式中。是不是和上面提到的装机流程相像?这个很多人认为同抽象工厂模式相似的建造模式用在什么样的设计环境下呢(对于两者的比较稍候讨论)?我认为可以总结为以下环境:当要生成的产品有复杂的内部结构,其中的

系统 2019-08-12 09:30:16 2219

编程技术

浅谈权限管理的对象模型和实现

目录:1.权限管理问题的分析1.1权限管理简要分析1.2电子政务系统的权限管理1.3商业化应用系统的权限管理1.4他山之石2.权限管理子系统设计2.1权限管理子系统的总体目标2.2权限管理子系统的对象模型2.3注意与不足3.权限管理子系统的实现3.1面向对象的实现3.2组件层与功能层对对象的包装3

系统 2019-08-12 09:30:13 2219

编程技术

根据公司项目~搭建开发的框架(三)

效果图初始输入数据Add显示数据Query实现过程的主要代码:Click事件中caseR.id.add:Personperson=newPerson();person.name=name.getText().toString();person.age=Integer.valueOf(age.getText().toString());Mapparam=newHashMap();param.put("person",person);task=newTask(

系统 2019-08-12 09:29:35 2219

Python

Appium+python自动化(九)- 定位元素工具(义结金兰的两位异性兄弟

简介环境搭建好了,其他方面的知识也准备的差不多了,那么我们就开始下一步元素定位,元素定位宏哥主要介绍如何使用uiautomatorviewer,通过定位到页面上的元素,然后进行相应的点击等操作.此外在介绍另一款工具:Inspector。uiautomatorviewer是android-sdk自带的一个元素定位工具,非常简单好用,使用uiautomatorviewer,你可以检查一个应用的UI来查看应用的布局和组件以及相关的属性。那么宏哥先来给各位小伙伴们

系统 2019-09-27 17:57:11 2218

Python

python计算书页码的统计数字问题实例

本文实例讲述了python计算书页码的统计数字问题,是Python程序设计中一个比较典型的应用实例。分享给大家供大家参考。具体如下:问题描述:对给定页码n,计算出全部页码中分别用到多少次数字0,1,2,3,4...,9实例代码如下:defcount_num1(page_num):num_zero=0num_one=0num_two=0num_three=0num_four=0num_five=0num_six=0num_seven=0num_eight=0

系统 2019-09-27 17:56:23 2218

Python

使用Python脚本和ADB命令实现卸载App

前言本文实现一个Python脚本,用来批量卸载模拟器或者实体机上面的App以及清除LogCat缓存。开发Android的朋友,模拟器或者手机里面常常有大量调试的Demo,对于手机来说还好,可是对于模拟器,有可能就会造成调试速度以及启动速度的下降。而且模拟器中App一个一个删除也是很麻烦。利用ADB命令,我们可以做很多事,其中就包括批量操作模拟器或者手机上的App。当然包括删除操作啦。利用Python脚本和ADBshell命令以及AS自带的CMD窗口,我们就

系统 2019-09-27 17:55:49 2218

Python

遇见一只黑猫,她说Python是个怪物

导读:Python猫是一只喵星来客,它爱地球的一切,特别爱优雅而无所不能的Python。我是它的人类朋友豌豆花下猫,被授权润色与发表它的文章。如果你是第一次看到这个系列文章,那我强烈建议,请先看看它写的前几篇文章(链接见文末),相信你一定会爱上这只神秘的哲学+极客猫的。不多说啦,一起来享用今天的“思想盛宴”吧!本文原创并首发于公众号【Python猫】,未经授权,请勿转载。原文地址:https://mp.weixin.qq.com/s/e9B_jpyeSMk

系统 2019-09-27 17:55:27 2218

Python

python实现静态web服务器

HTTP协议简介HTTP请求1:浏览器首先向服务器发送HTTP请求,请求包括:方法:GET还是POST,GET仅请求资源,POST会附带用户数据;路径:/full/url/path;域名:由Host头指定:Host:www.sina.com以及其他相关的Header;如果是POST,那么请求还包括一个Body,包含用户数据2:服务器向浏览器返回HTTP响应,响应包括:响应代码:200表示成功,3xx表示重定向,4xx表示客户端发送的请求有错误,5xx表示服

系统 2019-09-27 17:53:33 2218

Python

, Python 3.6 or above is required

pip安装matplotlib没有能成功,打印出错误BeginningwithMatplotlib3.1,Python3.6oraboveisrequired原因本地环境是python3.6以下的版本。解决如果不升python版本的话,降低要安装的matplotlib版本。出现这个问题,安装的版本应该是matplotlib3.1试着降低版本pipinstallmatplotlib==3.0用国内源的话pipinstall-ihttps://pypi.tun

系统 2019-09-27 17:52:45 2218

Python

Python之Subprocess模块

前言其实有一个模块也支持执行系统命令,那个模块就是sys.system,但他执行系统命令会直接通过主进程去执行命令,那假如,该命令的执行需要耗费一个小时,那么主进程会卡一个小时,而不会去干别的事,这样就会导致程序的运行效率低下。如果由subprocess去执行系统命令的时候并不会让主进程去执行,而是主进程会开辟出一个子进程去执行,并不会影响到主进程的运行,主进程该干嘛就干嘛,那么又有个问题,大家都知道进程之间的内存空间是独立的,也就是说进程之间是不能相互访

系统 2019-09-27 17:50:09 2218

Python

python 第4关 收纳的艺术 列表list 从列表提取[ ] 从列表切片

列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表。而字典相比起来就显得随和很多,调动顺序也不影响。因为列表中的数据是有序排列的,而字典中的数据是随机排列的。列表有序,要用偏移量定位;字典无序,便通过唯一的键来取值列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表。如何取到最后的小芳列表与字典嵌套取数关键看最外面的是[]还是{}一个列表需要用中括号[]把里面的各种数据框起来,里面的每一个数据叫作

系统 2019-09-27 17:49:33 2218

编程技术

简单几步让vs2010支持html5!

转自:http://ppmoon.diandian.com/post/2012-01-16/17785152简单几步让vs2010支持html5微软从来不会让程序员用记事本写代码,如今html5马上就要火起来vs2010怎么会不支持html5呢?月月bird我将vs2010支持html5的方法整理了一下。本文内容概述:让vs2010支持html5.准备:vs2010,浏览器。流程:为什么要准备浏览器因为要上网下载东西啦!嘿嘿,想要vs2010支持html首

系统 2019-08-29 23:50:51 2218

编程技术

LGame开始进行0.3.3正式发布前的最终代码整合

PS:SVN中今天有更新(20120826)LGame正开始进行最后的代码整合,同时增加了新的工具类包:node包(SpriteBatchScreen专用),用以处理连续的角色动作及事件,该包暂时仅提供有Java版。等调试完成后会移植到C#与C++版本,JS版暂不支持此包。与此同时,小弟正采用移植第三方开源游戏的方式,大量增加游戏示例,我已初步准备了150多个以前从没发过的游戏源码,集中向LGame移植(从小到大慢慢移,不够再补,反正开源的2D游戏要多少有

系统 2019-08-29 23:10:13 2218