对于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 ...
随机推荐
- sonar安装
##jdk不要用yum下载的 一.下载sonar源码 cd /usr/local/src wget https://sonarsource.bintray.com/Distribution/sonar ...
- python数据结构与算法第三天【时间复杂度计算方法】
最优时间复杂度(不可靠) 最坏时间复杂度(保证) 平均时间复杂度(平均状况) 不同语句的时间复杂度: (1)顺序语句:使用加法 (2)循环语句:使用乘法 (3)分支语句:使用坏时间复杂度 例如:如下代 ...
- 前端框架framework和库library的一点区别和记录
本篇纯文字,无关代码,只是一点概念的记录 关于所谓前端 首先学的是HTML5.CSS3.JavaScript这三个 之后接触了一下UI框架,如layui和bootstrap 目前是打算去学VUE和an ...
- QTP键盘操作笔记
micCtrlDwn Presses the Ctrl key. micCtrlUp Releases the Ctrl key. micLCtrlDwn Presses the left Ct ...
- HTTP协议 - 基础认识
在http协议使用场景上我们最熟悉的可能就是浏览器了,作为本系列第一篇,就讲一个问题 ”浏览器怎么连接上服务器并获取网页内容的“ : 首先 浏览器怎么连接上服务器的? 如果对OSI七层模型或者TCP ...
- 扒一扒开源世界有哪些licenses?
摘要:license,中文译为“许可证”.在开源世界里,license是具有法律效力的,通过选择相应的license,版权拥有者可以声称自己相应的权利,包括其他人使用.修改.引用.共享等一系列涉及版权 ...
- Introduction to Dynamic SQL
The idea of using dynamic SQL is to execute SQL that will potentially generate and execute another S ...
- codeforces24D
CF24D Broken robot 题目背景 小小迪带你吃瓜 题目描述 给出一个 n×m 的矩阵区域,一个机器人初始在第 x 行第 y 列,每一步机器人会等概率 的选择停在原地,左移一步,右移一步, ...
- Wiener Filter
假设分别有两个WSS process:$x[n]$,$y[n]$,这两个process之间存在某种关系,并且我们也了解这种关系.现在我们手头上有process $x[n]$,目的是要设计一个LTI系统 ...
- requests简单应用
requests发送get请求 无参数的get请求: response = requests.get(url='http://ws.webxml.com.cn/WebServices/WeatherW ...