对象数组

OC模型数组排序

被刻印的时光 ゝ 提交于 2020-03-24 11:44:06
3 月,跳不动了?>>> // 排序key, 某个对象的属性名称,升降序, YES-升序, NO-降序 NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"type" ascending:NO]; // 排序结果 NSArray * Arr = [list sortedArrayUsingDescriptors:[NSArray arrayWithObject:sort]]; 来源: oschina 链接: https://my.oschina.net/wayzhu/blog/3210027

收藏的一些javascript片段

a 夏天 提交于 2020-03-24 09:38:21
学习js也很有一段时间,收集了一些js的片段。特地整理排版了一下,以一个js初学者的视界来分析注释了这些代码段,暂且不去讨论它 的性能和优化问题,相信会对一些初学者有用。第一次发文,定许多纰漏和不足的地方,希望可以交流和学习。 1 javascript动态加载--2 获取字符串的字节长度--3 DOM加载完即执行(有别于onload-页面的一切都加载完后执行)--4获取CSS属性--5 数组检测--6 继承--7 简单事件绑定--8 浏览器判断--9 阻止事件的默认行为--10 数组合并去重--11 将arguments转化为数组--12 数组去重--13 根据生日算年龄--14 获取某个节点下类名为classname的所有元素--15 object.crate的用法--16 获取事件的目标对象--17 获取事件发生时按键状态--18 dom操作--19 阻止事件冒泡--20 元素位置计算--21 元素显示效果--22 闭包的用例--23 实现字符串长度截取--24 获取域名的主机--26 清楚空格--27 替换全部--28 html文档中转义和解码字符--29 判断是否为数字类型--30 设置cookie--31 获取指定cookie--32 加入收藏夹--33 判断IE6--34 跨域解决方法--35 加载样式文件--36 今天是星期几--38 返回按id检索的元素对象--39

Ehcache计算Java对象内存大小

