Java
m0_72569358
这个作者很懒,什么都没留下…
展开
-
linkedhashset
当加入新对象是因为是new出来的对象所以不会查重复,需要更改Car对象的hashcode和。要让name和price同时相同equals才为真,所以两个都勾上。原创 2023-02-19 15:38:47 · 41 阅读 · 0 评论 -
properties
properties是hashtable的子类实现了map接口。原创 2023-02-17 15:35:17 · 38 阅读 · 0 评论 -
Hashtable
hashtable。原创 2023-02-13 21:39:57 · 45 阅读 · 0 评论 -
hashmap使用
当后进来的与某个已经存储的hash值一样value不一样,就会挂勾在已储存的位子后面,而且是单向链表。map.putIfAbsent(),如果已有(key值相同)就什么都不做,如果没有就添加。当后进来的与某个已经存储的值完全一样,就会覆盖。如果替代一个不存在的数,不做任何动作。map.replace()修改数据。object b是被替代的数据。查找某个key,返回true。当key值相同,就会覆盖。原创 2023-02-13 11:23:09 · 41 阅读 · 0 评论 -
HashMap源码分析
调用构造器。原创 2023-02-12 16:11:05 · 43 阅读 · 0 评论 -
Set接口
5.这里的equals是可以给程序员自己编辑比较条件。lucy放到table索引为3的位置。结点Jack挂在结点john后面。将rose结点挂载到jack后。创建Node[]数组。原创 2023-02-12 00:52:31 · 35 阅读 · 0 评论 -
linkedlist
生成新结点,这个结点的prev = l = null,next=null,item=e=1。把newNode赋值给last,现在整个链子的last指向newNode。l=null进入if语句,现在整个链子的first也指向newNode。先把last赋值给l,l = last = null。整个链的头(first)指向第二个结点。整个链子的结点数减一(3-1=2)remove()是删除第一个结点。最后返回删除的第一个结点的内容。把第二个结点的prev制空。把f的内容和next制空。原创 2023-02-08 16:05:14 · 68 阅读 · 0 评论 -
vector
vector原创 2023-02-08 14:27:27 · 42 阅读 · 0 评论 -
arraylist扩容机制
没有指定list大小:0→10→15→22(×1.5以此类推)指定list大小:指定大小×1.5。原创 2023-02-07 15:38:56 · 68 阅读 · 0 评论 -
list方法
list是collection接口的子接口。这里返回的是第0,1两个元素。1.集合中的元素有序排列。原创 2023-01-31 22:33:39 · 58 阅读 · 0 评论 -
Java集合遍历(迭代器,增强for,普通for)
迭代器作用如图所示如果已经到了最后一个元素,再执行.next就会报错先生成一个迭代器while判断是否还有下一个元素,有下一个元素才输出,元素的内容会返回到iterator.next()里。原创 2023-01-31 21:41:28 · 118 阅读 · 0 评论 -
Java集合
add方法有自动装箱,会把int10自动转成integer10。原创 2023-01-31 12:33:09 · 56 阅读 · 0 评论 -
大数处理(数值较大或者精度较大)
遇到数值较大的数遇到精度较大的数。原创 2023-01-22 23:38:51 · 40 阅读 · 0 评论 -
system
输出结果是【1,2,3】原创 2023-01-22 22:53:46 · 49 阅读 · 0 评论 -
arrays.sort
sort方法compare方法用了匿名内部类。原创 2023-01-22 22:09:20 · 59 阅读 · 0 评论 -
Math方法
Math方法原创 2023-01-14 23:41:56 · 52 阅读 · 0 评论 -
StringBuilder和StringBuffer,String的区别
三者区别。原创 2023-01-14 22:58:56 · 41 阅读 · 0 评论 -
StringBuffer
与String相比,StringBuffer有自动扩容机制,储存在堆中的value数组中,修改内容后还是指向value数组。而String储存在常量池,修改内容后就指向新的对象。appendNull源代码,调用后会加null这四个字母,所以sb.length为0+4=4,输出是“null”把str传入构造器会造成空指针异常。原创 2023-01-14 18:33:14 · 41 阅读 · 0 评论 -
String类型
而s1==s2中,s1指向s1在堆中创造的value数组(可以称之为v1),s2指向s2在堆中创造的value数组(可以称之为v2),所以s1==s2为false。当变量c = 变量a+变量b,会先把a和b指向的对象存放在堆的value中,最后再调用tostring方法生成新的常量值helloabc然后指向它。要注意p1.name==p2.name比较的是p1.name和p2.name指向谁,而不是p1和p2指向谁。但是b指向堆中的value,b.intern指向的是常量池,所以==为false。原创 2023-01-13 17:31:38 · 88 阅读 · 0 评论 -
Java包装类
方法1 .这里i并没有改变,还是100方法2.每个包装类都有自己的toString方法,直接调用就好方法3.原创 2023-01-11 15:56:09 · 39 阅读 · 0 评论 -
Java三元运算符
在这里,三元运算符是一个整体,表达式2出现了double类,所以整个三元运算符会自动提升至这里的觜高精度double而不是较低精度的int。表达式1 : 表达式2;条件表达式为True则为表达式1。原创 2023-01-10 01:11:25 · 52 阅读 · 0 评论 -
Java包装类
包装类继承体系。原创 2023-01-10 01:06:57 · 41 阅读 · 0 评论 -
throws
先演示一下错误的代码,不能运行可以用throws来对错误的代码进行处理使其可以运行,然后谁调用的f2,谁就要去处理这个f2里的异常throw后面可以跟Exception或者Exception的子类(代码的错误属于那一类的)throw后面可以跟多个错误类,但是一般用一个Exception来替代会方便点。原创 2023-01-05 16:41:44 · 53 阅读 · 0 评论 -
java异常处理
主要学习Java的异常处理的方法try catch是什么?当某段代码可能会报错时候就会出现程序终止,如果用try catch来捕获这段代码就能让程序不会终止运行下去。用Ctrl+alt+t选中try catchnum1 = 10num2 = 0把catch的代码块换成e.getMessage可以输出异常信息异常介绍异常体系图ctrl+b进入Throwable后右键选择diagrams然后选择show左上角I的虚线表示是实现了某个接口,其他实线表示子类和父类的关系。原创 2023-01-01 19:45:19 · 269 阅读 · 1 评论