回顾

事件

鼠标
click
dblclick
contextmenu
mouseenter
mouseleave
mousemove
mousedown
mouseup

键盘
keydown
keyup
keypress

表单
submit
reset
blur   失去焦点
focus 获取焦点
change 绑定在select
select  
input 事实改变 兼容性

文档事件
load  
unload
beforeunload

图片事件
load
abort
error

其他事件
scroll
resize
ele.on事件 = function(){}
ele.addEventListener('事件名', function(){}, true/false)
Event对象
clientX
clientY
keyCode
button
target 具体触发事件的元素
stopPropagation() 阻止事件冒泡
preventDefault() 阻止默认动作

BOM

window  
window.innerWidth
window.inenrHeight

history
length
back()
forward()
go()

screen ​
location
href
protocol
host
hostname
port
pathname
search
hash

navigator
userAgent

DOM

文档对象模型

jQuery

1. jQuery 的介绍

2. jQuery的基本使用

2.2 文档就绪事件

$(document).ready(function(){
   code...
})

//上面的简写 我们通常都用的简写
//表示所有元素都加载完毕才执行jquery操作
$(function(){
   
})
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery的基本使用</title>
</head>
<body>
<div id="box">HELLO 小丽丽</div> <script src="../jquery-3.3.1.js"></script>
<script>
//jqury
//等到 html的元素加载完毕
$(document).ready(function(){
//获取页面中的元素 连贯操作
$("#box").css('width', '200px')
.css('height', '200px')
.css('border', '1px solid red')
.css('background-color', 'green'); //原生js
var box = document.querySelector('#box');
console.log(box);
}); //元素加载完毕 再触发
$(document).ready(function(){
console.log("OK");
}); //ready的简写
$(function(){
console.log('ready简写 ok')
}) </script>
</body>
</html>

jQuery的基本使用

2.2 jQueryDOM和原生DOM

jQuery 通过 $(选择器) 获取元素,该元素对象是jqueryDOM。 与原生DOM不同
jQueryDOM是在原生DOM基础上进行的的封装,本质上是由原生DOM组成的类数组对象,可以 [索引] 得到原生DOM
$(原生DOM) 转为 jQuery DOM
jquery对象可以直接调用css方法来给对象设置属性,原生js对象不行,没有css这个方法
原生对象直接obj.style.color这样来设置。
jQuery就是由原生dom组成的类数组对象,从jQuery转成原生对象需要遍历。
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery DOM对象</title>
<style>
#box {
width:400px;
padding: 20px;
border: 1px solid #ccc;
}
</style>
</head>
<body>
<h1>jQUery 交友</h1>
<hr> <div id="box"></div>
<ul class="list">
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <script src="../jquery-3.3.1.js"></script>
<script> $(function(){ //获取元素对象
var $box = $('#box'); //返回的是jquery dom对象 jquery在原生dom的基础上进行了封装
var box = document.querySelector('#box'); //原生的JS dom console.log($box, box); $box.css('background-color', 'pink');
//box.css('background-color', 'green'); // function not defined
box.style.backgroundColor = 'red';
//$box.style.height = '300px'; //jquery DOM 和 原生JS DOM 有关系
//原生的DOM 转为 Jquery DOM
$(box).css('height', '200px'); //jquery DOM 对象 转为 原生 DOM 本质上 jquery就是由 原生dom组成的 类数组对象
$box[0].style.backgroundColor = 'green'; }); $(function(){
var lis = $('.list li');
lis.css('border', '1px solid pink'); })
</script>
</body>
</html>

jQuery的DOM对象

3. jQuery 选择器

3.1 基本选择器

同CSS3 基本选择器

class

id

tagName

*

3.2 层级选择器

同CSS3的层级选择器

空格
>
+
~

3.3 基本筛选器