最后都变了- 提交于 2020-03-24 06:25:00
在EHCache中,可以设置maxBytesLocalHeap、maxBytesLocalOffHeap、maxBytesLocalDisk值,以控制Cache占用的内存、磁盘的大小(注:这里Off Heap是指Element中的值已被序列化,但是还没写入磁盘的状态,貌似只有企业版的EHCache支持这种配置;而这里maxBytesLocalDisk是指在最大在磁盘中的数据大小,而不是磁盘文件大小,因为磁盘文中有一些数据是空闲区),因而EHCache需要有一种机制计算一个类在内存、磁盘中占用的字节数,其中在磁盘中占用的字节大小计算比较容易,只需要知道序列化后字节数组的大小,并且加上一些统计信息,如过期时间、磁盘位置、命中次数等信息即可,而要计算一个对象实例在内存中占用的大小则要复杂一些。 计算一个实例内存占用大小思路 在Java中,除了基本类型,其他所有通过字段包含其他实例的关系都是引用关系,因而我们不能直接计算该实例占用的内存大小,而是要递归的计算其所有字段占用的内存大小的和。在Java中,我们可以将所有这些通过字段引用简单的看成一种树状结构,这样就可以遍历这棵树,计算每个节点占用的内存大小,所有这些节点占用的内存大小的总和就当前实例占用的内存大小,遍历的算法有:先序遍历、中序遍历、后序遍历、层级遍历等。但是在实际情况中很容易出现环状引用(最简单的是两个实例之间的直接引用

vue中检测对象和数组值变化的问题

▼魔方 西西 提交于 2020-03-23 21:31:34
今天工作中遇到改变vue data中某个对象的值,却无法触发视图更新的问题。看了看官方文档,怎么解决的呢? 1、检测对象的变化 受现代 JavaScript 的限制(以及废弃 Object.observe ), Vue 不能检测到对象属性的添加或删除 。由于 Vue 会在初始化实例时对属性执行 getter/setter 转化过程,所以属性必须在 data 对象上存在才能让 Vue 转换它,这样才能让它是响应的。 使用Object.assign() 或 _.extend() 方法来添加属性 // 代替 `Object.assign(this.someObject, { a: 1, b: 2 })` this.someObject = Object.assign({}, this.someObject, { a: 1, b: 2 }) 2. 检测数组的变化 由于 JavaScript 的限制, Vue 不能检测以下变动的数组: (1)、当你利用索引直接设置一个项时,例如: vm.items[indexOfItem] = newValue (2)、当你修改数组的长度时,例如: vm.items.length = newLength 如何解决上述问题呢? 方法1: // Vue.set Vue.set(example1.items, indexOfItem, newValue) 方法2:

JavaScript与DOM(上)

让人想犯罪 __ 提交于 2020-03-23 10:06:49
本来像自己写一篇的。。。结果看到了Tom uncle的这篇。。总结的确实很赞,其他文章也非常好推荐 转载自:http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 文档对象模型Document Object Model DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的API。Javascript和DOM一般经常作为一个整体,因为Javascript通常都是用来进行DOM操作和交互的。 主要内容来自:http://net.tutsplus.com/tutorials/javascript-ajax/javascript-and-the-dom-series-lesson-1/ 关于DOM,有些知识需要注意: 1. window对象作为全局对象,也就是说你可以通过window来访问全局对象。 属性在对象下面以变量的形式存放,在页面上创建的所有全局对象都会变成window对象的属性。 方法在对象下面以函数的形式存放,因为左右的函数都存放在window对象下面,所以他们也可以称为方法。 2. DOM为web文档创建带有层级的结果,这些层级是通过node节点组成,这里有几种DOM node类型,最重要的是Element, Text, Document。

sqlhelper .cs

空扰寡人 提交于 2020-03-23 09:22:57
using System; using System.Data; using System.Xml; using System.Data.SqlClient; using System.Collections; using System.Configuration; namespace BookDAL { /// /// SqlServer数据访问帮助类 /// public sealed class SqlHelper { #region 私有构造函数和方法 private SqlHelper() { } /// /// 将SqlParameter参数数组(参数值)分配给SqlCommand命令. /// 这个方法将给任何一个参数分配DBNull.Value; /// 该操作将阻止默认值的使用. /// /// 命令名 /// SqlParameters数组 private static void AttachParameters(SqlCommand command, SqlParameter[] commandParameters) { if (command == null) throw new ArgumentNullException("command"); if (commandParameters != null) { foreach (SqlParameter p

java集合框架01

你。 提交于 2020-03-23 06:20:36
List 接口存储一组不唯一(可以重复),有序(插入顺序)的对象 01. ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高 通过看ArrayList的源码得知: /** * Constructs an empty list with an initial capacity of ten. 构造一个初始容量为十的空列表 */ public ArrayList() { this(10); 调用带参的构造 参数为10 } ArrayList创建的时候,数组初始化长度为10! List list=new ArrayList(-1); 这句话会运行错误! 看源码得知! /** * Constructs an empty list with the specified initial capacity. * * @param initialCapacity the initial capacity of the list * @exception IllegalArgumentException if the specified initial capacity * is negative */ public ArrayList(int initialCapacity) { super(); if (initialCapacity < 0) /

Js对象

微笑、不失礼 提交于 2020-03-23 06:19:43
Function引用类型创建的对象也叫函数。 一、创建函数:   1.function 函数名(x,y,z...){     各种js语句     }   2.var 函数名=function(x,y,z...){   各种js语句     } 二、调用函数:   函数名(); 三、函数可以有返回值:关键字return,如 1 var $1=function (){ 2 console.log('function $1 running~'); 3 return 2; 4 }; 5 console.log($1());   输出结果如下: 四、function对象有默认属性length,代表形参的个数。 Array引用类型创建的对象也叫数组。 一、是数据的集合,数组里面的值称为数组元素; 二、数组元素可以是基本数据类型,也可以是数组或Object类型; 三、实例: 1 <script type="text/javascript"> 2 var arr1 = new Array(); 3   arr1[1]=3; 4   arr1[2]={ 5     name:'zrh' 6   }; 7   var arr2=new Array('blue','gray','red'); 8 var arr3 =[5,'2','zrh',true]; 9   console.log(arr1[1]

localStorage存储数据的格式都是以字符串的形式来存储的,

允我心安 提交于 2020-03-22 04:47:11
localStorage存储数据的格式都是以字符串的形式来存储的, 存储数组对象的方式就是将数组对象转为字符串,在读取的时候再将字符串转成数组对象 操作的方式: 存: var obj = {"name":"xiaoming","age":"16"} localStorage.setItem("userInfo",JSON.stringify(obj)); 取: var user = JSON.parse(localStorage.getItem("userInfo")) 删除: localStorage.remove("userInfo); 清空: --------------------- 作者:Y_东东 来源:CSDN 原文:https://blog.csdn.net/qq_20353887/article/details/54962784 版权声明:本文为博主原创文章,转载请附上博文链接! 来源: https://www.cnblogs.com/shaozhu520/p/10286205.html

字符流;字符输入流;字符输出流;字符流的拷贝;文件续写;字符高效输入缓冲流;字符高效输出缓冲流 (Java Day20)

♀尐吖头ヾ 提交于 2020-03-22 02:14:04
一,字符流 编码:把字符按照一定的方式转换为对应的数字,【就是把内存中的资源存放到磁盘文件的过程;磁盘文件中存放的都是数字【以字节的方式存储的】】 解码:把文件中的存储的数字按照一定的方式转换为对应的字符 编码使用的转换方式和解码使用的转换方式如果一致的看到的就是正常的内容 编码使用的转换方式和解码使用的转换方式如果不一致看到的就是非正常的内容【乱码】 使用字节流处理字符【字符串】的问题 使用字节流写字符【字符串】 可以使用,但是需要先把字符串【字符】转成字节数组,再存储到文件中,比较麻烦 ​ 字符--->字节数---->进行写出【写出到文件】 2. 使用字节流读取字符 如果是纯英文,可以一次读取一个字节或者读多个没有影响 如果是纯中文,可以一次读取两个字节(GBK)那就没有毛病,读取三个字节就会出 ​ 3. 现乱码的现象 如果是中英文混杂,每次不知道读取多少个字节,因此无论字节数组准备多大,都有可能会出现乱码【无法避免乱码的现象】导致字节流操作纯文本文件的时候会出现乱码的现象 代码示例 package com.ujiuye.demo; import java.io.File; import java.io.FileInputStream; import java.io.IOException; public class Demo { public static void main