美文网首页
第六篇学习笔记

第六篇学习笔记

作者: 拼搏男孩 | 来源:发表于2020-01-24 10:29 被阅读0次

第六篇学习总结

一、Map集合

Map集合和Collection集合不一样,Map集合是双列集合,以键值对的形式存在,键不能重复,值可以重复,Set集合就是使用了Map集合的键。

1、常用方法

  • put(key,value):添加或者修改,如果键是第一次存储,直接添加,否则就替换掉以前的值。
  • remove(key):根据键删除键值对元素
  • containskey(key):判断是否包含指定的键
  • containskey(value):判断是否包含指定的值
  • entrySet():获取所有的键值对,返回的的是一个元素类型为Map.Entry的Set集合
  • get(key):根据键获取值
  • keySet():获取集合中所有键的集合,返回的同样是一个Set集合
  • Collection values():获取集合中所有值的集合
  • size():返回集合中键值对的个数

2、Map集合的遍历

一共有三种方法:遍历所有的键值对,再通过键获取值;遍历所有键的集合;遍历所有值的集合,使用超级for循环遍历非常方便。

3、HashMap

HashMap底层使用的是数组,查找非常快,但是元素无序,当存储到一定程度自动扩充,因为要涉及比较,所以必须重写hashCode和equals方法,不过不用比较大小。存储时,通过key算出一个下标,看看这个下标所在的位置上有没有元素,如果有就对比,如果对比成功,覆盖,如果没有,挂载,如果当前位置上没有元素,直接存储。

4、HashMap和HashTable的区别

HashTable出现的比较早,线程安全,但是效率较低,HashMap出现的比较晚,线程不安全,效率高;HashTable不能存储null键和null值,HashMap可以存储null键和null值。

5、TreeMap

TreeMap是key有序的Map集合,key需要实现Comparable接口并重写compareTo方法,或者使用Comparator比较器,它是拿着新添加的元素和已经存在的元素进行比较,如果新添加的元素小于已有元素,就返回负数,如果相等,就返回0,直接覆盖,如果大于已有元素,就返回正数。

二、泛型

泛型就是参数化类型,泛型规定了类可以使用的应用数据的类型的范围,此时类型不再是固定的某个类型,而是一个参数,这个参数再编译的时候就会固定下来。

1、泛型的好处

  • 提高安全性
  • 省区强转的麻烦
  • 在其作用域内可以统一参数类型

2、泛型的使用

  • <>中放的必须是引用数据类型
  • 泛型可以定义在类、接口和方法上
//把泛型定义在类上
public class Generic<T>{
    public void setObject(T t){
        this.t = t;
    }
    //把泛型定义在方法上
    public <E> E method(E e){
        return e;
    }
}

3、通配符

  • 泛型通配符<?> 任意类型
  • ?extends E 向下限定E及E的子类
  • ?super E 向上限定E及父类

二、HTML

HTML是一门用来创建网页的标记语言,HTML自诞生以来经历了五个版本,最新的版本是HTML5。

1、HTML基本结构

  • HTML页面包含头部head和主体body,最外层套一个HTML标签
  • HTML标签通常是成对出现的,但也有不成对出现的标签,比如input与br。
  • HTML标签通常都有属性。格式:属性名=属性值,多个属性之间用空格隔开。
  • HTML标签不区分大小写
  • 文件名后缀为.html或.htm

2、HTML基本标签

2.1 结构标签

<html></html>:根标签
<head></head>:头标签
<title></title>:页面的标题
<body></body>:主体标签:网页内容

2.2 排版标签

<!--注释-->
<br>换行
<p>段落
<hr>换行
<h1></h1>--<h6></h6>标题标签,默认加粗

2.3 容器标签

<div></div>:块级标签,独占一行
<span></span>行级标签

2.4 列表标签

<ul></ul>无序列表
<ol></ol>有序列表
<li></li>列表项

2.5 图片标签

<img src="" alt="">

2.6 链接标签

<a href="">文本或图片</a>

2.7 表格标签

<table>表格
<th>表头<td>表的单元格</td><th>
<tr><td></td></tr>一行
</table>

3、HTML表单标签

HTML表单标签用于收集不同类型的用户输入

  • form标签,用于包裹用户输入的内容,常用属性:action:用于处理数据的地址 method:请求方式get或post enctype:application/x-www-form-urlencoded 普通表单multipart/form-data 多部分表单(一般用于文件上传)
  • input标签一般提交用户可以用键盘输入的内容、文件上传、单选、多选,如果想要从后台获取数据的话一定要有name属性
  • select 是下拉框,每一个值都是一个option,select中要有name属性,option中要有value。
  • textarea 文本域

4、frame

这个标签现在很少使用

5、其他标签和特殊字符

<meta charset="utf-8">设置字符编码
<!-- href:引入css文件的地址-->
<link rel="stylesheet" type="text/css" href="./styles.css">
<!--src:js的文件地址-->
<script type="text/javascript" src=""></script>

特殊字符:

&nbsp;空格
&ensp;半个字符的空格

三、CSS

CSS是层叠样式表,HTML是骨架,CSS就起着装饰美化的作用。

1、语法规则

  • 选择器
  • 用花括号包裹起来的一条或多条声明:每条声明由一个属性和一个值组成

