对于Arrays的deep相关的方法。
关于: deepEquals
Arrays.equals(Object[] o1, Object[] o2):当是判断数组是引用类型数组的时候,从以下条件判断:
1、o1与o2指向同一个数组实例时,返回true
2、在o1,o2都不为空,且长度相等,而且同角标元素同为空,或者equals相等时,返回true
Arrays.equals(int[] o1, int[] o2):当判断数组是基本类型数组时,以下条件判断:
1、o1与o2指向同一个数组实例时,返回true
2、在o1与o2都不为空,且长度相等,而且同角标元素相等(数据类型不同相等方法判断不同)。
Arrays.deepEquals (Object[] o1, Object[] o2): 判断条件:
1、o1与o2指向同一个数组实例时,返回true
2、在o1,o2都不为空,且长度相等,而且同角标元素都补同为空时,进行以下判断:
当元素为基本数据类型的数组的时候,
有 Arrays.equals(Object[] e1, Object[] e2)返回为true,则为true。
当元素为引用数据类型的数组的时候,
有Arrays.deepEquals (Object[] e1, Object[] e2)返回为true,则为true。
当元素为其他类型的时候,
有 e1.equals(e2)为true,则为ture。
关于:deepHashCode(Object a[])
Arrays.hashCode(Object a[]) :
从 result = 1;
然后从第一个元素进行 result = 31 * result + element.HashCode(); 进行循环计算。
Arrays.deepHashCode(Object a[]):
从 result = 1;
然后从第一个元素进行 result = 31 * result + elementHash; 进行循环计算。
elementHash : 就是下一级元素计算出来的。
当element为 引用数据类型数组时,elementHash使用 Arrays.deepHashCode(Object a[])计算。
当element为 基本数据类型数组时,elementHash使用 Arrays.hashCode(Object a[])计算。
当element为 非数组时,elementHash使用 element.hashCode()计算。
关于:deepToString(Object [] 0)
例子:
String [][]s ={{"s","ss"},{"t"}};
sop(Arrays.deepToString(s)); //[[s, ss], [t]]
sop(Arrays.deepToString(s[0])); //[s, ss]
Integer [][]i ={{2,34,6,7,1},{2,3,5,2,0}};
sop(Arrays.deepToString(i)); //打印结果:[[2, 34, 6, 7, 1], [2, 3, 5, 2, 0]]
sop(Arrays.deepToString(i[0])); //打印结果:[2, 34, 6, 7, 1]
对于Arrays的deep相关的方法。的更多相关文章
- Android View各种尺寸位置相关的方法探究
Android View各种尺寸位置相关的方法探究 本来想做一个View间的碰撞检测之类的. 动手做了才发现不是想象的那么简单. 首先,写好了碰撞检测的工具类如下: package com.mengd ...
- Dynamic CRM 2013学习笔记(二十三)CRM JS智能提示(CRM 相关的方法、属性以及页面字段),及发布前调试
我们知道在CRM的js文件里引用XrmPageTemplate.js后,就可以实现智能提示,但每个js文件都引用太麻烦了,其实可以利用vs的功能让每个js文件自动实现智能提示CRM的js: 另外,我们 ...
- jsp:和属性相关的方法,请求的转发,重定向
jsp中与属性相关的方法: 方法: void setAttribute(String name, Object o): 设置属性 Object getAttribute(String name):获取 ...
- Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用
1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...
- Android音频焦点处理相关的方法
有这么一种场景:你打开qq音乐.优酷客户端.视频播放的时候.这个时候突然来电显示了,此时所有的MediaPlayer相关的服务或者响应都进入"休眠"状态.那么,这个功能是怎么实现的 ...
- Android开发教程 - 使用Data Binding Android Studio不能正常生成相关类/方法的解决办法
本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...
- jquery checkbox相关 prop方法
jquery checkbox相关 prop方法 firefox中 checkbox属性checked="checked"已有,但复选框却不显示打钩的原因复选框绑定了click事件 ...
- Spider Studio 新版本 (20140225) - 设置菜单调整 / 提供JQueryContext布局相关的方法
这是年后的第一个新版本, 包含如下: 1. 先前去掉的浏览器设置功能又回来了! 说来惭愧, 去掉了这两个功能之后发现浏览经常会被JS错误打断, 很不方便, 于是乎又把它们给找回来了. :) 2. 为J ...
- iOS文件路径相关的方法
文件路径相关的方法在NSPathUtilities中,主要是操作路径 获得一个路径 NSString *documents = [NSSearchPathForDirectoriesInDomains ...
随机推荐
- shit iview docs & i-radio bug
shit iview docs & i-radio bug https://github.com/iview/iview/issues/5627 <i-row> <i-col ...
- css多列居中
https://jingyan.baidu.com/article/36d6ed1f67d58f1bcf488393.html
- 一、hadoop部署
一.Java环境 yum 安装方式安装 1.搜索JDK安装包 yum search java|grep jdk 2.安装 yum install java-1.8.0-openjdk-src.x86_ ...
- python工具使用笔记
1.pip pip是Python官方推荐的包管理工具,在doc界面直接使用pip或者pip3命令即可,例如安装gensim: C:\Users\kayan.sjc>pip3 install -- ...
- Memcached cas 陷阱
本地使用的 php7环境,测试好上传到服务器后发现memcached get 报错,服务器上是php5环境: 出错代码如下: $memConnect->get($key,null, Memcac ...
- cefSharp 开发随笔
最近用cefSharp开发一点简单的东西.记录一点随笔,不定时更新. 1.用nuget安装完之后,架构要选择x86或者x64,否则编译会报错(截止到Chrome 55版本) 2.向Chrome注册C# ...
- openblas下载安装编译
编译好的库: https://github.com/JuliaLinearAlgebra/OpenBLASBuilder/releases 源码编译 下载:https://github.com/xia ...
- Sharepoint 2016 - Deploy Office Online Server
Step 1: Install prerequisite software for Office Online Server To install Office Online Server Ope ...
- springmvc拦截器匹配规则
- codeforces570C
Replacement CodeForces - 570C 话说很久很久以前,孙悟空被压在了山下,很无聊.于是他找了一个只包含小写字母和字符"." 的字符串. 由于他比较无聊,他就 ...