- Python Day16
赵英英俊
Python训练python
@浙大疏锦行Pythonday16内容:numpy数组的创建以及相关操作numpy的索引理解SHAP值代码:importnumpyasnpa=np.array([[1,2],[3,4],[5,6]])b=np.array([[7,8],[9,10],[11,12]])效果:
- VScode安装配置PYQT6
开始是准备安装PYQT5的,但是安装不下去,就改成安装PYQT6一.安装pyqt5,成功。c:\PYQT>pipinstallpyqt5Defaultingtouserinstallationbecausenormalsite-packagesisnotwriteableCollectingpyqt5DownloadingPyQt5-5.15.11-cp38-abi3-win_amd64.whl.
- Python自动化神器:Faker库生成逼真测试数据的10种高级技巧
Python自动化神器:Faker库生成逼真测试数据的10种高级技巧fromfakerimportFakerimportpandasaspdimportjsonfromdatetimeimportdatetime#创建一个Faker实例fake=Faker('zh_CN')#使用中文本地化#生成基本个人信息defgenerate_user():return{"name":fake.name(),"
- 微信小游戏源码和小程序游戏代码开发搭建部署
南云放马归
本文将利用小程序游戏提供的能力制作一个简单的方块旋转小程序游戏,旨在从零开始介绍小程序游戏的开发过程。源码:casgams.top/gm注册小程序游戏账号进入小程序注册页面按照指引填写信息并提交相应信息,服务类别选择“程序游戏”,子类别可以先选择“休闲程序游戏”,您可以拥有自己的小程序游戏账号,安装并启动开发者工具。fromairtest.core.apiimport*auto_setup(__f
- 贪心算法(排序)
limitless_peter
贪心算法算法
码蹄集OJ-活动安排#includeusingnamespacestd;structMOOE{ints,e;};boolcompare(constMOOE&a,constMOOE&b){returna.e>n;vectora(n);for(inti=0;i>a[i].s>>a[i].e;}sort(a.begin(),a.end(),compare);intt=0;intresult=0;for(
- 051-OpenCV GrabCut图像分割算法
话不多说,上代码,看结果。importcv2#导入库importnumpyasnp'''cv2.imread(filename,flags)#filename为文件名,图片与.py文件在一个文件夹时输入文件名即可#不在一个文件夹时输入图片的路径和名字#flags为图片的颜色类型,默认为1,灰度图像为0'''img=cv2.imread('89.jpg')mask=np.zeros(img.shap
- 第三方库xlrd,读取excel中的数据
听MM的话
1、安装第三方库=============》xlrdpipinstallxlrd2、代码如下,封装成类的形式,方便调用,提高复用性importxlrdfromxlrdimportxldate_as_tuple'''xlrd中单元格的数据类型数字一律按浮点型输出,日期输出成一串小数,布尔型输出0或1,所以我们必须在程序中做判断处理转换成我们想要的数据类型0empty,1string,2number,
- PyQt入门指南十三 QPushButton按钮组件详解
充值内卷
pyqt前端
在PyQt中,QPushButton是一个非常常用的组件,用于创建按钮。按钮可以用于触发各种操作,例如打开对话框、提交表单或执行其他功能。本文将详细介绍QPushButton的基本用法和一些高级特性。基本用法首先,我们需要导入必要的模块并创建一个简单的QPushButton。importsysfromPyQt5.QtWidgetsimportQApplication,QWidget,QPushBu
- Fetch.js
pilakuma
import*ashelperfrom'./helper.js'importCookiesfrom'js-cookie'exportdefaultasync(url='',data={},type='GET',method='fetch',body=null)=>{type=type.toUpperCase();url=url;if(data){if(type=='GET'||type=='POS
- 16路串口光纤通信FPGA项目实现指南 - 第二部分(上)
无证驾驶梁嗖嗖
FPGAfpga开发
16路串口光纤通信FPGA项目实现指南-第二部分(上)四、Aurora通信接口实现4.1Aurora顶层模块设计文件位置:uart_fiber.srcs/sources_1/new/aurora_top.vmoduleaurora_top(inputinit_clk,//初始化时钟(通常为50MHz)outputuser_clk_i,//Aurora用户时钟输出outputCHANNEL_UP,/
- python ffmpeg pipe,管道的ffmpeg的输入和输出在python
呼呼啦啦就瘸了
pythonffmpegpipe
I'musingffmpegtocreateavideo,fromalistofbase64encodedimagesthatIpipeintoffmpeg.Outputtingtoafile(usingtheattachedcodebelow)worksperfectly,butwhatIwouldliketoachieveistogettheoutputtoaPythonvariableins
- Redis 如何保证高并发与高可用
笑衬人心。
Redis笔记redis数据库缓存
一、Redis高并发的实现机制1.1单线程模型+I/O多路复用Redis使用单线程架构(从Redis6开始引入I/O多线程,但核心命令仍由单线程执行)。采用epoll/kqueue等I/O多路复用机制,非阻塞处理大量连接。避免多线程带来的上下文切换和锁竞争问题。1.2高效数据结构与命令执行内部使用如跳表、字典、压缩列表、整数集合、位图等高效结构。Redis命令执行在内存中,时间复杂度较低(多数为O
- 笔试——Day7
nuyoahc
笔试强训c++笔试数据结构算法
文章目录第一题题目思路代码第二题题目:思路代码第三题题目:思路代码第一题题目字符串中找出连续最长的数字串思路逐个字符检查如果当前字符是数字,将其加入临时字符串tmp如果当前字符不是数字检查tmp是否比当前最长的res更长,如果是,更新res否则清空tmp代码第二题题目:岛屿数量思路深度优先搜索:双重循环遍历每个网格点(i,j)如果当前点是陆地(grid[i][j]=='1')且未被访问过(!vis
- Jetpack Compose 中 Kotlin 协程的使用
儿歌八万首
jetpackandroidandroiduiComposekotlin协程
本文将带你系统性地理解JetpackCompose中协程的使用场景、API设计理念、生命周期对齐、性能优化与常见误区,助你写出既响应迅速又稳定可靠的现代AndroidUI代码。1.为什么在Compose中离不开协程传统View系统就离不开异步:网络请求、数据库I/O、动画……进入声明式UI时代,异步需求不仅没减少,反而更复杂——状态驱动让数据变化更加频繁。协程凭借以下优势成为Compose首选:语
- git常用命令行和注意事项
捂耳听雨
第一部分:免密码推送1,命令配置gitconfig--globaluser.name"这里换上你的用户名"gitconfig--globaluser.email"这里换上你的邮箱"2.生成秘钥ssh-keygen-trsa-C"这里换上你的邮箱",需要确认四次3.在系统用户目录下生成两个文件,分别是id_rsa(私钥)和id_rsa.pub(公钥)4.进入github的设置页面,点击SSHandG
- Python网络爬虫实现selenium对百度识图二次开发以及批量保存Excel
WeiJingYu.
python爬虫selenium
一.百度识图自动上传图片fromseleniumimportwebdriverfromselenium.webdriver.edge.optionsimportOptionsfromselenium.webdriver.common.byimportByedge_options=Options()edge_options.binary_location=r"C:\ProgramFiles(x86)
- python-第五课-绘线段、正方形
布口袋_天晴了
1.绘制第一个海龟图形A.课程内容:通过绘制线段和正方形来学习导入海归模块、创建画笔、移动和旋转画笔。通过绘制图形来学习python编程的基本方法。B.知识点(1)导入海龟绘图模块(2)创建画笔(3)向前移动(4)画笔旋转C.用到的基本指令(1)import(2)turtle.Pen()(3)forward()(4)right()海龟绘图(turle)是python内置的一个比较有趣味的模块。使用
- maven本地仓库清缓存py脚本
就叫飞六吧
maven缓存spring
清_remote.repositories、以及.lastUpdated缓存文件,避免换仓库or私服的时候一直往旧地方去download从而引起的failtodownlown问题importosimportsysdefdelete_maven_metadata_files(directory):"""递归删除指定目录下的_remote.repositories和.lastUpdated文件:par
- ECMAScript新特性(二)
洲行
Set数据结构Set与Array是十分相似的,不过Set不允许值重复consts=newSet()s.add(1).add(2).add(3).add(4).add(1)//add返回的还是set类型,所以可链式调用console.log(s)//=>Set[1,2,3,4]重复的1会被忽略掉//依然可以使用forEach等数组循环方法s.forEach(i=>console.log(i))//一
- 前端埋坑之js console.log字符换行后 html没换行问题处理
做个有准备的人
前端埋坑之路-前端技术前端十年之路前端javascripthtml
方法://命令字符处理(字符串超过N字之后换行处理)wrapText(text,n){n=n||70;//默认每70个字符换行if(text.length>n){letresult=text.slice(0,n);leti;for(i=n;i<text.length;i+=n){result+='\n'+text.slice(i,i+n);}re
- C对接验证码短信接口DEMO示例
短信接口开发
//接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。//账户注册:请通过该地址开通账户http://user.ihuyi.com/?DKimmu//注意事项://(1)调试期间,请使用用系统默认的短信内容:您的验证码是:【变量】。请不要把验证码泄露给其他人。//(2)请使用APIID及APIKEY来调用接口,可在会员中心获取;//(3)该代码仅供接入互亿无线短信接口参考使用,客
- PTA浙大版《C语言程序设计(第3版)》题目集.2
Xiao 竹 zi
c语言算法数据结构
习题4-10猴子吃桃问题#includeintmain(){intn,m=1;scanf("%d",&n);for(inti=1;iintmain(){intn,a=1,b=1,i;scanf("%d",&n);if(n==1){printf("1");}else{for(i=3;(a+b)intmain(){charc;intre=0,t,flag=0;scanf("%d%c",&re,&c);
- 校园导游系统(C++)
白开水最甜
数据结构课程设计校园导航系统
问题总结1、当使用时,该头文件没有定义全局命名空间,必须使用usingnamespacestd,这样才能使用类似于cout这样的C++标识符正确用法:#includeusingnamespacestd;2、对称赋值(注意细节)for(i=1;i注意string第一个字母是小写4、使用迪杰特斯拉算法出现的问题只设置与起始节点v0有弧时前驱设置为v0,否则为-1,而忘记设置起始节点的前驱为-1。以至于
- 头歌实践Java项目开发入门实战第三阶段【Java高级特性】
Y_03
头歌实践题java开发语言
本文来自头歌实践平台的Java项目实战入门【只有编程题】,如需访问其他阶段的文章,请自行阅读主页其他文章制作不易,请留下一个免费的点赞以及关注吧!!!一、Java高级特性-IO流2、字节流-输入输出packagestep2;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importja
- 海量文件快速复制(断点续传+验证+快速)
古承风
运维linux
#本地rsync-az--partial--append-verify--info=progress2--exclude="*.ext"/源目录//目标目录/#跨机器rsync-az-e"
[email protected]"--info=progress2--exclude="*.ext"user@remote:/源目录//本地目录/
- 英文圆体字练习 2019.2.22
许如清呐
笔尖:Hunt22B墨水:Walnut信笔涂鸦,还请多多指教《FriendsfromPoland》FriendsfromPoland《波兰来客》Whenwewereyoung,therewasdreams,那时我们有梦,aboutbeautifulsentence,关于文学,aboutromanticlove,关于爱情,aboutsteppingoneverycorneroftheworld.关于
- 【PTA数据结构 | C语言版】根据前序序列重构二叉树
本专栏持续输出数据结构题目集,欢迎订阅。文章目录题目代码题目请编写程序,根据给定二叉树的前序序列化结果,重构二叉树,并输出其前序遍历结果。输入格式:输入首先给出一个不超过20的正整数n,随后一行给出n个前序序列的元素。其中键值都是不超过9位的正整数,空结点对应符号#。输出格式:输出二叉树的前序遍历结果,每个数字占一行。输入样例:1112#4##35###输出样例:12435代码#include#i
- chainlink VRF中文教程(含mock),解决error: Arithmetic Underflow in createSubscription
_jacobfu
web3-智能合约报错区块链
⸻我使用的版本:chainlink-brownie-contractsversion:1.3.0⸻1.Import相关包,,,import{VRFConsumerBaseV2Plus}from"@chainlink/contracts/src/v0.8/vrf/dev/VRFConsumerBaseV2PLUS.sol";import{VRFV2PlusClient}from"@chainlink
- Electron实现“仅首次运行时创建SQLite数据库”
几道之旅
数据库electronsqlite
在桌面应用中,SQLite因其轻量、嵌入式特性成为本地存储的热门选择。但若重复初始化数据库,会导致数据覆盖或冗余。本文将详解如何让Electron应用仅在首次启动时创建SQLite数据库,后续启动直接连接现有库。一、核心逻辑与实现原理核心思路:通过检测数据库文件是否存在,决定是否执行建表操作。关键技术点:路径管理:使用Electron的app.getPath('userData')获取用户数据目录
- I3C通信驱动开发注意事项
MCU的奇妙之旅
MCU常见通信协议篇驱动开发单片机stm32嵌入式硬件51单片机mcu物联网
在I3C驱动开发中,需重点关注以下核心问题:一、硬件初始化关键点电气特性配置上拉电阻:根据总线负载和速度精确计算阻值(推挽模式可用更大阻值降低功耗)。IO模式动态切换:I2C兼容模式:配置为开漏输出(Open-Drain)。I3CSDR/HDR模式:切换为推挽输出(Push-Pull),需避免电平冲突。时钟与时序SCL频率:SDR模式需支持12.5MHz上限,HDR模式需匹配目标速率。时序余量:严
- 怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
- java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
- mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
- 微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
- Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
- 读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
- centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
- 23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
- 开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
- js实现切换
百合不是茶
JavaScript栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
- 周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟项目管理人生职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
- 前端Web开发的页面效果
Bill_chen
htmlWebMicrosoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
- 【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
- Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
- Jquery easyui layout应用注意事项
bozch
jquery浏览器easyuilayout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
- java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
- color
Chen.H
JavaScripthtmlcss
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
- [信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
- oracle flashback query(闪回查询)
daizj
oracleflashback queryflashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
- zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
- C语言学习三printf函数和scanf函数学习
dcj3sjt126com
cprintfscanflanguage
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
- 那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
- iptables开放端口
Fanyucai
linuxiptables端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
- Ehcache(05)——缓存的查询
234390216
排序ehcache统计query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
- 通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
- 使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
- 应用程序的通信成本
netkiller.github.com
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
- 一维数组与二维数组的声明与定义
恋洁e生
二维数组一维数组定义声明初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
- Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
- 更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found