NSArray 里面的一个方法, - (void)makeObjectsPerformSelector:(SEL)aSelector: 这是一个类似于执行for循环的方法,可以这样用,当需要删除一个view里面的所有subViews,代码如下: [self.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]; 当要设置一个view里面所有子view的隐藏属性的时候,代码如下: [self.subviews mak…
题目链接 https://cn.vjudge.net/problem/HDU-5124 胡扯 感觉说新方法好像有点不太好,但是翻了十几篇博客都是清一色离散化之类的... 为什么会做这道题呢?因为前几天做了套NOIp模拟赛,T1是坐标轴上的最大团,愉快地转化成最多不相交区间问题贪心处理 但是我把大于等于号看反了,以为区间相交才连边,于是转化成了"让你找出被覆盖次数最多的点(线段)被覆盖的次数",也就是这题 然后考场上yy出了一个堆+贪心的鬼畜做法,对拍过了,以为能AC,结果......爆…
众所周知,AspectJ可以通过@Before,@After,@Around等注解对连接点进行增强,今天我们来玩一个新注解@DeclareParents.对目标对象增强一个新方法. 场景引入: 现在我们有一个动物鸭子类,它有个游泳的函数,但是突然有一天我们需要给动物鸭子实现一个很好吃的食材属性.我们当然可以去动物鸭子类去新增一个方法,但是违背了单一原则.我们可以通过AOP来实现增强. Code show time 有一个Animal的接口 public interface Animal { vo…
ES6为字符串提供了一个新方法,叫做String.prototype.includes('要包含的字符串'),如果包含,则返回字符串,否则返回false 使用ES6中的字符串新方法String.prototype.padStart(maxLength,fillString=' ')来填充字符串头部,String.prototype.padEnd(maxLength,fillString=' ')来填充字符串尾部:…
//html <div id="app"> <label> 名称搜索关键字: <input type="text" clasa="form-control" v-model="keywords"> </label> <table class="table table-bordeered table-hover table-striped"> <…
Method Swizzle黑魔法,修改 ios 系统类库方法   版权声明:本文为博主原创文章,未经博主允许不得转载. 一般来说,系统提供的方法已经足够开发了,但是有的时候有些需求用普通方法不好做. 如:在所有的viewcontroll 的viewwillappear:方法之前打个log 你可能会这么做: 1. 建一个uiviewcontroll 父类,重写viewwillappear方法,调用super viewwillappear 方法之前加上log 2. 所有新建的uiviewcontr…
http://blog.csdn.net/chiuan/article/details/9290651?utm_source=tuicool&utm_medium=referral 来分享一个新的NGUI按钮方法回调的脚本,个人不是很喜欢原来那个UIButtonMessage,根据原来稍微修改了下.会比原先的智能和优化代码结构,效率也会好些. 认识:一个按钮事件发生理应有2个东西:1.发生事件,2.接收对象 1.发生事件: 如上图,我们看见这是一个标准的NGUI创建后的按钮对象,添加了TTBut…
接下来说说代码封装最后一个个案. 最后一种情况看:[iOS开展-48]九宫格案例:自己主动布局.字典转模型运用.id和instancetype差别.xib反复视图运用及与nib关系 (1)代码封装的原则是:要保证视图控制器尽量少的接触到其它对象的属性,也就是说,尽量把数据或者属性封装到一个类里面,然后利用类或者对象的方法来调用或者设置数据.而是赤裸裸地把属性都写在视图控制器中. 核心作用在于:降低视图控制器的代码量,把数据和属性的处理封装起来,这样也便于其它视图控制器的使用. 要做到的结果就是例…
一.自定义了一个ArrayList的模拟集合(源码+详细说明) 前段时间分析了下ArrayList集合的源码,总觉得如果不自己定义一个的话,好像缺了点什么,所以有了如下的代码. 代码可以说是逐行注释了,所以就不做过多的分析了. 类结构展示图: 自定义集合:MyArrayListDefin.java package com.xfwl.algorithmAnalysis.linklsit; import java.util.Arrays; import java.util.Iterator; imp…
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 Android开发之清除缓存功能实现方法,可以集成在自己的app中,增加一个新功能. 下面是一个效果图: 大家好,今天教大家一个获取应用中的缓存,并清除缓存大小的功能. 弹出这个dialog我就不写代码了.直接写核心的清除缓存的代码了.毕竟 我感觉这个dialog比较简单,当然不会的朋友,可以下面留言. 首先给大家提供一个缓存管理工具的一个工具类. /* * 文 件 名: DataCleanMana…
#34.编写2个接口:InterfaceA和InterfaceB:在接口InterfaceA中有个方法void printCapitalLetter():在接口InterfaceB中有个方法void printLowercaseLetter():然 后写一个类Print实现接口InterfaceA和InterfaceB,要求      方法 实现输出大写英文字母表的功能,printLowercaseLetter()方法实现输出小写英文 字母表的功能.再写一个主类E,在主类E的main方法中创建P…
不知道是否还有其他方法实现,请高人指点. 如果涉及到多张表多字段查询,并且想利用查询出来的字段在界面层构建一个新的实体类,可以使用这种方法: 如果查询出来的多字段中,有多个字段的名字都相同(如想查询出A表的id,B表的id,C表的id),可以使用这种方法: 秘籍:使用Spring实体注入的方式来做就可以了! 比如A表和B表和C表构成一个完整的事件信息,其中C表包含A,B表的关联id(分别为A,B表的主键). 那么你就可以使用C表作为主要实体,将A,B表的实体注入到C表实体中(我是用的注入方式是g…
该文转载自:http://rangercyh.blog.51cto.com/1444712/521244 系统调用是操作系统内核和应用程序之间的接口,而设备驱动程序是操作系统内核和机器硬件之间的接口. 设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件, 应用程序可以像操作普通文件一样对硬件设备进行操作. 设备驱动程序是内核的一部分,它完成以下的功能: (1) 对设备初始化和释放. (2) 把数据从内核传送到硬件和从硬件读取数据. (3) 读取应用程序传送给设备…
var arr1 = ['a', 'b', 'c']; var arr2 = ['d', 'e', 'f']; var arr3 = arr1.concat(arr2); // arr3 is a new array [ "a", "b", "c", "d", "e", "f" ] 语法 var new_array = old_array.concat(value1[, value2[,…
用非JS方法打开一个新页面,主要防止客户端禁止浏览器JS以后的跳转失效 <meta http-equiv="refresh" content="0; url=https://www.baidu.com"> 很明显这是一个放在头部位置的代码,0代表自动刷新时间,url代表重新定向要打开的网页 注意的地方:分号和引号,还有URL要把HTTP://带上,不然跳转的只会是你网站根目录下的URL: 代码可以用在哪里? 放当前页面就不用说了,很明了: 我们可以用在会…
给链接或按钮  添加 onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')" 如: <a href="javascript:void(0)" title="google" onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')">打开新TAB</a&…
有时候我们会遇到这种需求,截取数组中后5个元素作为一个新数组,且顺序不能变.数组中的slice()方法和splice()方法都可以实现这样的操作. const arr = [1,2,7,2,6,0,3,1,5,7,8,9,45,12,34,0,56,12,2] // slice()方法 const sliceArr = arr.slice(-5) console.log('sliceArr ',sliceArr) // 得到[34,0,56,12,2] // slice(start,end)表示…
Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象. 语法EDIT Object.defineProperty(obj, prop, descriptor) 参数 obj 需要定义属性的对象. prop 需定义或修改的属性的名字. descriptor 将被定义或修改的属性的描述符. 返回值 返回传入函数的对象,即第一个参数obj 描述EDIT 该方法允许精确添加或修改对象的属性.一般情况下,我们为对象添加属性是通过…
1.示例1 新增一个按钮 添加点击事件 onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')" 如: <a href="javascript:void(0)" title="google" onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')">打开新T…
第一种AfxBeginThread() 用AfxBeginThread()函数来创建一个新线程来执行任务,工作者线程的AfxBeginThread的原型如下: CWinThread* AfxBeginThread(AFX_THREADPROC pfnThreadProc, LPVOID lParam, int nPriority = THREAD_PRIORITY_NORMAL, UINT nStackSize = 0, DWORD dwCreateFlags = 0, LPSECURITY_A…
package seday09; /** * @author xingsir * 线程提供了一个方法:void join() ,join可以协调线程之间的同步运行. * 此方法允许执行这个方法的线程在该方法所属线程后等待,直到该方法所属线程结束后方可继续运行,否则会一致处于 阻塞状态. * 同步运行:执行有先后顺序 * 异步运行:执行没有先后顺序,多线程就是异步运行的. */public class JoinDemo { /* * 例如案例: * 用线程方式,显示文字,下载图片,显示图片 * 需…
jq创建一个新的节点对象,这对一些自定义功能很有帮助,而且可以随意控制对象的结构与内容,何乐而不为呢,看到这里,相信有些朋友已经按耐不住了,好记下来为大家介绍实现方法,感兴趣的朋友可以了解下哦 <!DOCTYPE html> <html> <head> <script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"…
concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arrayN) 参数说明: 注意:  该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 我们创建一个数组,将把 concat() 中的参数连接到数组 myarr 中,代码如下: <script type="text/javascript">   var mya = new Array(3);  …
VirtualBox新建虚拟机时报错,不能为虚拟机打开一个新任务的原因 解决办法如下 1.保证bios里的virtualization technology的选项开启,不同电脑BIOS设置可能会不一样,可以根据自己电脑品牌型号搜索一下如何在BIOS中开启虚拟化. 2.删除“C:\Users\[你的Windows系统当前用户名]\VirtualBox VMs\[你虚拟的系统名] ”,如果不能删除,先关闭所有虚拟机. 3.重新启动虚拟机…
//第一次安装时会有引导页展示  非第一次直接进入应用页 if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"isOne"] isEqual:@"isOne"]) { [self showViewController]; }else{ RootViewController *root= [[RootViewController alloc] init]; self.window.rootViewCon…
这是牛客网上的一道题~ 题意:遇到重复元素就删除(留下第一个不重复的即可). 解题思路:双循环一遍数组,arr[i] == arr[j] 成立时,删除 arr[j],并将 arr[j] 直接push到一个新数组中去. js代码实现: var array1 = [1,2,3,4,5,2,3,1,5,4]; function del(arr){ var ret = []; for(var i = 0; i < arr.length;i ++){ for(var j = i+1;j < arr.le…
filter快速过滤创建一个新数组 var new_array = arr.filter(callback(element[, index[, array]])[, thisArg]) 参数节 callback 用来测试数组的每个元素的函数.调用时使用参数 (element, index, array).返回true表示保留该元素(通过测试),false则不保留.它接受三个参数: element 当前在数组中处理的元素. index可选 正在处理元素在数组中的索引. array可选 调用了fil…
1. 用ARC管理内存 ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露.它自动为你管理retain和release的过程,所以你就不必去手动干预了.忘掉代码段结尾的release简直像记得吃饭一样简单.而ARC会自动在底层为你做这些工作.除了帮你避免内存泄露,ARC还可以帮你提高性能,它能保证释放掉不再需要的对象的内存. 2. 在正确的地方使用 reuseIdentifier 一…
这篇文章会介绍iOS8开发相关的主要特性. App 插件 通过支持插件,iOS8让我们可以系统指定的区域进行扩展,也就是为用户的特定需求提供自定义的方法.例如:可以通过App插件帮助用户分享他们的内容到社交网站.在用户安装了这个插件后,当他在App中点击分享按钮时就可以选择这个插件了.自定义的插件提供接受,认证,发布用户内容的功能.系统会在分享菜单中列出他们并且在用户点击后实例化他们. 在Xcode中,可以通过添加预先配置好的带插件的app来创建它.当用户安装有插件的app后,用户可以在设置中启…
本文转载至 http://blog.jobbole.com/51588/ 本文由 伯乐在线 - studentdeng 翻译自 Chris Eidhof.欢迎加入技术翻译小组.转载请参见文章末尾处的要求. 自定义动画 iOS 7 对我来说最激动人心的特性就是新的视图控制器切换API(View Controller Transitioning API). iOS 7 之前,View Controller之间切换,我需要创建自定义的transitions. 而且这些方法都支持不完整,让人头疼.在tr…