当前位置: 首页 > news >正文

网站建设准备资料表格pyhton可以做网站吗

网站建设准备资料表格,pyhton可以做网站吗,网站的分辨率是多少,公众号开发者密码重置文章目录1. 和 equals 的区别是什么#xff1f;2.Hashcode的作用3. 两个对象的hashCode() 相同#xff0c; 那么equals()也一定为 true吗#xff1f;4.泛型常用特点5.使用泛型的好处#xff1f;1. 和 equals 的区别是什么#xff1f; “” 对于基本类型和引用类型 的作… 文章目录1. 和 equals 的区别是什么2.Hashcode的作用3. 两个对象的hashCode() 相同 那么equals()也一定为 true吗4.泛型常用特点5.使用泛型的好处1. 和 equals 的区别是什么 “” 对于基本类型和引用类型 的作用效果是不同的如下所示 基本类型比较的是值是否相同 引用类型比较的是引用是否相同 String x string; String y string; String z new String(string); System.out.println(xy); // true System.out.println(xz); // false System.out.println(x.equals(y)); // true System.out.println(x.equals(z)); // true因为 x 和 y 指向的是同一个引用所以 也是 true而 new String()方法则重写开辟了内存空间所以 结果为 false而 equals 比较的一直是值所以结果都为 true。 “equals” equals 本质上就是 只不过 String 和 Integer 等重写了 equals 方法把它变成了值比较。看下面的代码就明白了 首先来看默认情况下 equals 比较一个有相同值的对象代码如下 class Cat { public Cat(String name) { this.name name; } private String name; public String getName() { return name; } public void setName(String name) { this.name name; } } Cat c1 new Cat(小黑子); Cat c2 new Cat(小黑子); System.out.println(c1.equals(c2)); // false输出结果出乎我们的意料竟然是 false这是怎么回事看了 equals 源码就知道了源码如下 public boolean equals(Object obj) { return (this obj); }原来 equals 本质上就是 。 那问题来了两个相同值的 String 对象为什么返回的是 true代码如下 String s1 new String(叶子); String s2 new String(叶子); System.out.println(s1.equals(s2)); // true同样的当我们进入 String 的 equals 方法找到了答案代码如下 public boolean equals(Object anObject) { if (this anObject) { return true; } if (anObject instanceof String) { String anotherString (String)anObject; int n value.length; if (n anotherString.value.length) { char v1[] value; char v2[] anotherString.value; int i 0; while (n-- ! 0) { if (v1[i] ! v2[i]) return false; i; } return true; } } return false; }原来是 String 重写了 Object 的 equals 方法把引用比较改成了值比较。 总结 对于基本类型来说是值比较对于引用类型来说是比较的是引用而 equals 默认情况下是引用比 较只是很多类重新了 equals 方法比如 String**、**Integer 等把它变成了值比较所以一般情况下 equals 比较的是值是否相等。 2.Hashcode的作用 java的集合有两类一类是List还有一类是Set。前者有序可重复后者无序不重复。当我们在set中插入的时候怎么判断是否已经存在该元素呢可以通过equals方法。但是如果元素太多用这样的方法就会比较慢。 于是有人发明了哈希算法来提高集合中查找元素的效率。 这种方式将集合分成若干个存储区域每个对象可以计算出一个哈希码可以将哈希码分组每组分别对应某个存储区域根据一个对象的哈希码就可以确定该对象应该存储的哪个区域 hashCode方法可以这样理解它返回的就是根据对象的内存地址换算出的一个值。这样一来当集合要添加新的元素时先调用这个元素的hashCode方法就一下子能定位到它应该放置的物理位置上。如果这个位置上没有元素它就可以直接存储在这个位置上不用再进行任何比较了如果这个位置上已经有元素了就调用它equal方法与新元素进行比较相同的话就不存了不相同就散列其它的地址。这样一来实际调用equals方法的次数就大大降低了几乎只需要一两次。 3. 两个对象的hashCode() 相同 那么equals()也一定为 true吗 不对两个对象的 hashCode() 相同equals() 不一定 true。 代码示例 String str1 keep; String str2 brother; System. out. println(String. format(str1%d | str2%d, str1. hashCode(),str2. hashCode())); System. out. println(str1. equals(str2));执行结果: str11179395 | str21179395 false代码解读很显然“keep”和“brother”的 hashCode() 相同然而 equals() 则为 false因为在散列表中hashCode() 相等即两个键值对的哈希值相等然而哈希值相等并不一定能得出键值对相等。 4.泛型常用特点 泛型是Java SE 1.5之后的特性 《Java 核心技术》中对泛型的定义是 “泛型” 意味着编写的代码可以被不同类型的对象所重用。 “泛型”顾名思义“泛指的类型”。我们提供了泛指的概念但具体执行的时候却可以有具体的规则来约束比如我们用的非常多的ArrayList就是个泛型类ArrayList作为集合可以存放各种元素如Integer,String自定义的各种类型等但在我们使用的时候通过具体的规则来约束如我们可以约束集合中只存放Integer类型的元素如 ListInteger iniData new ArrayList()5.使用泛型的好处 以集合来举例使用泛型的好处是我们不必因为添加元素类型的不同而定义不同类型的集合如整型集合类浮点型集合类字符串集合类我们可以定义一个集合来存放整型、浮点型字符串型数据而这并不是最重要的因为我们只要把底层存储设置了Object即可添加的数据全部都可向上转型为Object。 更重要的是我们可以通过规则按照自己的想法控制存储的数据类型。 附上一篇博客介绍泛型
http://www.hkea.cn/news/14437783/

相关文章:

  • 潍坊网站制作人才招聘临沂经开区建设局网站
  • 可以找网图的软件长沙网站seo技术厂家
  • 精通网站建设 100%全能建站密码pdf常德做网站报价
  • 想开一个网站开发的公司wordpress编辑空两格
  • 主视觉设计网站ppt软件下载免费版
  • 国内免费图片素材网站快手直播间挂人气自助网站
  • 方便做流程图的网站做房产网站哪个好
  • 网站建设售后回访话术物流企业网站织梦模板
  • 郑州定制网站推广工具产品北京 网站设计公司
  • 网站稳定性网络推广网站推广方法
  • 企业网站建设规划设计任务书跨境平台哪个最好做?
  • 做外贸的网站开店流程开源阅读app
  • 商城网站建设预算要多少钱广东网络建设有限公司
  • 怎么在百度做网站网站建设 系统 排名
  • 免费app大全下载郑州网站优化汉狮网络
  • 不花钱怎么做网站运营谷歌下载安装
  • 在网上帮做图片的网站汕头网站建设方法
  • 江门网站建设junke100域名暂无法进行网站备案
  • 松溪网站建设wordpress获取作者
  • 网站设计培训班哪家好长宁专业做网站
  • 海南百度推广中心惠州做网站乐云seo
  • 网站建设和维护pdf网站建设项目实训报告
  • 企业网站建设具体步骤wordpress媒体选项
  • 知识竞赛网站建设方案策划书上高县城乡规划建设局网站
  • 怎么收录网站网站打不开 清理缓存后可以打开
  • 专门做酒店设计的网站个人做网站开发
  • 网站建设课程设计报告长春师范大学
  • 河南建设厅网站建设项目查询网站
  • wordpress 回收站在哪wordpress自带jquery
  • 青岛网站关键词重庆专业的网站服务公司