&和&&的区别?
相同点
&和&&都可作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,其结果 才为true,否则,只要有⼀⽅为false,则结果为false。(ps:当要⽤到逻辑与的时候&是毫⽆意义,&本身就不是⼲这个的)
不同点
if(loginUser!=null&&string.IsnullOrEmpty(loginUser.UserName))
&&具有短路的功能,即如果第⼀个表达式为false,则不再计算第⼆个表达式,对于上⾯的表达式,当loginUser为null时,后⾯的表达式不会执⾏,所以不会出现NullPointerException如果将&&改为&,则会 抛出NullPointerException异常。(ps:所以说当要⽤到逻辑与的时候&是毫⽆意义的)
& 是⽤作位运算的。
总结
&是位运算,返回结果是int类型 &&是逻辑运算,返回结果是bool类型
== 与equals区别?
== 就是比较两个地址是否相等,即是否指向同一个对象。
equals 函数则是比较两个对象在堆中的数据是否一样,即两个引用类型是否是对同一个对象的引用
https://blog.csdn.net/shenwansangz/article/details/95664660
i++与++i的区别?
i++是先赋值,然后再自增;++i是先自增,后赋值。
as和is的区别?
as在转换的同时判断兼容性,如果无法进行转换,返回位null(没有产生新的对象),as转换是否成功判断的依据是是否位null
is只是做类型兼容性判断,并不执行真正的类型转换,返回true或false,对象为null也会返回false。
as比is效率更高,as只需要做一次类型兼容检查
是否可以继承String类?
String类是final类故不可以继承。
sealed修饰的类有什么特点?
密封,不能继承。Thread 线程类就是一个密封类
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)