:first  所有符合条件的元素中的第一个 和伪类选择器有区别,伪类选择器是父类元素和子类元素的第一个
:last 所有符合条件的元素中的最后一个
:eq() 从0开始计数
:odd   奇数
:even 偶数
:lt() 小于  
:gt() 大于
:not(选择器) 除了包含选择器的这个元素
ul.item 意思是有item选择器的ul元素,不是ul下有item选择器的元素
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>基本筛选器 --- jquery选择器</title>
<style>
ul {
width: 600px;
list-style:none;
padding:0;
}
li {
border: 1px solid #ccc;
padding: 10px;
margin:5px 0px;
}
</style>
</head>
<body>
<h1>选择器</h1>
<hr> <ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.
<ol>
<li>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
<li class='item'>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
</ol>
</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){ //:first
$('li:first').css('border', '2px solid red');
$('li:last').css('border', '2px solid red');
$('li:eq(4)').css('border', '2px solid red'); //从0开始
/*$('li:odd').css('border', '2px solid green');
$('li:even').css('border', '2px solid yellow'); */
//$('li:gt(3)').css('border', '2px solid purple');
// $('li:lt(3)').css('border', '2px solid purple');
$('li:not(".item")').css('border', '2px solid blue'); })
</script>
</body>
</html>

基本筛选器

 

3.4 内容选择器

:contains(text)  包含指定文字的元素 如果该元素外面有父元素,父元素必定也是包含该文字的。
:has(选择器)     包含指定子元素的元素
:empty           没有子元素也没有内容的元素
:parent           有子元素或者有内容的元素 总结的很到位 有内容或者没内容但是有子元素就可以
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>基本筛选器 --- jquery选择器</title>
<style>
ul {
width: 600px;
list-style:none;
padding:0;
}
li {
border: 1px solid #ccc;
padding: 10px;
margin:5px 0px;
}
</style>
</head>
<body>
<h1>选择器</h1>
<hr> <ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.
<ol>
<li>Lorem ipsum 小丽丽 dolor.</li>
<li>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
<li class='item'>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
</ol>
</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>
<li></li>
</li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
// $("li:contains('小丽丽')").css('border', '2px solid red');
// $("li:has('.item')").css('border', '2px solid red');
// $("li:empty").css('border', '2px solid red'); //没有子元素,也不能有内容
$("li:parent").css('border', '2px solid red'); //有子元素 或有内容
})
</script>
</body>
</html>

内容选择器

 

3.5 可见性选择器

:hidden
:visible

3.6 属性选择器

[attr]              .list img[title]
[attr=value]   img[title=hello]
[attr!=val]   不等于
[attr^=val]
[attr$=val]
[attr*=val] attr属性 包含 val
[][][]

注意
少了 ~= 和 |=

3.7 子元素选择器

:first-child
:first-of-type
:last-child
:last-of-type
:nth-child
:nth-last-child()
:nth-last-of-type()
:nth-of-type()
:only-child
:only-of-type

3.8 表单选择器

:input  所有的表单控件  input、select、textarea、button
:text   text表单的控件才能改变css样式
:password
:radio
:checkbox
:submit
:reset
:button
:file
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单选择器</title>
</head>
<body>
<input type="text" name="" id=""> <br>
<input type="password" name="" id="" disabled> <br> <select name="" id="">
<option value="1">1</option>
<option value="1" selected>2</option>
<option value="1">3</option>
<option value="1">4</option>
</select> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){ // $(':text').css('border', '1px solid red');
// $(':input').css('border', '1px solid red'); //所有的表单控件 $(':enabled').css('border', '2px solid green')
$(':selected').css('color', 'red'); //设置的是option
})
</script>
</body>
</html>

表单选择器

 

3.9 表单对象选择器

:disabled
:enabled 能够被选择的会改变样式
:checked
:selected 元素被选为默认元素

4 jQuery 筛选器

4.1 过滤

eq(index) 从0开始
first()
last()
filter(选择器)
not(选择器)
has(选择器) 包含指定子元素的元素
slice(start, end) 切片 从0开始
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>筛选器</title>
<style>
ul {
width: 600px;
list-style:none;
padding:0;
}
li {
border: 1px solid #ccc;
padding: 10px;
margin:5px 0px;
}
</style>
</head>
<body>
<h1>筛选器</h1>
<hr> <ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.
<ol>
<li>Lorem ipsum 小丽丽 dolor.</li>
<li>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
<li class='item'>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
</ol>
</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li></li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
$('li').first().css('border', '2px solid red');
$('li').last().css('border', '2px solid red');
$('li').eq(3).css('border', '2px solid red');
// $('li').filter('.item').css('border', '2px solid red');
// $('li').not('.item').css('border', '2px solid red');
// $('li').has('.item').css('border', '2px solid red');
// $('li').slice(2,6).css('border', '2px solid red'); })
</script>
</body>
</html>

