快速算出移位运算符结果方法:在不大于自身数值类型最大位数的移位时,一个数移位n,就是将这个数乘以(左移)2的n次幂,右移就是除,然后都取整就可以了比如int 32位的500>>3 这样算:500/8 取整 就是62356>>4 356/16 结果是 228<<3 8*8 结果是 6464位和上面方法 ...
分类:
其他好文 时间:
2020-06-30 00:39:47
阅读次数:
58
PHP标量类型与返回值类型声明 默认情况下,所有的PHP文件都处于弱类型校验模式。 PHP 7 增加了标量类型声明的特性,标量类型声明有两种模式: 强制模式 (默认) 严格模式 declare(strict_types=1); 代码中通过指定 strict_types的值(1或者0),1表示严格类型 ...
分类:
Web程序 时间:
2020-06-29 18:47:18
阅读次数:
78
在学习原型模式的时候,需要实现ICloneable时,调用object的MemberwiseClone(浅表副本)方式时发现一个问题: MemberwiseClone方法只会将值类型完全Clone,引用类型在Clone时只复制引用。 在我的实验中发现string类型的对象在MemberwiseClo ...
分类:
其他好文 时间:
2020-06-29 11:49:15
阅读次数:
35
1.尽可能的使用属性,而不是数据成员; 2.常量选择readonly而不是const; 3.选择is或者as操作符而不是强制类型转换; 4.用条件属性而不是#if; 5.始终提供ToString(); 6.区别值类型数据和引用类型数据; 7.选择恒定的原则值类型数据; 8.确保0对于值类型数据是有效 ...
分类:
编程语言 时间:
2020-06-29 09:34:38
阅读次数:
67
1.构造方法的作用:初始化对象 2.构造方法的形式:构造方法名与类名一致, 没有返回值类型,没有void修饰,没有具体返回值 3.关于构造方法的注意事项:即便我们没有给出一个类的构造方法,系统也会自动给出一个无参的构造方法;若我们给出了构造方法,系统将不再提供默认的构造方法,即不管我们给出的是不带参 ...
分类:
编程语言 时间:
2020-06-29 00:41:55
阅读次数:
73
类型定义了值的行为特征 各种bug & trick... 继续bug 必须完全搞清楚。。 ...
分类:
编程语言 时间:
2020-06-28 12:29:38
阅读次数:
51
异步编程模型 使用 IAsyncResult 设计模式的异步操作是通过名为 BeginOperationName 和 EndOperationName 的两个方法来实现的,这两个方法分别开始和结束异步操作 OperationName 。 例如, FileStream 类提供 BeginRead 和 ...
分类:
其他好文 时间:
2020-06-28 00:12:16
阅读次数:
55
这一段时间,总是很纠结为什么Objects中的getClass方法可以返回包含子类地址信息的东西(我不确定返回值类型)。 因为在Java中,我们定义的父类,我想破脑袋也想不出怎么可以得到子类的信息。 在源码中,getClass非常简洁。 **源码:**public final native Clas ...
分类:
其他好文 时间:
2020-06-27 13:29:31
阅读次数:
67
思路:深度比较两个对象,就是要深度比较对象的每一个元素。=> 递归 递归退出条件: 被比较的是两个值类型变量,直接用“ ”判断 被比较的两个变量之一为null,直接判断另一个元素是否也为null 提前结束递推: 两个变量keys数量不同 传入的两个参数是同一个变量 递推工作: 深度比较每一个key ...
分类:
Web程序 时间:
2020-06-27 09:57:49
阅读次数:
133
一、值类型 VS 引用类型 值类型 引用类型 值直接存储在栈中 值存储在堆中,再将堆的地址存到栈中 number, string, boolean, undefined, symbol object, array, null 变量之间赋值 a = b,是指直接将栈中变量a的值复制到变量b的栈空间里面 ...
分类:
编程语言 时间:
2020-06-27 09:49:29
阅读次数:
62