- 博客(150)
- 问答 (1)
- 收藏
- 关注
原创 数组-day2
erase函数,时间复杂度O(n)1、暴力求解:两层,for循环遍历,删除,覆盖;O(n^2)2、双指针思路:一层for循环,快指针(目标值),慢指针(非目标值)时间复杂度O(n)空间复杂度O(1)
2024-09-20 10:39:55
216
1
原创 chapter14-集合——(集合练习)——day19
(2)TreeSet的去重机制:如果你传入了一个Comparator匿名对象,就使用实现的compare去重,如果方法返回0,就认为是相同的元素/数据,就不添加,如果你没有传入一个Comparator匿名对象,则以你添加的对象实现的Compareable接口的compareTo去重.这个要remove的cc的哈希值是根据1001 cc来计算的,但链表里的1001 cc之前是用aa计算出来的,所以删除失败,还是有两个对象。试分析HashSet和TreeSet分别如何实现去重的。
2024-09-18 10:33:49
167
原创 chapter14-集合——(List-Hashtable)——day18
这里讲错了,无参构造是默认调用添加对象的compareTo方法进行排序!匿名内部类,实现了Comparator接口的子类,是一个类、也是一个对象。按照长度大小排序,如果此时加入字符串长度和原有的长度一致,是加不进入的。这就说明了比较方法的重要性,用什么规则比较,决定了能否加进去。这个copy实际有什么意义吗, 直接增强for不就添加了么。
2024-09-16 10:25:26
282
原创 chapter14-集合——(List-HMap)——day18
重点在于hashmap的扩容机制它内部是k-v对方式存储数据,Hash$node类型;相同的key,就会覆盖Hash$node类型实现了mapentry接口扩容条件,看是否到临界值,每次扩两倍树化条件,链表超过8+整个table超过64。
2024-09-12 22:08:34
415
原创 chapter14-集合——(List-Map)——day18
Map的遍历是重难点,理解Map接口的结构,层层嵌套一种迭代器遍历,一种增强for遍历。
2024-09-12 16:42:08
280
原创 chapter14-集合——(List-LikedHashSet)——day18
目录528-LikedHashSet介绍529-LikedHashSet源码介绍528-LikedHashSet课堂练习
2024-09-11 22:20:42
191
原创 chapter14-集合——(List-HashSet)——day18
看源码做分析:不是直接指向常量池的吗?两个存的地址一样的啊。如果name和age相同,就返回一样的hash值。两个tom都可以添加成功是因为这是两个对象。HashSet的本质是Hashmap。三个对象,Hash值不同,都能加进去。
2024-09-11 20:51:05
367
原创 chapter14-集合——(List)——day17
无参的情况下,默认就是开始10个容量不够就二倍扩大,如果是有参,还可以指定capacityIncrement的大小,只不过当capacityIncrement是0时扩大的效率高一些,
2024-09-11 09:39:49
665
原创 chapter13-常用类——(StringBuffer StringBuilder)—day15
475-StringBuffer结构剖析476-StringBuffer转换477-StringBuffer方法
2024-09-09 21:16:07
199
原创 chapter13-常用类——(Date、Calendar、LocalDate)—day17
IDEA里面的properties是set/get方法。
2024-09-09 19:25:05
615
原创 chapter13-常用类——(Arrays)——day16
如果拷贝长度<0就抛出异常NegativeArraySizeException。二分搜索查找要求有序,如果数组中不存在这个元素,返回-(low+1)使用int就是0,Integer就会是null。接口编程-compare。
2024-09-09 10:29:06
1000
原创 chapter13-常用类——(String类)——day16
1、下面那个StringBuffer(str)有参构造器,在传入的是null的时候会报错,空指针异常。
2024-09-08 14:15:11
279
原创 chapter13-常用类——(String类)——day15
1、接口Serializabel,说明String对象可以串行化,在网络传输。最终这两种方法创建的不是一个对象,指向的地址不同,一个指向堆,一个执行常量池。如果字符长度不等,就用第一个字符串长度-第二个字符串长度,3-4=-1。a==b,看的是否是一个对象,显然不是,一个在堆里,一个在常量池。equals已经重写了,比较value存放的数组是不是一样;b.intern,返回的是常量池中的地址(对象)str=“java”,是在常量池重新创建了。a==b,都是在一个常量池,指向一个地址。
2024-09-04 22:12:34
634
原创 chapter13-常用类——(包装类)——day15
2、直接赋值,在-128-127范围内,是直接return的,没有创建新的对象,所以是True。5、第一个是从数组(-128-127)取出来的对象,第二个是新建了一个对象,所以是False。1、==两边是两个对象时,判断的是 是否为同一个对象,所以第一个两边是两个对象False。三元组,一真大师,前面为真,返回第一个值;前面为假,返回第二个值。其他六个都是Number的子类,实现了Comparable接口。3、超过范围,是新建的两个对象,所以是False。实现了了两个接口,继承了Object父类。
2024-09-04 20:22:07
317
原创 chapter12-异常(Exception)——(作业)——day15
【代码】chapter12-异常(Exception)——(作业)——day15。
2024-09-04 17:12:35
244
原创 chapter10、11——(内容梳理)——day14
小结:静态方法,只能访问静态的成员,非静态的方法,可以访问静态成员和非静态成员(必须遵守访问权限)当方法中不涉及到任何和对象相关的成员,则可以将方法设计成静态方法,提高开发效率。
2024-09-03 11:37:19
213
原创 chapter11-枚举和注解——(注解)——day14
目录433-override注解434-Deprecated注解435-SupressWarnings注解436-JDK的元注解
2024-09-02 20:19:22
234
原创 chapter11-枚举和注解——(枚举类)——day14
一、如果声明了有参构造器,必须再显式地声明无参构造器,否则无参构造器是被有参构造器覆盖了的二、
2024-09-02 17:04:24
454
原创 chapter10-OOP高级部分——(局部、匿名内部类)——day13
匿名内部类只能用一次,并实例化了一个tiger对象,//5.注意("jack")参数列表会传递给构造器。tiger指向它的对象,tiger是它的对象名。
2024-08-31 11:11:44
529
原创 chapter09-OOP高级部分——(接口)——day13
1、当子类继承了父类,就自动的拥有父类的功能2、如果子类需要扩展功能,可以通过实现接口的方式扩展.3、可以理解实现接口是 对java单继承机制的一种补充.
2024-08-31 09:42:40
767
原创 chapter09-OOP高级部分——(抽象类)——day12
2、错,不能有static,没办法被重写。3、错,private,不能重写。1、错,dinal不能被继承。
2024-08-30 17:33:59
733
原创 chapter09-OOP高级部分——(单例模式)——day12
懒汉式的单例模式,只有当用户使用getInstance方法是,才返回cat对象;再次调用,返回的是之前的cat对象。饿汉式,可能造成创建了对象,但没有使用。
2024-08-30 16:31:34
915
空空如也
Visual Studio Code 的 C语言输出菱形文字
2022-10-11
Visual Studio Code 英中文输出乱码
2022-10-11
希望能够有人帮忙看下,爬虫新手实在是不知道咋搞
2021-05-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人