- 博客(27)
- 收藏
- 关注
原创 哈希表冲突
哈希表是啥子? 1、哈希表其实也叫散列表,两个是一个玩意,英文是Hash Table 2、哈希表是一个数据结构 哈希冲突 当有两个不同key值经过哈希函数计算后,得到同一个下标,那么它们就存在在同一个桶里,那么就会产生哈希冲突。实际中冲突是不可避免的,只能通过改进哈希函数的性能来减少冲突。 解决哈希冲突的方法 1.开放寻址法 简单来说,就是当你的位置被占了之后,你就只能再另换位置,那就可以看下一位(下一个桶)是否被占,如果没有就存在这个桶中,如果被占,那就再查找...
2021-11-24 15:01:04
899
原创 1.8 JDK新特性 -- 函数式编程 lambda 表达式 接口里的方法
1.什么是函数式编程? Java为函数式编程引入了三个新的语法概念:Stream类、Lambda表达式和函数接口(Functional Inteface)。 Stream类用来支持通过“.”级联多个函数操作的代码编写方式;引入Lambda表达式的作用是简化代码编写;函数接口的作用是让我们可以把函数包裹成函数接口,来实现把函数当做参数一样来使用(Java 不像C那样支持函数指针,可以把函数直接当参数来使用) 函数式编程不是我们平时在 Java 中编写的函数或者方法,它是一种针对于数学的概念,可以将其理解为
2021-11-19 15:52:36
910
原创 泛型的协变和逆变,类型擦除
1.类型擦除: 会报错:bothmethodshavasomeerasure; 原因是java在编译的时候会把泛型,上面的String和Integer给擦除掉,java的泛型机制是在编译级别实现的,编译器生成的字节码在允许期间不包含泛型的类型信息。 注意:但并没有真正擦除掉。 二.不变: ArrayList是List的子类,apple是fruit的子类,为什么这里的泛型转换出问题了? 原因是泛型没有内建的协变类型 。无法关联起来,也就就是没有关系。 ...
2021-11-15 08:39:03
649
原创 二叉树的先序,中序,后序遍历序列
二叉树有三种遍历: 1.先序遍历: (根左右) 2.中序遍历 : (左根右) 3.后序遍历: (左右根) 举个例子:(以下动画图转载自https://blog.youkuaiyun.com/chinesekobe/article/details/110874773): 先(根)序遍历(根左右):A B D H I E J C F K G 中(根)序遍历(左根右) : H D I B E J A F K C G 后(根)序遍历(左右根) : H I D J E ...
2021-11-12 18:35:39
16301
1
原创 int 和integer的比较
区别: int是基本数据类型,Integer是引用数据类型; int默认值是0,Integer默认值是null; Integer实际是对象的引用,指向此new的Integer对象;int是直接存储数据值 ; int类型直接存储数值,Integer需要实例化对象,指向对象的地址。 package HelloWorld; public class Intandinteger { @SuppressWarnings("removal") public static void main...
2021-11-01 20:20:52
347
原创 为什么重写equals方法,还必须要重写hashcode方法(面试题)
1.目的: 1. 1使用hashcode方法提前校验,可以避免每一次对比都使用equals方法,提高效率 1.2 保证是同一个对象,如果重写了equals方法,没有重写hashcode方法,那么会出现equals相等,hashcode不相等的情况,所以就是为了避免这种情况发生。 2.总结 hashCode主要用于提升查询效率,来确定在散列结构中对象的存储地址; 重写equals()必须重写hashCode(),二者参与计算的自身属性字段应该相同; hash类型的存储结构,添加元素重复性校验的标准
2021-11-01 19:55:41
674
原创 java中 == 和equals 的区别(面试题)
什么是==? == 等于比较运算符,如果进行比较的两个操作数都是数值类型,即使他们的数据类型不相同,只要他们的值相等,也都将返回true.如果两个操作数都是引用类型,那么只有当两个引用变量的类型具有父子关系时才可以比较,而且这两个引用必须指向同一个对象,才会返回true.(在这里我们可以理解成==比较的是两个变量的内存地址) 什么是equals()? equals()方法是Object类的方法,在Object类中的equals()方法体内实际上返回的就是使用==进行比较的结果.但是我们知道所有的类都继..
2021-11-01 19:40:35
447
原创 java 类的加载顺序
Java类的加载顺序 父类静态字段 → 父类静态代码块 → 子类静态字段 → 子类静态代码块 → 父类成员变量 → 父类非静态代码块 → 父类非静态构造方法 → 子类成员变量 → 子类非静态代码块 → 子类构造方法 package HelloWorld; //父类静态 > 子类静态 > 父类非静态 > 父类构造方法 > 子类非静态 > 子类构造方法 class A { private static int numA; private int nu...
2021-10-29 16:00:45
287
原创 java中重载和重写的区别
1.重载 重载指在一个类中,具有多个相同名称的类,他们的参数列表却不相同 (参数类型不同、参数个数不同甚至是参数顺序不同) 重载对返回类型没有要求,可以相同也可以不同,但是不能返回类型来判断他们是否是重载。 例如 package HelloWorld; public class Zuoye { public static void main(String[] args) { Zuoye z = new Zuoye(); z.fangfa1(); z.fangfa1("张旭");
2021-10-29 15:19:52
6044
3
原创 java面向对象(1)
一、为什么使用面向对象 编程思想: 面向过程:做某件事情都需要自己亲历亲为,按照步骤去完成 面向对象:做某件事情不需要自己亲历亲为,只需指定特定的对象去完成即可 优点: 1.开发交流更加流畅 2.提高开发效率 3.符合人类的思想思维 2.什么是对象? 对象是实际存在的该事物的个体,是具体的、现实的。万物皆为对象 对象 包含哪些东西? 属性: 由名词构成的一些数据 被称为属性 例如 名字 身高 等等 方法: 由动词构成的一些功能 被称为方法 例如 唱歌跳舞 等等 类中的属性...
2021-10-28 18:13:35
288
原创 什么是值传递,什么是引用传递
一般认为,java中基础类型数据传递都是值传递,java中实例对象的传递是引用传递,值传递是对基本型变量而言,传递的是该变量的一个副本,不影响该原变量,而引用传递是一般对于对象型变量而言,传递的是该对象地址的副本,并不是原对象本身。 1.值传递 值传递:方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。 2.引用传递 引用传递:也称为传地址。方法调用时,实际参数是对象(或者数组
2021-10-23 14:52:34
3394
原创 JVM运行原理,float和long的范围比较,数据类型解析
1.JAM的运行原理: JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机主要由字节码指令集、寄存器、栈、垃圾回收堆和存储方法域等构成。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。 JVM基本概念 (1)
2021-10-20 17:13:47
1172
4
原创 HCIA综合实验
第一步,先分配网段,图中内部网段有5个。可得。 第二步,先配置交换机vlan。 sw1: sw2: 第三步,对路由器配置vlan和干路ip r1: r2: lsp:(lsp不做其他配置) 第五步,然后配置pc机的ip,用dhcp: r1: dhcp enable-----network 192.168.1.32 mask 27------gateway-list 192.168.1.33 -----dns-list 114.114.114.114----进入...
2021-09-11 21:01:44
270
原创 向linux系统添加磁盘、分区和文件系统
1、添加两块5g大小的磁盘,将第一块磁盘的分区分为两个主分区并格式化为xfs的文件系统类型,第二块磁盘的分区分为一个逻辑分区并格式化为ext4的文件系统类型。 1.添加磁盘 2.查看 3.分区第一块 4.分区第二块(第二块因为是逻辑分区,要选择e) 5.查看分区情况 6.格式化 2、将三个分区分别开机自动挂载在/disk1,/disk2,/disk3目录上。 先创建三个目录 1.先查看UUID ,找到三个分区的UUID blkid 然后.
2021-07-24 19:21:52
545
原创 linux 论坛的搭建
1.光盘的挂载 查看光盘所在地方 df-h 然后cd到光盘地方 cd /run/media/root/RHEL-8-2-0-BaseOS-x86_64 修改光盘挂载地方 : mount /dev/sr0 /mnt cd /mnt cd AppStream/ cd Packages/ 2.对yum本地源配置文件: ll /usr/bin/dnf ll /usr/bin/yum cd /etc/yum.repos.d/ 定义配置文件:vim /etc/yum.repos...
2021-07-23 21:06:06
436
1
原创 linux中用户和用户组以及用户的身份切换
1、新建几个普通用户wukong,wuneng,wujing,他们都属于xiyouji组的成员,其中wujing没有和系统交互的shell。 因为这三个普通用户都在xiyouji组,所以第一步我们先创建一个用户组叫xiyouji groupaddxiyouji 然后创建三个用户,并把他们放入xiyouji组里 useradd -gxiyouji wukong 然后对wujing修改 usermod -s /sbin/nologinwujing 2、wukon...
2021-07-21 17:47:06
953
原创 Linux 创建,删除目录文件,复制,移动文件,以及压缩,从linux服务器上传文件
1、在根下创建一个目录ceshi,在测试目录下创建一个user目录,将/etc/passwd和/etc/shadow文件复制到/ceshi/user目录中,给/ceshi//user/passwd文件创建一个硬链接文件为passwd.bak,给/ceshi/user/shadow文件创建一个软链接为sh.link。 第一步:创建一个/ceshi/user目录 第二步: 将/etc/passwd和/etc/shadow文件复制到/ceshi/user目录中 第三步:给/ceshi//u.
2021-07-19 20:51:12
1550
原创 linux的文件系统层级结构图,vim的三个模式中实用的命令,及其一些外部指令命令可执行文件
vim三种模式常用命令 一般模式: 这是默认的模式。在这个模式中, 你可以使用上下左右按键来移动光标,你可以使用删除字符或删除整行来处理文件内容, 也可以使用复制、粘贴来处理你的文件数据。 【dd】 删除光标所在行 【ndd】 删除光标所在的向下n行 【w】光标跳到下个字的开头 【e】光标跳到下个字的字尾 【yy】 复制光标所在的那一行 【nyy】 复制光标所在的向下n列 【p】在光标下一行粘贴上 【P】 则为贴在光标的上一行 【u】 恢复前一个操作 【.】 是重复前一个操作...
2021-07-18 20:57:29
579
1
原创 在VMware上如何创建虚拟机,安装linux操作系统,调换仅主机模式、nat模式、桥接模式并连接,修改主机名,破解密码
1、创建虚拟机 2、安装linux操作系统 3、将虚拟机的网络连接模式分别调换成仅主机模式、nat模式、桥接模式并获取ip地址使用ssh通过不同用户远程连接 4、远程连接成功后,总结哪种网络模式可以上网(可以使用ping命令测试)并查看root用户和普通用户的家目录的不同 5、修改主机名为server.local 6、破解密码 1.创建虚拟机 linux的安装准备工作: 1、windows是64位操作系统 2、确认电脑开启虚拟化功能bios 3、内存最少2G 4、退出或者卸..
2021-07-17 17:02:46
1097
原创 静态路由ensp实验
第一步 1.IP地址划分 因为其中有6个路由器,而且R1-R4中存在2个环回接口。并且每两个路由器之间有一个广播域,则有一个网段,经过计算得出ip地址是 其中R1是192.168.1.32/28 192.168.1.48/28 手工汇总192.168.1.32/27 R2192.168.1.64/28 192.168.1.80/28 手工汇总192.168.1.64/27 R3 192.168.1.96/28 192.168.1.112/28 手工汇总 192.168.1...
2021-07-11 20:29:54
1826
1
原创 CSS盒子布局
1.盒子模型的含义: 在弹性盒子布局中,弹性容器(flex container)中的子元素可以以任意方向排布,也可以伸缩它们自身的尺寸,或者增大自身尺寸以填满未被使用的空间,或者缩小自身尺寸以避免超出父容器的尺寸范围。子元素横向或纵向对齐方式很容易被修改。嵌套的弹性盒子布局(水平内嵌套垂直,或垂直内嵌套水平),可以用来创建两个维度上的布局。 2.盒子的组成: 盒子的组成由外边距margin,外边框border,内边距padding和内容content组成,其中margin,border,padding
2021-06-15 13:02:14
4398
原创 css样式引入方式和选择器
1.CSS的介绍: 1.1 W3C的介绍: W3C,这个建立于 1994 年的组织,其宗旨是通过促进通用协议的发展并确保其通用型,以激发 web 世界的全部潜能。 1.2
2021-06-04 18:44:07
1031
原创 HTML中<form>表单的使用
form表单标记 一.定义: 表单在Web网页中用以让访问者输入数据,当提交表单时,表单中输入的数据被打包传递给Web服务器端的程序以处理,从而使得Web服务器与用户之间具有交互功能。 表单实现前后台交互:用户将表单提交到后台再右后台提交到数据库的过程,实现前后端交互。 表单在网页中主要负责数据采集功能,它用< form >标签定义。用户输入的信息都要包含在form标签中,点击提交后,< form >和</ form >里面包含的数据将被提交到服务器或者电子邮件里。
2021-05-29 11:22:36
1548
原创 html中table标签用法
1.<table> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>biaoge</title> </head> <body> <table border="1" cellpadding="0" cellspacing="8"> <tr> ...
2021-05-29 11:21:48
13952
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