2、使用方式

  • 内联方式:直接把CSS样式嵌入到HTML标签中。可以单独设置某个元素的样式,但是不利于样式重用。
  • 内部样式:可以控制页面中多个元素的样式,但是只能一个页面使用。在head标签中使用style标签引入。
  • 外部样式。定义在一个单独的css文件中,在head标签中导入。在多个文件中可重复使用。
  • 优先级:内联样式>内部样式>外部样式。就近原则。

3、CSS选择器

3.1 基本选择器

  • 标签选择器:html标签{属性:属性值}
  • id选择器:#id值{...}
  • 类选择器:.class{...}
  • 以上选择器的优先级从高到低:id>class>标签选择器

3.2 属性选择器

根据元素的属性及属性值来选择元素,格式为html标签[属性='属性值']{css属性:css属性值;}或者html标签[属性]{css属性:css属性值;}。

3.3 伪元素选择器

主要是针对a标签

  • 静止状态 a:link{css属性}
  • 悬浮状态 a:hover{css属性}
  • 触发状态 a:active{css属性}
  • 完成状态 a:visited{css属性}

3.4 层级选择器

  • 后代选择器:div p{} 表示div中的p标签,所有的后代p
  • 子代选择器:div>span{} 表示div中的子代span标签

3.5 其他选择器

  • 全局选择器:*{},表示所有标签
  • 群组选择器:div,span{},表示同时选择div和span

4、CSS属性

4.1 文字和文本属性

  • font-size:设置字体大小
  • font-family:设置文字的字体
  • font-style:规定斜体字
  • font-weight:设置文字的粗细,400是正常字体
  • color:文本颜色
  • text-indent:缩进元素中文本的首行
  • text-decoration:none 会关闭应用到元素上的所有装饰
  • text-align:center 居中对齐
  • word-spacing:字符之间的间隔
  • letter-spacing:单词或字母之间的间隔
  • line-height:设置行高

4.2 背景属性

  • background-color:设置背景颜色
  • background-img:url("图片路径"):设置背景图片
  • background-repeat:在哪个方向平铺,用x,y代替
  • background-position:改变图像在背景中的位置

4.3 列表属性

  • list-style-type:改变列表的标志类型
  • list-style-image:url(""):用图像表示标志
  • list-style-position:inside;标志出现在列表项内容之外还是内容内部
  • list-style:none;取消所有的列表样式

4.4 尺寸显示轮廓属性

  • width:设置元素的宽度
  • height:设置元素的高度
  • display:none;不显示,block,inline,inline-block
  • float:浮动属性;left、right、both、none

4.5 定位属性

position:static|relative|absolute|fixed

  • 默认的是静态定位
  • 相对定位:relative
  • 绝对定位:absolute
  • 固定定位:fixed

5、盒子模型

一个元素的整体由height,width,padding,magin,border组成。

  • border:边框宽度 边框样式 边框颜色
  • padding:top right bottom left
  • margin:top right bottom left

6、CSS3扩展属性

  • border-radius:圆角属性,如果想将正方形的设置为圆,数值应为边长的一半
  • box-shadow:方框阴影

相关文章

  • 读书笔记(06) - 语法基础 - JavaScript高级程序

    写在开头 本篇是小红书笔记的第六篇,也许你会奇怪第六篇笔记才写语法基础,笔者是不是穿越了。 答案当然是没有,笔者在...

  • Go并发调度

    本文是《循序渐进Go语言》的第六篇-Go并发调度。本文是学习《Go语言学习笔记》的并发调度一章,然后结合阅读源码的...

  • 『Material Design入门学习笔记』TabLayout

    不知不觉,这已经是『Material Design入门学习笔记』专题第六篇文章了,结束了这篇文章,这个专题,会暂时...

  • 第六篇学习笔记

    第六篇学习总结 一、Map集合 Map集合和Collection集合不一样,Map集合是双列集合,以键值对的形式存...

  • App 通过注入动态库的方式实现极速编译调试

    本文是< > 第六篇学习笔记. iOS 原生代码的编译调试,都是通过一遍又一遍地编译重启 App 来进行的。所以,...

  • 如果高考前你学会了拆书

    HNTC--第六篇分享 关于学习拆书技术的事 其实高中的时候是没什么学习技巧的,每科有自己的一个笔记本就是好了不...

  • 自我与自律

    这是《产品思维30讲》第六篇学习笔记。这节课主要讲的是自我和自律。 左脑思维和右脑思维 做产品经理的人善于感知,能...

  • 养育孩子反向提高职业能力

    这是学习诸葛越博士《如何培养面向未来的孩子》第六篇笔记,看到文章标题有很多疑问,养育孩子分散了很多时间和精力,每天...

  • 机会判断:点线面体的战略选择

    这是《产品思维30讲》第六篇学习笔记。这节课主要讲的是点线面体。 富人与穷人的区别 一对双胞胎2010年大学毕业,...

  • 订阅《超级个体》第七感:组合成就超级

    正文之前 《超级个体》学习笔记至此在简书发表了七篇,也渐渐地得到了一些朋友的支持。终于在第六篇消灭了零评论,有一些...

网友评论

      本文标题:第六篇学习笔记

      本文链接:https://www.haomeiwen.com/subject/syycthtx.html