e1

为什么Java的+ =,-=,* =,/ =复合赋值运算符不需要强制转换?

拥有回忆 提交于 2020-02-01 10:33:43
直到今天,我还以为例如: i += j; 只是以下方面的捷径: i = i + j; 但是,如果我们尝试这样做: int i = 5; long j = 8; 那么 i = i + j; 不会编译,但是 i += j; 会编译的很好。 这是否意味着实际上 i += j; 是这样的快捷方式 i = (type of i) (i + j) 吗? #1楼 在Java中,当可以将赋值操作右侧的表达式类型安全地提升为赋值左侧的变量类型时,将自动执行类型转换。 因此,我们可以安全地分配: byte -> short -> int -> long -> float -> double. 反之亦然。 例如,我们不能自动将long转换为int,因为第一个比第二个需要更多的存储空间,因此信息可能会丢失。 要强制进行这种转换,我们必须进行显式转换。 类型-转换 #2楼 有时,可以在面试中提出这样的问题。 例如,当您编写时: int a = 2; long b = 3; a = a + b; 没有自动类型转换。 在C ++中,编译上面的代码不会有任何错误,但是在Java中,您会得到类似 Incompatible type exception 。 因此,为了避免这种情况,您必须像这样编写代码: int a = 2; long b = 3; a += b;// No compilation error or

h3c与Cisco-Juiper E1/T1互通总结

前提是你 提交于 2020-01-24 00:39:04
https://blog.51cto.com/haorenzhang/1917227 前 言 一直以来断断续续的测过与Cisco、Juniper友商设备的互通,主要是涉及到E1/T1的链路较多,每次在测试互通的时候总是忍不住还要去翻阅手册,进行重新配置;同时不少同事在测试互通时,特别是在与Juniper互通时总来询问如何配置。因此,本人有感而发有必要做个与Cisco、Juniper E1/.T1互通总结,方便今后互通时迅速上手,同时也希望对大家在测试其他模块时有用,特别是对刚入职的新员工。 本文首先对E1/T1板卡进行简单的介绍,以在国内应用较广的E1介绍为主,大家了解清楚E1/T1板卡的使用情况后,并对典型配置作介绍,并依据自己在测试任务中搭建的实际环境详细的介绍了互通的配置。文章中有不妥之处,请指出改正。 与Cisco & Juiper E1/T1互通总结 1 E1/T1概述 20世纪60年代,随着PCM(Pulse Code Modulation,脉冲编码调制)技术的出现,TDM技术(Time Division Multiplexing,时分复用)在数字通信系统中逐渐得到广泛的应用。目前,在数字通信系统中存在两种时分复用系统,一种是ITU-T推荐的E1系统,广泛应用于欧洲以及中国;一种是由ANSI推荐的T1系统,主要应用于北美和日本(日本采用的J1,与T1基本相似

Android插件

可紊 提交于 2020-01-16 05:58:16
资料: https://zhuanlan.zhihu.com/p/33017826 /** * 分别定义Extension1 和 Extension2 类,申明参数传递变量 */ class Extension1 { String testVariable1 = null } class Extension2 { String testVariable2 = null } /** * 插件入口类 */ class TestPlugin implements Plugin<Project> { @Override void apply(Project project) { //利用Extension创建e1 e2 闭包,用于接受外部传递的参数值 project.extensions.create('e1', Extension1) project.extensions.create('e2', Extension2) //创建readExtension task 执行该task 进行参数值的读取以及自定义逻辑... project.task('readExtension') { println 'TestPlugin apply' println 'e1 = ' + project['e1'].testVariable1 println 'e2 = ' + project['e2']

事件等待(@event与wait(event.triggered))