过滤

 

4.2 查找

查找 子元素
children([selector]) 子元素
find(selector)       后代元素

查找 父元素
parent([selector])
parents([selector])
parentsUntil([selector])
offsetParent()

#兄弟元素
next([selector]) 后面紧邻的兄弟元素
nextAll([selector]) 后面所有的兄弟元素
nextUntil([selector]) 后面兄弟元素 指定结束条件
prev([selector]) 前面紧邻的兄弟元素
prevAll([selector])
prevUntil([selector])
siblings([selector]) 所有的兄弟元素(除了自己)

#其他
closest(selector) 从自己开始往祖先元素找,返回第一个满足条件的
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>筛选器</title>
<style>
ul {
width: 600px;
list-style:none;
padding:0;
position: relative;
}
li {
border: 1px solid #ccc;
padding: 10px;
margin:5px 0px;
}
</style>
</head>
<body>
<h1>筛选器</h1>
<hr> <ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li id="myItem">Lorem ipsum dolor sit amet.
<ol>
<li>Lorem ipsum 小丽丽 dolor.</li>
<li>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
<li class='item'>Lorem ipsum dolor.</li>
<li>Lorem ipsum dolor.</li>
</ol> <ul>
<li>lorem</li>
<li>lorem</li>
<li>lorem</li>
</ul>
</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li></li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
//破坏性操作
//$('#myItem').css('border', '2px solid red'); //所有的子元素
// $('#myItem').children().css('border', '2px solid red');
// $('#myItem').find('ul').css('border', '2px solid red'); //查找父元素
// $("#myItem").parent().css('border', '2px solid green');
// $("#myItem").parents().css('border', '2px solid green'); // 可以指定到具体的父元素 默认所有的祖先元素 //$("#myItem").parentsUntil('body').css('border', '2px solid green'); //所有的祖先元素 指定一个结束位置
// $("#myItem").offsetParent().css('border', '2px solid green'); //最先定位的祖先元素 //查找兄弟元素
// $('#myItem').next().css('border', '2px solid red');
// $('#myItem').nextAll(':empty').css('border', '2px solid red');
//$('#myItem').nextUntil(':empty').css('border', '2px solid red'); // $('#myItem').prev().css('border', '2px solid red');
// // $('#myItem').prevAll().css('border', '2px solid red');
// $('#myItem').prevUntil().css('border', '2px solid red'); //$('#myItem').siblings(':parent').css('border', '2px solid red'); //从自己开始 往上 找 找到第一个满足条件的
// $('.item').closest('ol').css('border', '2px solid red');
})
</script>
</body>
</html>

查找

 

4.3 串联

add(标签元素)  添加额外的标签元素,和之前的标签元素共享样式设置
addBack() 符合条件的元素设置完样式也会对自己本身进行设置
end()     
 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>筛选器串联</title>
<style>
ul {
list-style:none;
width: 600px;
padding: 0px;
}
li {
border:1px solid #ccc;
padding:10px;
margin:5px 0px;
}
li.active {
background: #f5f5f5
} p {
padding: 20px;
width: 800px;
border: 2px dashed #ccc;
}
</style>
</head>
<body>
<h1>串联</h1>
<hr> <ul class="list">
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li class="active">Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet.</li>
</ul> <div class="article">
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
</div> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
// $('.list li').add('p').css('border', '2px solid red')
$('li.active').nextAll('li').addBack().css('border', '2px solid red')
$('li.active').nextAll('li').css('border', '2px solid red').end().css('background', 'pink'); console.log($('.list').contents()) // $('li').html('HELLO') //innerHTML
// $('li').text('HELLO'); //innerText
})
</script>
</body>
</html>

串联

