有同学给子恒老师留言, 说在php源代码中看到有两个问号?? 不知道是什么意思. 其实两个问题??是php7新推出的表达式, c = a ?? b; 表示如果a非空,则c = a, 如果a为空,则 c = b: 两个问号表达式 php7以前经常使用到三元运算表达式, $name = issset($_POST['name']) ? $_POST['name'] : 'qinziheng'; 现在使用双问号表达式就行了 $name = $_POST['name'] ?? 'qinziheng';…
摘要: 简单实用的新特性. 原文:ES新提案:双问号操作符 译者:前端小智 本文主要讲Gabriel Isenberg撰写的ES提案"Nullish coalescing for JavaScript". 它提出?? 替换||的运算符,并提供默认值.这里先把这相提案叫作双问号操作符,如果你有好的叫法,欢迎留言讨论. 1. 概述 双问号 ?? 的操作符跟 || 类似,如果给定变量值为 null 或者 undefined,刚使用双问号后的默认值,否则使用该变量值. 如下: > und…
1.@ 这个东东看似和邮件有关啊,但是在C#的世界里,可跟邮件没有一毛钱关系,它是string的女朋友(当然了string有N多女友),二者结合就可以发挥作用了.你可以给它起个名字,叫做“逐字字符串”,或者别的什么东东都行,这都不重要,关键你要会泡它~ 在处理字符串时,那些个字符串转义字符我们可伤不起,一个个的记又记不住,用了还要查,麻烦的不行,那@就是为解决这个而诞生的,直接让字符串原样输出有木有?什么sql字符串了,还有路径啥了的,统统搞定 string sql = @"select * f…
1.问号?表示该变量可以为空 int? a=new int?(); Console.Writeline(a);//a是null 等价于: int? a=null; 也等价于下面这行,表示该变量默认为null. int? a; 2. 双问号表示如果为双问号左边的变量为null,则取右边的值,否则取左边变量的值. c=a??b; 等价于: c=(a==null)?b:a; 但有几点需要注意1) a,b必须是相同类型,且a可以为空(a要么是object,string等引用类型,要么是int?或floa…
原文:http://hi.baidu.com/guodong828/blog/item/c78fc23f847314cb7d1e7193.html 单问号---用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0; 双问号---用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过; public int? para;//public int para;如果用此行替换上一行的话,下面会报错public int par(){    return this.p…
比较:>,<,=,>=,<=,<>(!=) 逻辑:AND,OR,NOT 范围:BETWEEN...AND... 范围:IN,NOT IN 判空:IS NULL, IS NOT NULL 模糊:LIKE,NOT LIKE("_"匹配一位字符,"%"匹配任意位字符) 存在:[NOT] EXIST,配合MINUS使用可实现其他很难实现的结果集比较查询 数据区分大小写: 日期范围表示: 判空的两种写法: NOT IN的两种写法: IN范围…
谷歌面试题:输入是两个整数数组,他们任意两个数的和又可以组成一个数组,求这个和中前k个数怎么做? 分析: "假设两个整数数组为A和B,各有N个元素,任意两个数的和组成的数组C有N^2个元素. 那么可以把这些和看成N个有序数列: A[1]+B[1] <= A[1]+B[2] <= A[1]+B[3] <=- A[2]+B[1] <= A[2]+B[2] <= A[2]+B[3] <=- - A[N]+B[1] <= A[N]+B[2] <= A[N]…
1.单问号(?) 1.1 单问号运算符可以表示:可为Null类型,C#2.0里面实现了Nullable数据类型 //A.比如下面一句,直接定义int为null是错误的,错误提示为无法将null转化成int,因为后者是不可以为null的值类型. private int getNum = null; //B.如果修改为下面的写法就可以初始指为null,在特定情况下?等同于基础类型为Nullable. private int? getNum = null; private Nullable<int>…
Shell合并两个文件成一个文件的两列 发布时间:2014-07-20   编辑:www.jquerycn.cn Shell合并两个文件成一个文件的两列,提供了两种方法,普通shell脚本,awk脚本.     文件内容如下:more eng.txt chi.txt ::::::::::::::eng.txt::::::::::::::semicoloncommadelimiterspacebarhyphensingle quotedouble quote ::::::::::::::chi.t…
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 取两个内表的交集 比较两个内表的不同   前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 SAP自带的函数:CTVB_COMPARE_TABLES和BKK_COMPARE_TABLES:似乎可以比较两个内表,得出第二个内表不同于第一个内表的部分(新增/删除了那些部分) 但是,具体的使…
类似题目如下(数值是可变化的) 你的面前有30个硬币,其中有10个正面朝上,20个反面朝上,混乱在一团. 要求:现在用厚布遮住你的眼睛.要你把30个硬币分成2团,每团正面朝上的硬币个数相等.问:你要怎么分?不能用手去触摸感觉,也没有其他人帮忙. 答案如下 分为两堆,一堆10个,一堆20个,然后将10个那堆翻转,即可. 原理 假设分为两堆,A堆,有10个,B堆,20个. A(正)=X A(反)=10-X B(正)=10-X 发现没有,只需要把A堆翻转,A(正)=10-X 就能完成了. 数字变化 如…
(1).C#语法中一个个问号(?)的运算符是指:可以为 null 的类型. MSDN上面的解释: 在处理数据库和其他包含不可赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型以及日期类型的功能特别有用.例如,数据库中的布尔型字段可以存储值 true 或 false,或者,该字段也可以未定义. (2).C#语法中两个问号(??)的运算符是指null 合并运算符,合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null. MSDN上面的解释: ?? 运算符称为 null 合并运算符…
(1).C#语法中一个个问号(?)的运算符是指:可以为 null 的类型. MSDN上面的解释: 在处理数据库和其他包含不可赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型以及日期类型的功能特别有用.例如,数据库中的布尔型字段可以存储值 true 或 false,或者,该字段也可以未定义. (2).C#语法中两个问号(??)的运算符是指null 合并运算符,合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null. MSDN上面的解释: ?? 运算符称为 null 合并运算符…
PL/SQL(Procedural Language/SQL)是一种过程化语言. PL/SQL都是以(BLOCK)块为基本单位,整个PL/SQL块分为三部分 1.声明(Declare) 2.执行(以BEGIN开头) 3.异常处理(以EXCEPTION开头) PL/SQL的语法格式如下: [Declare] --声明部分 可选 BEGIN --执行部分 必选 [EXCEPTION] --异常处理部分 可选 END PL/SQL简单例子: --============================…
php保留两位小数而且四舍五入 $num = 123213.666666; echo sprintf("%.2f", $num); php保留两位小数而且不四舍五入 $num = 123213.666666; echo sprintf("%.2f",substr(sprintf("%.3f", $num), 0, -2)); php进一法取整 echo ceil(4.3);    // 5 echo ceil(9.999);  // 10 php…
Java提高篇--对象克隆(复制)(转自:http://www.cnblogs.com/Qian123/p/5710533.html#_label0)   阅读目录 为什么要克隆? 如何实现克隆 浅克隆和深克隆 解决多层克隆问题 总结 假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short,float,double.long)同样适用于该类情况. 但是如…
tomcat/config/server.xml中Host标签Context节点的问题 项目里quartz定时器总是被执行2次,通过打印发现原来项目被加载了两次,所以项目下的Listener被重复加载了 server.xml是这样的 appBase是指定虚拟主机的目录,可以指定绝对目录,也可以指定相对于的相对目录.如果没有此项,默认为/webapps. appBase的两个作用: 1. 这个目录下面的子目录将自动被部署为应用.2. 这个目录下面的.war文件将被自动解压缩并部署为应用 docBa…
php保留两位小数并且四舍五入 $num = 123213.666666; echo sprintf("%.2f", $num); php保留两位小数并且不四舍五入 php进一法取整 php舍去法,取整数 echo floor(4.3); // 4 echo floor(9.999); // 9…
>>单向:只写一端的映射属性,另一端不写(有一端用不着);双向:两端都写映射属性 >>一对一关联有两类:一类基于主键的(一般不使用),一类基于外键的(重点学习): 外键:是一个普通字段,该字段的值是另一张表的主键.比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键. 外键可以重复, 可以是空值.与主键唯一非空区别: 一对一:即在多的一方(需要或有外键的一方),外键personId上加唯一性约束:<many to one name="person"…
1.单问号(?) 1.1 表示Nullable类型 C#2.0里面实现了Nullable数据类型 //A.比如下面一句,直接定义int为null是错误的,错误提示为无法将null转化成int,因为后者是不可以为null的值类型. private int getNum = null; //B.如果修改为下面的写法就可以初始指为null,在特定情况下?等同于基础类型为Nullable. private int? getNum = null; private Nullable<int> getNum…
看到一个面试题.问两种实现多线程的方法.没事去网上找了找答案. 网上流传很广的是一个网上售票系统讲解.转发过来.已经不知道原文到底是出自哪里了. Java中有两种实现多线程的方式.一是直接继承Thread类,二是实现Runnable接口.那么这两种实现多线程的方式在应用上有什么区别呢? 为了回答这个问题,我们可以通过编写一段代码来进行分析.我们用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线程表示. 我们首先这样编写这个程序: class Threa…
#include <iostream> using namespace std; int main(){ //求两数的和? int a,b,s; cout<<"请你输入两个整型的数字:"<<endl; cin>>a>>b; int sum(int x ,int y); s=sum(a,b);//实际参数 ,代表具体数值,在()当中 cout<<"The sum of a and b is:"&l…
用两个栈实现队列: class QueueWithTwoStacks(object): def __init__(self): self._stack1 = [] self._stack2 = [] def appendTail(self,x): self._stack1.append(x) def deleteHead(self): if self._stack2: return self._stack2.pop() else: if self._stack1: while self._sta…
LayeredWindow提供两种模式: 1.使用SetLayeredWindowAttributes去设置透明度, 完成窗口的统一透明,此时窗口仍然收到PAINT消息, 其他应用跟普通窗口一样. 2.使用UpdateLayeredWindow方法, 向系统提交包含bitmap的DC, 交由系统统一管理,此时再也收不到paint消息, 任何对窗口的改变,只能通过UpdateLayeredWindow来修改. 如果你不需要针对像素级别的不同透明,只需要使用SetLayeredWindowAttri…
1.两个栈实现一个队列 两个栈stack1和stack2, push的时候直接push进stack1,pop时需要判断stack1和stack2中的情况.如果stack2不为空的话,直接从stack2中pop,如果stack2为空,把stack1中的值push到stack2中,然后再pop stack2中的值. class Solution: def __init__(self): self.stack1 = [] self.stack2 = [] def push(self, node): #…
models:比如有以下三个模型 from django.db import models """ 基类,其他类继承即可获得对应的字段 """ class BaseModel(models.Model): updated_tm = models.DateTimeField(auto_now=True) created_tm = models.DateTimeField(auto_now_add=True) class Meta: abstract…
model.id??0 ??运算:如果运算符左边的值为NULL侧返回右边的值,否则返回左边的值…
int? x = null;int y = x ?? -1; 这里的y不能为null,但是等于x,x为null时赋值给y会报错.?? 可以在x==null时对y赋值-1 更多相关资料:https://msdn.microsoft.com/zh-cn/library/ms173224(VS.80).aspx…
方法一: <div style="display:inline"> <div id="div1" style="float:left">div1   content</div> <div id="div2" style="float:left">div2   content</div> </div> 上面的div1和div2就会在同一行…
package multithread; public class MyThread { //j变量私有 private int j; //同步的+1方法 private synchronized void add(){ j++; System.out.println(Thread.currentThread().getName()+"----------> "+j); } //同步的-1方法 private synchronized void subtract(){ j--;…