别来无恙 提交于 2019-12-06 15:10:58
1、@event有竞争问题 program test; event e1; initial begin #10 ->e1; end initial begin #10 @e1; $display("hello"); end endpropram 在这个例子中,事件的触发(->e1)和事件的检测(@e1)都是在10ns的时候发生,这个时候就有竞争问题,看那个进程先执行(一般是上部分的代码先执行),这样就会导致有的时候能够检测到事件,输出"hello",有的时候则不能检测到。 2、wait(event.triggered)没有竞争问题 program test; event e1; initial begin #10 ->e1; end initial begin #10 wait(e1.triggered); $display("hello"); end endpropram 同样是事件的触发(->e1)和事件的检测(@e1)都是在10ns的时候发生,但是这个时候没有竞争问题,event.triggered可以检测到当前触发的事件,所以一定会输出hello。 来源: https://www.cnblogs.com/yuandonghua/p/11991956.html

Myatis之bind标签

久未见 提交于 2019-12-06 10:45:24
myBatis的bind的标签,一般的用法都是 <if test="name!= null and name!= '' ">   <bind name="userLike" value=" '%' + name+ '%' "/>   and user_name like #{userLike} </if>    但是,当bind和OGNL结合使用时,用处还是大大的 ognl的用法借用这位的文章 https://www.cnblogs.com/wgj-master/p/7891289.html MyBatis常用的OGNL e1 or e2 e1 and e2 e1 == e2,e1 eq e2 e1 != e2,e1 neq e2 e1 lt e2:小于 e1 lte e2:小于等于,其他gt(大于),gte(大于等于) e1 in e2 e1 not in e2 e1 + e2,e1 * e2,e1/e2,e1 - e2,e1%e2 !e,not e:非,求反 e.method(args)调用对象方法 e.property对象属性值 e1[ e2 ]按索引取值,List,数组和Map @class@method(args)调用类的静态方法 @class@field调用类的静态字段值    例: <bind name="xxx" value="@com.tydic.mybaits

访问控制列表实验

泪湿孤枕 提交于 2019-12-06 09:10:39
实验报告 RIP路由实验五 一、实验小组拓扑 (VI) 二、实验准备 1、路由器网络地址方案设计 2、PC机设置方案 三、实验内容 根据要求,我们按照拓扑结构和路由协议进行了子网划分而且子网掩码的长度一致,设置了9个网段(200.10.10.16,200.10.10.32,200.10.10.48,200.10.10.64,200.20.20.80,200.10.10.96,200.10.10.112,200.10.10.128,200.10.10.144),测试网络连通性实验过程如下(这里以路由c、d和主机6-3、6-4的操作为演示): 1. 为各个网段、路由器的各个接口(e0,e1,e2)设置ip地址(路由器有a,b,c,d,e 共5个),配置rip1协议,并使能各个网段。 2.内网-本机IP设置ip地址和缺省网关(对第二个网卡进行设置) 3.查看路由c 路由表 4.基本访问控制列表-禁止主机c(IP 200.10.10.67)通过e1 e2端口(即不能访问主机d 200.10.10.30) 设置之前,主机c可以ping 通 主机 d 创建禁止200.10.10.67通过控制列表2002,并应用于路由d端口e1 e2 创建基本的访问控制列表和设置过程如下 设置好之后,主机c 不能ping 通 主机 d 5. 基本访问控制列表-禁止网段200.10.10.16/28通过e1

传输技术

一曲冷凌霜 提交于 2019-12-06 00:22:34
ADSL使用正交幅度调制(QAM)、无载波幅相调制(CAP)和李三多音频调制(DMT)三种技术。 ADSLModen分为两类:桥接式和路由式。 E1/T1数字中继主要使用同轴电缆进行传输,E1的数据帧由32个时隙组成,每个时隙传送8bit数据,一帧共256bit,每秒传输8000帧,因此E1的数据传输率为256*8000=2.048Mbit/s。 E1的应用主要有传输语音(需要使用E1的成帧方式)和传输数据(使用部成帧的E1)两类。 DDN即数字数据网,基本单位为结点,结点之间采用光纤连接,构成网状拓扑,用户的终端设备通过数据终端单元(DTU)与DDN结点连接。 DDN承载IP有两种方式,1,DDN提供透明信道,然后在此信道上封装HDLC/PPP等穿行协议;2,提供X.25等协议接口。 SDH标准定义了一套可进行同步信息传输、复用、分插和交叉连接的标准化数字信号的结构域等级。 SDH比PDH拥有更好的网络自愈保护功能,非常适合传输电路交换的传统语音业务。 SDH网络一般包括终端复用器(TM)、分插复用器(ADM)、再生中继器(REC)和数字交叉连接(DXC)等4种设备。 TM用于SDH网络的终端结点,ADM用于转接站点处,REC包括两种,纯光REC用于光功率放大和延长信号的传输距离,电REC用于再生信号,消除噪声然后进行电光转换将信号传送出去,DXC完成信号的交叉连接功能。