附上jQuery操作菜单实例

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>菜单实例</title>
<style>
ul {
padding:0;
margin:0;
list-style: none;
}
.nav {
width: 120px;
}
.nav h2 {
margin:0;
font-size: 16px;
font-weight: normal;
padding: 0px 20px;
height: 40px;
line-height: 40px;
border:1px solid #999;
border-bottom:none;
background: #369;
cursor: pointer;
}
.nav ul {
border:1px solid #999;
display: none;
}
.nav li a{
color:#333;
font-size: 14px;
text-align: center;
text-decoration: none;
display: block;
padding: 0px 20px;
height: 30px;
line-height: 30px;
border-bottom:1px solid #999;
}
.nav li:last-child a {
border-bottom:none;
}
</style>
</head>
<body>
<h1>后台管理</h1>
<hr> <div class="nav">
<h2>用户管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>订单管理</h2>
<ul>
<li><a href="#">订单列表</a></li>
<li><a href="#">订单添加</a></li>
<li><a href="#">订单删除</a></li>
<li><a href="#">订单修改</a></li>
</ul> <h2>商品管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>评论管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul>
</div> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
$('.nav h2').on('click', function(){
//$(this).next('ul').toggle();
$(this).next('ul').slideToggle();
})
})
</script>
</body>
</html>

slideToggle

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>菜单实例</title>
<style>
ul {
padding:0;
margin:0;
list-style: none;
}
.nav {
width: 120px;
}
.nav h2 {
margin:0;
font-size: 16px;
font-weight: normal;
padding: 0px 20px;
height: 40px;
line-height: 40px;
border:1px solid #999;
border-bottom:none;
background: #369;
cursor: pointer;
}
.nav ul {
border:1px solid #999;
height: 0px;
border-width:0px;
overflow: hidden;
transition:all .5s; }
.nav ul.active {
height: 125px;
border-width: 1px;
}
.nav li a{
color:#333;
font-size: 14px;
text-align: center;
text-decoration: none;
display: block;
padding: 0px 20px;
height: 30px;
line-height: 30px;
border-bottom:1px solid #999;
}
.nav li:last-child a {
border-bottom:none;
}
</style>
</head>
<body>
<h1>后台管理</h1>
<hr> <div class="nav">
<h2>用户管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>订单管理</h2>
<ul>
<li><a href="#">订单列表</a></li>
<li><a href="#">订单添加</a></li>
<li><a href="#">订单删除</a></li>
<li><a href="#">订单修改</a></li>
</ul> <h2>商品管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>评论管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul>
</div> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
$('.nav h2').on('click', function(){
$(this).next('ul').toggleClass('active')
})
})
</script>
</body>
</html>

css3实现下拉菜单

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>菜单实例</title>
<style>
ul {
padding:0;
margin:0;
list-style: none;
}
.nav {
width: 120px;
}
.nav h2 {
margin:0;
font-size: 16px;
font-weight: normal;
padding: 0px 20px;
height: 40px;
line-height: 40px;
border:1px solid #999;
border-bottom:none;
background: #369;
cursor: pointer;
}
.nav ul {
border:1px solid #999;
display: none;
}
.nav li a{
color:#333;
font-size: 14px;
text-align: center;
text-decoration: none;
display: block;
padding: 0px 20px;
height: 30px;
line-height: 30px;
border-bottom:1px solid #999;
}
.nav li:last-child a {
border-bottom:none;
}
</style>
</head>
<body>
<h1>后台管理</h1>
<hr> <div class="nav">
<h2>用户管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>订单管理</h2>
<ul>
<li><a href="#">订单列表</a></li>
<li><a href="#">订单添加</a></li>
<li><a href="#">订单删除</a></li>
<li><a href="#">订单修改</a></li>
</ul> <h2>商品管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul> <h2>评论管理</h2>
<ul>
<li><a href="#">用户列表</a></li>
<li><a href="#">用户添加</a></li>
<li><a href="#">用户删除</a></li>
<li><a href="#">用户修改</a></li>
</ul>
</div> <script src="../jquery-3.3.1.js"></script>
<script>
$(function(){
$('.nav ul:first').show();
$('.nav h2').on('click', function(){
$(this).next('ul').slideDown().siblings('ul').slideUp();
})
})
</script>
</body>
</html>

手风琴菜单

