Wesley13 Wesley13
3年前
java 数组的协变和逆变
先说结论:1.基元类型数组不允许协变和逆变,无法编译通过。2.引用类型数组允许协变和逆变,逆变时会检查实际类型,如果不相符则抛出java.lang.ClassCastException。下面是验证代码。1publicclassTestArrayInstance{2publicst
Wesley13 Wesley13
3年前
java list相关源码笔记
ArrayList的长度扩容是以1.5倍,比如原来是100,扩容之后就是150,源码是进行位运算oldCapacity11、ArrayList的add方法的核心方法:Arrays.copyOf(T\\original,intnewLength),original:原始数组newLength:新数组的长度比如将一个长度为6的数
CuterCorley CuterCorley
4年前
C语言入门系列之6.一维和二维数组
一、数组的概念有如下几组数据:学生的学习成绩银行的账单一行文字这些数据的特点是:具有相同的数据类型;使用过程中需要保留原始数据。C语言为这类数据,提供了一种构造数据类型——数组。在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来,这些按序排列的同类数据元素的集合称为数组
Stella981 Stella981
3年前
HashMap容量分析
了解过HashMap都应该知道,HashMap内部会创建一个Entry<K,Vtable数组来存放元素,而且这个数组的长度永远都是2的指数次方。那么问题来了,为什么选择2的指数次方呢?首先,思考一下计算出hash值后,应该存放在数组的哪个位置?显然用求余(模)最简单。然而模的效率并不高,看看JDK是怎么做的,indexFor方法:st
Wesley13 Wesley13
3年前
HTML5新增的内容及API详解
querySelect()和querySelectAll()后面都是跟一个css选择器;前者返回符合条件的第一个匹配的元素,如果没有则返回Null;后者返回符合筛选条件的所有元素集合(数组),如果没有符合筛选条件的则返回空数组。document.getElementsByClass
Wesley13 Wesley13
3年前
JDK的3个bug
1.Annotation引用非空enum数组返回空数组首次发现时的环境:JDK1.8首次发现所在项目:APIJSON(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.com%2FTommyLemon%2FAPIJSON)测试用例:publi
Wesley13 Wesley13
3年前
Java开发笔记(六十)匿名内部类的优势
前面依次介绍了简单接口和扩展接口,给出的范例都是自定义的接口代码,其实Java系统本身就自带了若干行为接口,为了更好地理解系统接口的详细用法,接下来还是从一个基础的例子出发,抽丝剥茧地逐步说明接口的几种调用方式。早在阐述如何使用数组的时候,就提到Java提供了Arrays工具可用于数组变量的常见处理,例如该工具的copyOf方法用来复制数组、sort方
Wesley13 Wesley13
3年前
JAVA 数组作为方法返回值—返回地址
packageCode411;/一个方法可以有0,1,多个参数,但只能有0和1个返回值希望一个方法产生多个结果数据进行返回数组作为方法的参数,传递进去的是数组的地址值。/publicclassCodeAaaryReturn{publicstaticvoidmain(Stringargs){int
Wesley13 Wesley13
3年前
GNU C 与 ANSI C的区别
1.零长度数组GNUC允许使用零长度数组,定义变长度对象时比较方便structvar\_data{   intlen;   chardata\0\;};var\_data的大小仅为一个int型,data是常量地址,data\index\是访问其后的内存空间。structvar\_data\smal
Stella981 Stella981
3年前
JavaScript基础2
普通的JavaScript对象是命名值的无序集合,JavaScript同样定义了一种特殊的对象数组array,表示带编号的值的有序集合,JavaScript为数组定义了专用的语法,使得数组具有区别于普通对象而独有的行为特性JavaScript还定义了另一种特殊对象函数,函数是具有与它相关联的可执行代码的对象,通过调用函数来运行可执行代码并返回运算结