题目解题思路解题代码题链接题目解题思路解题代码importjava.util.*;publicclassMain{//定义翻转字符数组的方法publicstaticvoidreverse(char[]arr,intstart,intend){while(start
Gson、Fastjson 和 Jackson 对比解析
小张0.0
JavaWebjson
目录1.Gson(Google)基本介绍:核心功能:特点:使用场景:2.Fastjson(Alibaba)基本介绍:核心功能:特点:使用场景:3.Jackson基本介绍:核心功能:特点:使用场景:4.对比总结5.选择建议Gson、Fastjson和Jackson这三种都是Java生态中广泛使用的JSON处理库,用于实现Java对象与JSON数据之间的相互转换。在项目中使用不同的方法即可调用不同的J
牛客-倒置字符串
小张0.0
OJ算法题题目心得算法leetcode动态规划
1.题目描述2.题目链接倒置字符串_牛客题霸_牛客网3.代码解答importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);Strings=scanner.nextLine();//按空格分割单词(处理多个连续空格的情况,split("
使用Meteor构建实时仪表板的完整指南
杏花朵朵
Meteor实时仪表板Vue组件路由设置集合集成
背景简介随着现代Web应用对实时性和响应性的要求不断提高,开发人员需要使用强大的框架来构建能够满足这些需求的应用程序。Meteor作为一个全栈JavaScript框架,提供了一种快速开发实时Web应用的方法。本文将通过构建一个实时仪表板项目,详细探讨Meteor的特点和使用方法。Meteor简介Meteor是一个全栈JavaScript框架,用于构建Web应用程序。它的主要元素包括Web客户端、基
机器学习之——认识机器学习
-睡到自然醒~
golang重构开发语言
首先,什么是机器学习?参照百度百科的讲解,“机器学习是一门多领域交叉学科,设计概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习能力,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。”什么意思呢?也就是说,机器学习是一门跨领域的学科,是一种能够让机器模仿人类学习能力的一种学科。在Andrew的课程中,提到了几个机器学习的定义:1,A
一些有意思的话:好时光都在生活里(20211011)
简叔老魏
读闲书,看微信,经常会看到一些很有意思的话。有些是名人说的,有些不知道是谁说的,有些很正能量,有些能量也不一定很正,但读过之后,都能引发一些思考。摘录一下,发到个人微信公众号上,自己留存,与大家共享。下面的话发于2021年10月11日,摘自网络,说是雪小禅说的。琴棋书画诗酒花,柴米油盐酱醋茶,好时光都在生活里。——雪小禅雪小禅,一个挺美的名字。百度了一下,是个美女作家,作品入围过鲁迅文学奖、获得过
完善Meteor应用的NPM集成——meteorhacks/npm项目推荐
尤峻淳Whitney
完善Meteor应用的NPM集成——meteorhacks/npm项目推荐1.项目基础介绍及编程语言meteorhacks/npm是一个开源项目,旨在为Meteor应用提供完整的NPM模块集成。该项目通过允许在Meteor应用内部使用NPM模块,极大地扩展了Meteor应用的功能性和灵活性。该项目的主要编程语言是JavaScript。2.项目核心功能项目的核心功能是提供一个桥接器,让开发者可以在M
node.js详解
思静鱼
node.jsnode.js
文章目录一、什么是Node.js?二、Node.js的核心组成三、Node.js的运行机制(事件循环)四、常见内置模块(无需安装)五、应用场景六、npm包生态七、Node.js适合哪些人?八、优缺点总结一、什么是Node.js?Node.js是一个基于ChromeV8引擎的JavaScript运行时,用于构建高性能网络应用。由RyanDahl于2009年发布。允许你在服务器端使用JavaScrip
拼多多返利app叫什么,拼多多返利软件哪个最好
一起高省
拼多多返利app叫高省佣金更高应用市场搜索高省高省码333888(助力新人送皇冠会员送千元礼包百度霸屏拉群后台找我)关于聪明的网购人来说,肯定会想到用返利软件来网购,但是现在返利软件太多了,哪个返利软件返利蕞高?哪个返利app的功能蕞强壮?这是咱们蕞关心的。今日就为我们引荐一个2022年返利佣钱蕞高的app软件,他不只可以返利省钱,蕞要害的是你还可以利用它来挣钱。2022年这个返利软件太火爆了!!
48Days-Day03 | 删除公共字符,两个链表的第一个公共结点,mari和shiny
TinaAmber
笔试训练48Days链表java算法
删除公共字符删除公共字符_牛客题霸_牛客网算法思路直接哈希,把第二个字符塞集合里面,遍历第一个,只要在集合里面有的就跳过代码importjava.util.HashSet;importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);Strin
面试实战,问题一,讲一下Springboot的作用
SpringBoot框架的主要作用和功能SpringBoot是由Pivotal团队开发的一个开源Java框架,旨在显著简化基于Spring框架的应用程序开发过程。它通过提供一系列自动化工具和约定,帮助开发者快速构建独立、生产就绪的应用程序。下面我将逐步介绍其主要作用和核心功能,确保回答清晰易懂。主要作用简化Spring应用程序开发:SpringBoot的核心目标是降低Spring框架的入门门槛和配
生命中一束特别的光
抹茶阿白
每个人的生命中都会有一束特别的光,这束光是信仰,激励着我们不断前进。谈谈我自己吧,我的生命中有两束特别的光。第一束:鞠婧祎。她是现在舞台上闪闪发光的偶像,是粉丝们的信仰。2018年我通过大火的古装影视剧《芸汐传》认识她。她饰演的韩芸汐,是一个活泼开朗的小丫头,也是一个温婉动人的王妃娘娘。当时也只是因为她的颜值而喜欢她,努力去了解她,从百度开始,至此,我开始关注她的作品。2019年《新白娘子传奇》开
面试挂在阿里,庆幸拿到网易offer,一位三年Java岗面试总,细节如下
小迁不秃头
前言15年毕业到现在有三年多了,最近去面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...最终有幸去了网易。但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导。面试整体事项1.简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责,简历的模板
适合学生赚钱的软件 学生在校赚零花钱
氧惠_飞智666999
生时代是人生中最美好的阶段之一,但也是经济压力较大的阶段之一。很多学生想要通过自己的努力赚取一些零花钱,既能减轻家庭负担,又能锻炼自己的能力和经验。但是,在校学习任务繁重,时间和空间都有限制,如何找到适合自己的赚钱方式呢?氧惠APP,2022全新模式,0投资,最快63天做到月入十万。我的直推也会放到你下面,我曾经1年做到百万团队,现在加入我也会帮你做到百万团队。【氧惠】百度有几百万篇报道,也期待你
GKD v1.9.2 安卓自动跳过广告
在下周大侠
安卓软件
GKD是一款基于无障碍+高级选择器+订阅规则的自定义屏幕点击APP。支持点击跳过任何开屏广告/点击关闭应用内部任何弹窗广告,如关闭百度贴吧帖子广告回复/知乎回答底部推荐广告回复;GKD还支持一些快捷操作,如微信电脑登录自动同意/微信扫描登录自动同意/微信自动领取红包。软件特色基于高级选择器+订阅规则+快照审查,它可以实现点击跳过任意开屏广告/点击关闭应用内部任意弹窗广告,如关闭百度贴吧帖子广告卡片
解决百度网盘上传请求中或上传慢的方法
百度网盘正常情况下是超快的,不应该是"上传请求中"或几k的速度。原因是因为DNS解释问题。尤其是海外用户。例如,使用DNS8.8.8.8PSC:\WINDOWS\system32>nslookupDefaultServer: dns.googleAddress: 8.8.8.8>server8.8.8.8DefaultServer: dns.googleAddress: 8.8.8.8>c.pcs
Selenium+Java 自动化测试入门到实践:从环境搭建到元素操作
yy鹈鹕灌顶
seleniumjava测试工具
在自动化测试领域,Selenium凭借其强大的跨浏览器兼容性和灵活的API,成为Web应用测试的首选工具。而Java作为一门稳定且广泛应用的编程语言,与Selenium结合能构建出高效、可维护的自动化测试框架。本文将从环境搭建开始,逐步介绍Selenium+Java的核心用法,帮助新手快速上手。一、环境搭建:让工具跑起来1.安装Java开发环境Selenium的Java客户端需要依赖JDK,建议安
android单个页面切换_Android实现界面切换的两种方式
weixin_39939918
android单个页面切换
在初学Android开发过程中,一定会遇到实现两个界面互相切换的问题,有两种方法来实现这个功能,小编带大家一起学习一下;这种方法严格意义上不算是界面切换(纯属小编愚见),因为它只是重新设置了一下界面的布局文件;比如我们在eclipse中新创建一个项目工程,会默认给我们两个文件,一个为MainActivity.java,另一个就是activity_main.xml,大家可以这样理解,MainActi
YAML基础使用教程(单引号和双引号的区别)
奔跑吧邓邓子
工具使用YAML单引号双引号
提示:“奔跑吧邓邓子”的高效运维专栏聚焦于各类运维场景中的实际操作与问题解决。内容涵盖服务器硬件(如IBMSystem3650M5)、云服务平台(如腾讯云、华为云)、服务器软件(如Nginx、Apache、GitLab、Redis、Elasticsearch、Kubernetes、Docker等)、开发工具(如Git、HBuilder)以及网络安全(如挖矿病毒排查、SSL证书配置)等多个方面。无论
springboot 不加载mybatiesPlus的mapper.xml文件 的解决方法
奇纳尼
mapper.xmlmybatiesPlusspringboot
1:在pom.xml中加入src/main/java**/*.xmlfalse2:在application.properties中加入#配置mapperxml文件的路径,这个配置以后mybaties的xml文件就能被编译加载,还需要在pom.xml中配置,这个项目是父工程service#的pom.xml加的配置,,两个配置缺一不可mybatis-plus.mapper-locations=clas
Kafka单条消息长度限制详解及Java实战指南
在分布式消息系统中,Kafka以其高吞吐、低延迟的特性成为主流选择。但很多开发者在使用时会遇到一个常见问题:单条消息长度限制。本文将深入剖析Kafka的消息大小限制机制,并提供Java解决方案。一、Kafka消息长度限制核心参数Kafka通过多级配置控制消息大小,关键参数如下:配置项作用范围默认值说明message.max.bytesBroker1MB(1048588)Broker允许的最大消息尺
Kafka 如何优雅实现 Varint 和 ZigZag 编码
ByteUtils是Kafka中一个非常基础且核心的工具类。从包名common.utils就可以看出,它被广泛用于Kafka的各个模块中。它的主要职责是提供一套高效、底层的静态方法,用于在字节缓冲区(ByteBuffer)、字节数组(byte[])以及输入/输出流(InputStream/OutputStream)中读写Java的基本数据类型。ZigZag编解码过程的数学原理详解康托尔对角线映射。
泰剧“死生时刻/4 Minutes”完整无删未删减版在哪免费在线观看【1080p高清HD中文字幕】生死四分钟全集未删减版观看-4分钟百度云/夸克迅雷UC网盘资源在线获取
全网优惠分享
泰剧《死生时刻》(又名《4分钟》或《生死四分钟》)是一部在2024年播出的泰国电视剧。这部剧集以其悬疑的剧情和深刻的人物关系吸引了许多观众。主要讲述了主角Great,一名工商管理学院的大学生,同时也是一位富有企业主的儿子,他意外获得了能够预见四分钟后未来的超自然力量,这种力量使他能够改变许多事件的结果。在剧中,Great遇到了住院外科医生Tyme,两人的关系逐渐发展。提示:在线观看播放地址放在文章
《金色光芒》泰剧【1080p超清泰语中字】金色光芒(2024)全集完整未删减版免费在线观看夸克网盘高清迅雷网盘百度云
6a3de85245co
泰剧《金色光芒》以女性主角ThongPrakai的视角,讲述了一位勇敢女性为了追求更美好的生活,独自踏足曼谷的励志故事。在这里,她与九位性格迥异的男性角色相遇,他们各自以独特的方式影响着ThongPrakai的命运,成为了她追求成功的媒介。一起来看看《金色光芒》泰剧【1080p超清泰语中字】金色光芒(2024)全集完整未删减版免费在线观看夸克网盘高清迅雷网盘百度云吧。金色光芒链接:https://
普通人想利用AI变现,这5个赛道不能错过!
浮沉导师
随着人工智能技术的迅猛发展,越来越多的普通人开始关注如何利用AI实现变现。AI不仅改变了我们的工作方式,也创造了众多赚钱的机会。本文将介绍五个值得关注的AI赛道,帮助你抓住这些机会,实现收入增长。【高省】APP网购优惠券免费领,分享还能赚钱。【高省】是一个自用省钱佣金高,分享推广赚钱多的平台。佣金更高,模式更好,终端用户不流失。0投资,稳定可靠,百度有几百万篇报道,期待你的加入。应用市场下载【高省
08.机会判断:点线面体的战略选择--《梁宁产品思维三十讲》
阿木魔法学院1865_b324
疫情在家,每天的时间都没有被有效利用,很多时间用来了刷抖音和看小说,每日反思之时,痛心疾首,想起梁宁老师的课程,每每读起来都如金玉良言,让人不忍释卷,利用这段时间,重新复习梁宁老师的课程,相信一定会有所收获。穷人与富人的区别男怕入错行,女怕嫁错郎。举个例子,一对双胞胎,2010年大学毕业,一个加入了报社,一个加入了腾讯7年后,加入腾讯的年薪百万,加入报社的那位,报社已经沉沦,他曾经寄托理想的整个产
Java IO流
目录一、IO流的分类(一)字节流1、InputStreamInputStream类中的成员方法FileInputStream的构造方法read()和read(byte[]b)代码示例:2、利用Scanner进行字符读取代码示例:3、OutputStreamOutputStream中的成员方法FileOutputStream代码示例示例一:示例二:示例三:示例四:示例五:追加写:(二)字符流1、Re
《某某》台剧【1080p超清中字】某某(2024)全集完整未删减版免费在线观看夸克网盘高清迅雷网盘百度云
e95cfad15310
自从上次我们提到了《某某》的影视化消息,网友们就纷纷猜测起主演人选。其中,宋威龙和张新成成为了热门人选,他们精湛的演技和人气让许多粉丝期待不已。然而,这次《某某》的影视化却给我们带来了一个惊喜——它竟然是在台湾拍摄的,而且选用的演员我们都不怎么认识。大伙一起来看看《某某》台剧【1080p超清中字】某某(2024)全集完整未删减版免费在线观看夸克网盘高清迅雷网盘百度云就在下方。网盘链接:https:
java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
[JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include