jQuery的基本使用及选择器和筛选器的更多相关文章

  1. jQuery中的选择器及筛选器

    1.jQuery的介绍 1.jQuery是继prototype之后又一个优秀的Javascript框架.其宗旨是--WRITE LESS,DO MORE! 2.它是轻量级的js库,这是其它的js库所不 ...

  2. jquery 选择器、筛选器、事件绑定与事件委派

    一.jQuery简介 1.可用的jQuery服务器网站:https://www.bootcdn.cn/ jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocume ...

  3. jquery选择器,筛选器,属性,事件 基础

    左边栏实例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  4. jQuery: 选择器,筛选器

    jQuery 简介 jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. jQuery是继prototype之后又一个优秀的Javas ...

  5. python 之 前端开发( jQuery选择器、筛选器、样式操作、文本操作、属性操作、文档操作)

    11.5 jQuery 引入方式: 方式一:本地引入 <script src="jquery-3.3.1.min.js"></script> <scr ...

  6. 7、前端--jQuery简介、基本选择器、基本筛选器、属性选择器、表单选择器、筛选器方法、节点操作、绑定事件

    jQuery简介 宗旨:Write less, do more. 内部封装了js代码 是编程更加简单并且兼容所有的主流浏览器 版本:1.x 2.x 3.x # 可以使用3.x最新版 是第三方的类库:使 ...

  7. 什么是 jQuery 和jQuery的基本选择器,层级选择器,基本筛选器

    jQuery是什么? [1]   jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. [2]   jQuery是继prototype ...

  8. jQuery初识之选择器、样式操作和筛选器(模态框和菜单示例)

    一.jQuery 1.介绍 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架). jQuery设计的 ...

  9. jQuery 初识 筛选器 属性选择器

    ---------------------------大事使我们惊讶,小事使我们沮丧,久而久之,我们对这二者都会习以为常. 一 jQuery是什么? [1]   jQuery由美国人John Resi ...

随机推荐

  1. Jmeter 在什么情况下定义多个thread group?

    Jmeter里面有三种线程组:setUp thread group, TearDown thread group, thread group. 如果想定义100个用户登录系统,60个用户做A操作,40 ...

  2. 洛谷 1079 Vigenère 密码——模拟水题

    题目:https://www.luogu.org/problemnew/show/P1079 大水题. #include<iostream> #include<cstdio> ...

  3. 22.java方法的定义

    java中的方法:就相当于c语言中的函数:sun在开发java的时候,为提高其代码的重复利用率,引入了方法. 什么是方法? 方法就是一段代码片段,这个片段可以完成特定的功能,并且可以重复利用. 从入口 ...

  4. CodeForces 524C The Art of Dealing with ATM (二分)

    题意:给定 n 种不同的钞票,然后用q个询问,问你用最多k张,最多两种不同的钞票能不能组成一个值. 析:首先如果要求的值小点,就可以用DP,但是太大了,所以我们考虑一共最多有n * k种钞票,如果每次 ...

  5. UVa 1349 Optimal Bus Route Design (最佳完美匹配)

    题意:给定一个有向图,让你找出若干个图,使得每个点恰好属于一个圈,并且总的权和最小. 析:每个点都有唯一的一个圈,也就是说每一点都有唯一的后继,那么我们就可以转换成求一个图的最小权的最佳完全匹配,可以 ...

  6. Angular6之ng build | ng build --aot | ng build --prod 差异

    由于写了大半年的项目终于要告一段落并且即将进行第二阶段优化开发,emmm 基础版本已经二十多个模块了,必不可少的优化是很重要的,尽管项目上使用多层嵌套懒加载,但是在首屏加载的时候,任然很慢啊,因为一直 ...

  7. (未使用AOP)使用ThreadLocal对象把Connection和当前线程绑定, 从而使一个线程中只有一个能控制事务的对象

    每个连接都有自己的独立事务,会造成数据的不一致 这组操作应该要么一起操作成功,要么一起操作失败, 应该使用同一个连接,只有一个能控制事务的对象 需要使用ThreadLocal对象把Connection ...

  8. Lightoj1122 【数位DP】

    题意: 给你m个数,让你在里面挑n个组合,保证位数相差不超过2,求能够组合多少种情况: 思路: dp[i][j]代表第i个结尾为j的方案数. #include<bits/stdc++.h> ...

  9. 51nod 1011 【完全背包】

    完全背包的变形: 这些数字可以取多次,dp[i]代表前 i 物品组成N时的方案数. #include<iostream> #include<cstring> #include& ...

  10. day01 包 权限修饰符 static final