579. 查询员工的累计薪水

喜你入骨 提交于 2019-12-05 03:16:28
Employee 表保存了一年内的薪水信息。 请你编写 SQL 语句,来查询一个员工三个月内的累计薪水,但是不包括最近一个月的薪水。 结果请按 'Id' 升序,然后按 'Month' 降序显示。 示例: 输入: | Id | Month | Salary | |----|-------|--------| | 1 | 1 | 20 | | 2 | 1 | 20 | | 1 | 2 | 30 | | 2 | 2 | 30 | | 3 | 2 | 40 | | 1 | 3 | 40 | | 3 | 3 | 60 | | 1 | 4 | 60 | | 3 | 4 | 70 | 输出: | Id | Month | Salary | |----|-------|--------| | 1 | 3 | 90 | | 1 | 2 | 50 | | 1 | 1 | 20 | | 2 | 1 | 20 | | 3 | 3 | 100 | | 3 | 2 | 40 | 解释: 员工 '1' 除去最近一个月(月份 '4'),有三个月的薪水记录:月份 '3' 薪水为 40,月份 '2' 薪水为 30,月份 '1' 薪水为 20。 所以近 3 个月的薪水累计分别为 (40 + 30 + 20) = 90,(30 + 20) = 50 和 20。 | Id | Month | Salary | |----|

Orcal nvl函数

谁说我不能喝 提交于 2019-12-05 01:52:53
NVL (E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身。但此函数有一定局限,所以就有了NVL2函数。 拓展:NVL2函数:Oracle/PLSQL中的一个函数,Oracle在NVL函数的功能上扩展,提供了NVL2函数。 NVL 2(E1, E2, E3)的功能为:如果E1为NULL,则函数返回E3,若E1不为null,则返回E2。 NVL函数的功能是实现空值的转换,根据第一个表达式的值是否为空值来返回响应的列名或表达式,主要用于对数据列上的空值进行处理,语法格式如:NVL( string1, replace_with) 如果第一个参数的值为空值,则返回第二个参数的值,否则返回第一个参数的值。如果两个参数的值都为空值,则返回空值。第一个参数和第二个参数可以是任何类型的数据,但两个参数的数据类型必须相同(或能够由Oracle隐式转换为相同的类型)。 引申一下,此NVL的作用与SQLserver 中的 ISNULL( string1, replace_with) 一样。 另一个有关的有用方法 declare i integer select nvl(sum(t.dwxhl),1) into i from tb_jhde t where zydm=-1 这样就可以把获得的合计值存储到变量 i中,如果查询的值为null就把它的值设置为默认的1 oracle中:

oracle之nvl,nvl2,decode

混江龙づ霸主 提交于 2019-12-03 02:30:35
oracle sql常用查询nvl,nvl2,decode区别及使用方法 1,NVL( E1, E2) 如果E1为NULL,则NVL函数返回E2的值,否则返回E1的值,如果两个参数都为NULL ,则返回NULL。 select nvl(null, 1) from dual; --1 select nvl(2, 1) from dual; --2 select nvl(null, null) from dual; --null 2,nvl2 (E1, E2, E3) 的功能为:如果E1为NULL,则函数返回E3,否则返回E2 select nvl2(null, 1, 3) from dual; --3 ,3,decode(E1, E2, E3, E4, E5, E6 ) 如果E1==E2,则值E3,如果E1==E4,则值E5;否则E5 select decode(1, 1, 2, 3, 4, 5) from dual; --2 select decode(3, 1, 2, 3, 4, 5) from dual; --4 select decode(2, 1, 2, 3, 4, 5) from dual; --5 来源: https://www.cnblogs.com/lidelin/p/11771861.html