cget cmake 包管理工具
cget 是一个方便的进行cmake 包下载以及安装的工具 包含的特性 非侵入,无需编写特殊钩子就可以使用cmake 开箱即用, 由于使用了标准的基于cmake的方式,直接可以使用基于cmkae 的软件包 去中心, 我们可以使用github、 git、 url,本地文件系统进行软件包的安装 安装cget pip install cget 安装依赖包 cget install zlib,http://zlib.net/zlib-1.2.11.tar.gz 效果 从上边可以看出cget 帮助我们做
java 11 局部变量类型推断
什么是局部变量类型推断? var javastack = "javastack";
System.out.println(javastack); 大家看出来了,局部变量类型推断就是左边的类型直接使用 var 定义,而不用写具体的类型,编译器能根据右边的表达式自动推断类型,如上面的 String 。 var javastack = "javastack"; 就等于: String javastack = "javastack"; 在声明隐式类型的lambda表达式的形参时允许使用var 使用v
a标签 download base64 下载 网络失败
使用html2canvas 生成尺寸较大 base64 后进行 a标签 download 下载 ,浏览器报网络失败错误 通过谷歌搜索 发现原因是 因为截取尺寸较大 导致生成base64 长度太大 ,达到了a标签的href 上限,所以报错下载失败,解决方案是 将base64 dataURI转换为Blob 文件对象 然后a 链接下载 blob文件路径 // edited from https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvas
RxJava 2 0中backpressure 背压 概念的理解
英文原文:https://github.com/ReactiveX/RxJava/wiki/Backpressure Backpressure(背压、反压力) 在rxjava中会经常遇到一种情况就是被观察者发送消息太快以至于它的操作符或者订阅者不能及时处理相关的消息。那么随之而来的就是如何处理这些未处理的消息。 举个例子,使用zip操作符将两个无限大的Observable压缩在一起,其中一个被观察者发送消息的速度是另一个的两倍。一个比较不靠谱的做法就是把发送比较快的消息缓存起来,当比较慢的Ob
CF1056E Check Transcription 字符串哈希
传送门 暴力枚举\(0\)的长度,如果对应的\(1\)的长度也是一个整数就去check是否合法。check使用字符串哈希。 复杂度看起来是\(O(st)\)的,但是因为\(01\)两个数中数量较多的至少有\(\frac{|s|}{2}\)个,那么最多有\(\frac{2|t|}{|s|}\)个可能的答案,而每一次check是\(O(|s|)\)的,所以总复杂度是\(O(|t|)\)的 #include<bits/stdc++.h>
#define ll long long
#define PL
python3虚拟环境应用
python3自带虚拟环境venv,大致操作只有三步 1. 创建虚拟环境 python3 -m venv venv(名称随意) 2. 激活虚拟环境 source venv/bin/activate 3.退出虚拟环境 deactivate 。
Android组件——使用DrawerLayout仿网易新闻v4 4侧滑菜单
转载请注明出处:http://blog.csdn.net/allen315410/article/details/42914501 概述 今天这篇博客将记录一些关于DrawerLayout的基本用法,我想关于DrawerLayout的用法也许有不少不够了解,这也是比较正常的事情,因为DrawerLayout作为Android组件是Google后来在android中添加的,在android.support.v4包下。那么,DrawerLayout是一个怎么的组件呢?我们知道,当我们使用Andro
Java day 15
1、File:文件和目录路径名的抽象表示形式,File类的实例是不可变的 File的构造方法:
(1)File(File parent,String child):根据指定的父路径对象和文件路径创建File对象
(2)File(String pathname):将指定的路径名转换成一个File对象
(3)File(String parent,String child):根据指定的父路径和文件路径创建File对象
File的创建功能:
(1)boolean create
CF1096D Easy Problem [dp]
CF1096D Easy Problem 复习了几乎忘光了的dp dp数组是这样子的:\(dp[i][0/1/2/3/4]\)表示前\(i\)个字符,"hard"遍历到了第几个字符的最小代价。 核心代码是这样的: memset(dp, 0x3f, sizeof dp);
for(int i = 1; i <= 4; i++) dp[0][i] = 0;
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= 4; j++) {
Mybatis学习笔记2 - 解析config
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--
1、mybatis可以使用properties来引入外部properties配置文件的内容;
re
android string xml 转译 特殊字符问题
在编辑 string.xml 文件的时候,字符之间的空格用 Space 键是能显示出效果的的,但是字符后面如果需要添加空格,直接 Space 键是不管用的,此时 空格应该用  来表示; 如: <string name="score">Score :  </string> ======》 这样就能显示出冒号后面的 空格 android strings.xml转义字符, 注意细节解决 http://lanyan-lan.iteye.com/blog/1561500 XML转义字
CentOS 7 管理组账号
添加组账号信息groupadd [-g GID] 组账号名添加删除组成员 gpasswdgpasswd命令设置组账号密码(极少用),添加/删除组成员常用命令选项:-a:向组内添加一个用户-d:从组内删除一个用户成员-M: 定义组成员列表,以逗号分隔删除组账号groupdel 组账号名 查看账号信息id命令查询用户身份标识groups命令查询用户所属的组finger
linux命令行模式下输入Ctrl+s后界面锁定,假死。
使用vim时,如果按了组合键ctrl+s,会发现按什么都没反应,处于假死的状态,其实这个是linux系统命令行模式下的锁屏快捷键,只是输入的命令没有在输出终端(显示器)显示出来而已。所以,不止vim,只要在命令行模式下,都会如此。要退出此种锁屏界面,需按ctrl+q,此时会发现先前在锁屏时输入的字符都显示出来了,并且可正常使用了。所以,当不注意或者不小心按下ctrl+s时,还真不能乱敲键盘,以免不
Java基础语法Day_07(1-3 常用API第一部分)
常用API第一部分 第1节 Scanner类 day07_01_API概述和使用步骤(使用最基本的三个步骤 搜索 构造方法 方法) day07_02_Scanner概述及其API文档的使用 day07_03_Scanner的使用步骤 day07_04_Scanner练习一_键盘输入两个数字求和 day07_05_Scanner练习二_键盘输入三个数字求最大值 第2节 匿名对象 day07_06_匿名对象的说明 day07_07_匿名对象作为方法的参数和 第3节 Random
Android-Java构造代码块&构造方法隐式三行
构造代码块: 描述Teacher对象/实体: package android.java.oop06;
public class Teacher {
private int id = 007;
private String name = "零零发";
private int age = 98;
private float height = 1.78F;
/**
* 静态代码块:当前Teacher类,被加载进内存时 就会执行此静态代码块里面
javaWeb_JDBC_ResultSet查询操作
JDBC基础_resultSet结果集 1.概述以及注意事项 (1).什么是ResultSet? ResultSet是对象以逻辑表格的形式封装了执行数据库操作的结果集,ResultSet 接口由数据库厂商实现 (2).如何创建ResultSet 通过调用 Statement 对象的 excuteQuery() 方法创建该对象 (3).如何使用ResultSet ResultSet 对象维护了一个指向当前数据行的游标,初始的时候,游标在第一行之前,可以通过 ResultSet 对象的 next(
今日推荐
周排行