for(Elements e : list) { //doSomeThing-- }…
for-each循环通过完全隐藏迭代器或者索引变量,避免混乱和出错的可能,适用于集合和数组和任何实现Iterable接口的对象. 使用传统for循环,容易出错: enum Face { ONE, TWO, THREE, FOUR, FIVE, SIX } Collection<Face> faces = Arrays.asList(Face.values()); for(Iterator<Face> i = faces.iterator(); i.hasNext();) for(I…
Android5.X后,引入了RecyclerView,这个控件使用起来非常的方便,不但可以完成listView的效果,而且还可以实现ListView无法实现的效果.当然,在新能方便也做了大大的提高.本篇 第四十六话 案例,就使用这个控件,完成竖向和横向加载数据. 我们直接上代码,在每一步后都简要分析一下功能: 一.实现竖向滚动 1.定义一个实体类: package com.itydl.recyclerview; public class Fruit { private String name;…
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢. NeHe OpenGL第四十六课:全屏反走样 全屏反走样 当今显卡的强大功能,你几乎什么都不用做,只需要在创建窗口的时候该一个数据.看看吧,驱动程序为你做完了一切.   在图形的绘制中,直线的走样是非常影响美观的,我们可以使用反走样解决这个问题.在众多的…
四十六.android中的Bitmap: http://www.cnblogs.com/linjiqin/archive/2011/12/28/2304940.html 四十七.实现调用Android手机的拍照功能: http://www.cnblogs.com/linjiqin/archive/2011/12/28/2304970.html…
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第四十六章:继承与字段 下一章 "全栈2019"Java第四十七章:继承与方法 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学习小组". 全栈工…
第十六条 复合优先于继承 如果不确定B和A的关系是,is-a的关系,B确实也是A,那么久不应该使用B继承A,否则会暴露实现细节, 你的实现都会限制在原始的实现上. 书中举的第一个例子,实现了一个类extends HashSet类,因为缺少对HashSet类的addAll方法的理解(addAll会重复调用add方法),导致多统计了一倍的调用次数,这就是自己的实现限制在父类的实现上. 同时书中还有一个说明,如果超类在后续的版本中增加了一个新的方法, 正好和你的类里新增的方法签名一致(参数列表和函数名…
第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么 Sigma协议 Sigma协议是Alice想要向Bob证明一些东西的协议(Alice知道一些秘密).他们有下面的一般范式:Alice知道一个秘密,Alice和Bob都分享了一些相同的信息.因此: Alice给Bob发送了一个值,这个值叫做承诺(commitment). Bob均匀的随机选择一个挑战(challenge)发送给Alice. Alice计算一个回应(response)发送给Bob. Bob检查回应,接受或者拒绝…
官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:https://gitee.com/kwwwvagaa/net_winform_custom_control.git 如果觉得写的还行,请点个 star 支持一下吧 欢迎前来交流探讨: 企鹅群568015492  麻烦博客下方点个[推荐],谢谢…
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+easyui+efcore实现仓储管理系统——解决方案介绍(二) abp(net core)+easyui+efcore实现仓储管理系统——领域层创建实体(三)  abp(net core)+easyui+efcore实现仓储管理系统——定义仓储并实现 (四) abp(net core)+easyu…
一.线程池 很久(python2.6)之前python没有官方的线程池模块,只有第三方的threadpool模块, 之后再python2.6加入了multiprocessing.dummy 作为可以使用线程池的方式, 在python3.2(2012年)之后加入了concurrent.futures模块(python3.1.5也有,但是python3.1.5发布时间晚于python3.2一年多),这个模块是python3中自带的模块,但是python2.7以上版本也可以安装使用. 下面分别介绍下各…
和maxout(maxout简单理解)一样,DropConnect也是在ICML2013上发表的,同样也是为了提高Deep Network的泛化能力的,两者都号称是对Dropout(Dropout简单理解)的改进. 我们知道,Dropout是在训练过程中以一定概率1-p将隐含层节点的输出值清0,而用bp更新权值时,不再更新与该节点相连的权值.用公式描述如下: 其中v是n*1维的列向量,W是d*n维的矩阵,m是个d*1的01列向量,a(x)是一个满足a(0)=0的激发函数形式.这里的m和a(Wv)…
1.简介 终于经过宏哥的不懈努力,偶然发现了一个toast的web页面,所以直接就用这个页面来夯实一下,上一篇学过的知识-处理toast元素. 2.安居客 事先声明啊,宏哥没有收他们的广告费啊,纯粹是为了学习和实战的. 2.1被测网址 1.被测网址的地址: https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v 2.网页如下图: 2.2代码设计 2.3参考代码 package lessons…
前面我们讲到的elasticsearch(搜索引擎)操作,如:增.删.改.查等操作都是用的elasticsearch的语言命令,就像sql命令一样,当然elasticsearch官方也提供了一个python操作elasticsearch(搜索引擎)的接口包,就像sqlalchemy操作数据库一样的ORM框,这样我们操作elasticsearch就不用写命令了,用elasticsearch-dsl-py这个模块来操作,也就是用python的方式操作一个类即可 elasticsearch-dsl-p…
MySQL自定义函数 一.什么是MYSQL自定义函数? mysql当中的自定义函数,我们简称为UDF,它实际上是一种对MySQL扩展的途径,其用法与内置函数相同. 二.自定义函数应该具备哪些条件? 我们先来回想一下内置函数是怎么使用的,首先函数一定要有一个名字,还有每个函数后面都有一个小括号,小括号里面写的内容我们称之为参数,当函数正常运行时,往往会得到一个信息,这个信息我们称之为返回值.所以我们可以发现,自定义函数应该具备两个条件: (1)参数 (2)返回值 不仅是自定义函数需要这两个条件,我…
前面介绍过自定义审批流: Dynamic CRM 2013学习笔记(十九)自定义审批流1 - 效果演示 Dynamic CRM 2013学习笔记(二十一)自定义审批流2 - 配置按钮 Dynamic CRM 2013学习笔记(三十二)自定义审批流3 - 节点及实体配置 Dynamic CRM 2013学习笔记(三十三)自定义审批流4 - 规则节点 -有分支的流程处理 Dynamic CRM 2013学习笔记(三十四)自定义审批流5 - 自动邮件通知 Dynamic CRM 2013学习笔记(三十…
一.核心军规 尽量不在数据库做运算,cpu计算的事务必移至业务层; 控制表.行.列数量([控制单张表的数据量 1年/500W条,超出可做分表],[单库表数据量不超过300张] .[单张表的字段个数不超过50个,多了拆表]) 三大范式没有绝对的要使用,效率优先时可适当牺牲范式  https://www.cnblogs.com/wdw31210/p/8574853.html 拒绝3B(拒绝大sql语句:big sql.拒绝大事物:big transaction.拒绝大批量:big batch); 二…
正则表达式 1.定义一个Regex类的实例 Regex regex=new Regex(“”); 这里初始化参数就是一个正则表达式,”\d”表示配置数字 2.判断是否匹配 判断一个字符串,是否匹配一个正则表达式,在Regex对象中,可以使用Regex.IsMatch(string )方法. Regex regex = new Regex(@"\d"); bool b1=regex.IsMatch("abc"); //返回值为false,字符串中未包含数字 bool …
概述 今天用jmeter做一次参数化实战.通过计数器遍历参数表,然后查询jdbc进行beanshell断言. 涉及元件 用户参数,计数器,正则表达式,jdbc,beanshell脚本 详细过程 在我们的opms项目管理中,有一个项目状态的修正,四种状态分别为延期,挂起,进行,结束 在接口自动化案例中,我们需要对这四种状态进行遍历,然后进行断言,判断状态是否正确修改. 我们通过抓接口,发现了传参的一个规律:除了项目id之外,四种状态的status分别是1,2,3,4. 我们把添加项目的返回id用正…
在上一篇,我们接触了单例,使用单例解决了我们脚本之间访问的问题. 脚本之间访问其实有更好的方式. 我们先分下脚本访问脚本的几种形式. 第一种,A GameObject 是 B GameObject 的 Parent,或者是中间隔着几个层级的 Parent. 那这种情况下,如果 A 脚本想调用 B 脚本的方法,直接通过 transform.Find("XXX/YYY/ZZZ").GetComponent<B>().DoSomething() 就可以了. 但是如果是 B 脚本想…
这是利用人的视觉错觉来实现无限轮播,UICollectionView 有很好的重用机制,这只是部分核心代码,后期还要继续完善和代码重构. #import <UIKit/UIKit.h> #import "ADPageControlView.h" @interface ADCarouselView : UIView /**图片资源数组*/ @property (nonatomic, strong) NSArray *imgs; /**标题数组*/ @property (non…
一.统一全站字符编码 通过配置参数charset指明使用何种字符编码,以处理Html Form请求参数的中文问题 1 package me.gacl.web.filter; 2 3 import java.io.IOException; 4 import javax.servlet.Filter; 5 import javax.servlet.FilterChain; 6 import javax.servlet.FilterConfig; 7 import javax.servlet.Serv…
简述ArrayList.Vector与LinkedList的异同点   Collection类的继承图如下:   从图中可以看出,LinkedList与ArrayList.ArrayDeque这三者都实现了List接口.所有使用方式也很相似,主要区别在于因为实现方式的不同,所以对不同的操作具有不同的效率. ArrayList是一个可改变大小的数组.当更多的元素加入到ArrayList中时,其大小将会动态地增长.内部的元素可以直接通过get与set方法进行访问,因为ArrayList本质上就是一个…
论文原址:https://arxiv.org/abs/1903.00621 摘要 本文提出了基于无anchor机制的特征选择模块,是一个简单高效的单阶段组件,其可以结合特征金字塔嵌入到单阶段检测器中.FSAF解决了传统基于anchor机制的两个限制:(1)启发式的特征选择(2)overlap-based anchor采样.FSAF的通用解释是将在线特征选择应用于与anchor无关的分支的训练上.即无anchor的分支添加到特征金字塔的每一层,从而可以以任意层次对box进行编码解码.训练过程中,将…
Linux 中模拟延时和丢包的实现 使用ifconfig命令查看网卡 Linux 中使用 tc 进行流量管理.具体命令的使用参考 tc 的 man 手册,这里简单记录一下使用 tc 模拟延时和丢包的命令. ping出来的最小单位为1毫秒,在执行压测之前,最好用压力机ping一下服务器,如果延迟很高,就没必要测了,因为请求还没发出去都已经有一段时间的消耗了 1. 延时(1)设置延时:给 eth0 设备发包时添加 30ms 的延时(从网卡).tc qdisc add dev eth0 root ne…
class Solution { public: vector<vector<int>> permute(vector<int>& nums) { int len=nums.size(); vector<vector<int>> res; )//特殊情况 { vector<int> res1; res.push_back(res1); return res; } )//迭代返回条件 { res.push_back(nums);…
Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: >>> import itertools >>> natuals = itertools.count() >>> for n in natuals: ... print(n) ... ... 因为count()会创建一个无限的迭代器,所以上述代码会打印出自然数序列,根本停不下来,只能按Ctrl+C退出. cycl…
一.插入排序的基本思想 从初始有序的子集合开始,不断地把新的数据元素插入到已排列有序子集合的合适位置上,使子集合中数据元素的个数不断增多,当子集合等于集合时,插入排序算法结束.常用的 插入排序算法有直接插入排序和希尔排序两种. 二.直接插入排序 1.直接插入排序的定义 直接插入排序的基本思想是:顺序地把待排序的数据元素按其值的大小插入到已排序数据元素子集合的适当位置.子集合的数据元素个数从只有一个数据元素开始逐次增大.当子集合大小最终和集合大小相同时排序完毕. 2.直接插入排序的实现 publi…
Go主要的目标之一就是面向大规模后端服务程序,网络通信这块是服务端程序必不可少也是至关键的一部分. 网络编程有两种: (1)TCP Socket编程:是网络编程的主流,之所以叫TCP Socket编程,是因为底层是基于TCP/IP协议的: (2)B/S结构的http编程,使用浏览器去访问服务器时,使用的就是http协议,而http底层就是tcp socket实现的: 计算机间需要通讯,必须要有网线.网卡或者是无线网卡: TCP/IP模型:应用层.传输层.网络层.数据链路层.物理层: IP地址:每…
一.上节回顾 不知不觉,我们已经学完了整个专栏的四大基础模块,即 CPU.内存.文件系统和磁盘 I/O.以及网络的性能分析和优化.相信你已经掌握了这些基础模块的基本分析.定位思路,并熟悉了相关的优化方法. 接下来,我们将进入最后一个重要模块—— 综合实战篇.这部分实战内容,也将是我们对前面所学知识的复习和深化. 我们都知道,随着 Kubernetes.Docker 等技术的普及,越来越多的企业,都已经走上了应用程序容器化的道路.我相信,你在了解学习这些技术的同时,一定也听说过不少,基于 Dock…