09 2019 档案

摘要:单链表 存储结构 1、头插法建表 2、尾插法建表 3、查找第i个节点 4、按值查找 5、计算链表长度 6、插入元素 7、打印链表 链表的删除操作就不说了,和上面的操作差不多,先找第i-1各元素,然后改指针就OK,比较简单。 循环链表,在表的首尾进行操作比较合适。 双向链表,寻找前驱节点比较合适。 操 阅读全文
posted @ 2019-09-27 17:57 卑微芒果 阅读(457) 评论(0) 推荐(0)
摘要:Object.hasCode()默认使用对象的地址计算散列码。 Object.equals()默认比较对象地址。 一、散列与散列码 Hash结构容器散列原理(大致的原理,没有必要较真) 数组保存ArrayList的引用,散列码就是数组的下标值。存储元素时计算散列码,找到元素所属List,用该对象eq 阅读全文
posted @ 2019-09-20 19:51 卑微芒果 阅读(175) 评论(0) 推荐(0)
摘要:在UML中,描述两个类之间的关系,按照关系的强弱分为,实现=泛化>组合>聚合>关联>依赖。 这六种关系,是存在于UML中的概念,请不要和Java中的混淆。例如,UML中的组合,与Java中的组合,含义是不一样的。 类图是依赖于语言的,不同语言可能存在差别。 1、实现 实现:描述java中的imple 阅读全文
posted @ 2019-09-18 20:46 卑微芒果 阅读(527) 评论(0) 推荐(0)
摘要:感觉这一章有点散,还是来说一下需要注意的点吧。 一、数组知识点 1、数组的初始化方式 数组分配空间,但是没有初始化,就是默认0值。 2、数组与容器的不同点 数组进行这样的向上转型是合法的,而List这样转型不合法,因为List<Fruit>与ArrayList<Apple>根本不是子类与父类的关系。 阅读全文
posted @ 2019-09-14 20:17 卑微芒果 阅读(211) 评论(0) 推荐(0)
摘要:一、克隆的原理与应用 clone在堆上分配内存,分配的内存和源对象(即调用clone方法的对象)相同,然后再使用原对象中对应的各个域,填充新对象的域, 填充完成之后,clone方法返回,一个新的相同的对象被创建,同样可以把这个新对象的引用发布到外部。如果,想要对该对象进行处理,又想保留原来数据进行接 阅读全文
posted @ 2019-09-14 14:59 卑微芒果 阅读(11552) 评论(0) 推荐(0)
摘要:泛型这一章不知道是因为翻译的原因还是什么,感觉《编程思想》讲的混乱无比。花了很多的时间研究泛型,现在力求用最简单的语言,最简明的示例把这一章说清楚。 前言 还是要来区分一下细节的概念,对理解泛型影响还是蛮大的。 1、<T>与不在<>中的T的区别 输出结果: test 结果分析:<T>这里的T叫类型参 阅读全文
posted @ 2019-09-10 13:43 卑微芒果 阅读(374) 评论(0) 推荐(1)
摘要:前言 在开始介绍类型信息之前一定要区分一些概念: 1、静态类型语言与动态类型语言 静态类型语言:在编译期进行类型检查的语言(例如,Java)。(例如 int i = 3;) 动态类型语言:在运行期进行类型检查的语言(例如,JavaScript)。最明显的特征为变量没有类型值有类型(如,var=3;) 阅读全文
posted @ 2019-09-08 18:58 卑微芒果 阅读(259) 评论(0) 推荐(0)
摘要:一、Scanner简述 Scanner扫描器类本质上是由正则表达式实现的,可以接受任何能产生数据的数据源对象,默认以空白符进行分词(包括\n等),使用各种next方法进行扫描匹配,获取匹配的数据。 二、使用实例 1、示例一:从控制台读取数据 输出结果: Hello world(输入)Hello wo 阅读全文
posted @ 2019-09-06 20:44 卑微芒果 阅读(272) 评论(0) 推荐(0)
摘要:一、正则表达式的“\”问题 在Java的字符串中"\"有两个功能 (一)代表特殊字符:\t代表制表符,\n代表换行....等。 (二)代表转义: 在字符串中,如果出现 \ 及 " 等会造成代码歧义,所以要用\"进行转义 在Java的正则表达式中\也是表示两个功能 (一)代表特殊功能的字符:如\d代表 阅读全文
posted @ 2019-09-06 19:18 卑微芒果 阅读(259) 评论(0) 推荐(0)