小技巧两个感叹号(两个!)连用

小技巧两个感叹号(两个!)连用

两个!是为了把非0值转换成1,而0值还是0。(如下表)

  !!

0

1 0
1 0 1
10 0 1

php持术或其他语言中我们经常会看到感叹号的用法,有一定程序语言基础的朋友都知道单个感叹号的作用是取反的意思,也就是取当前结果的反面,如:

$a原来是true取反后$a就变成false了,这种用法在程序中经常见到,但是双感叹号的用法可能就少多了.其实双感叹号也就相当于程序语言中的三元运算($a?$b:$c),如

!!$a返回的是布尔值(true或false),有的朋友可能会问为什么要这么用,直接用常规的方法做不一样吗?其实是一样的,但是作为程序员必须宽泛的了解程序的各种写法,不致于别人写的程序自己看不懂.呵呵,个人看法!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112402.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • springboot配置文件的属性集

    springboot配置文件的属性集springboot配置文件的属性集

    2022年4月22日
    40
  • idea如何远程debug_eclipse远程debug原理

    idea如何远程debug_eclipse远程debug原理使用IDEA进行远程debug,这个操作大家没用过也听过它的实现原理为:本机和远程主机的两个VM之间使用Debug协议通过Socket通信,传递调试指令和调试信息。其中,调试的程序常常被称为debugger,而被调试的程序称为debuggee。在Debug领域,JDK有一套规范与体系来支持,即JavaPlatformDebuggerArchitecture,JPDA体系。在JPDA体系中定义了三个角色,每个角色又对应着不同的技术模块支撑,分别为JVMTI/JDWP/J

    2025年10月17日
    3
  • post跨域get不跨域_request获取请求的域名

    post跨域get不跨域_request获取请求的域名转载博客一、当只有addRequestProperty的时候[html]viewplaincopyprint?URL url = new URL(“http://localhost:8080/net/listnets.jsp”);              URLConnection connection = url.openConnection();              conne

    2025年10月20日
    3
  • U盘启动制作教程/实例 新手制作启动盘必看! [20081120]「建议收藏」

    U盘启动制作教程/实例 新手制作启动盘必看! [20081120]「建议收藏」总结几点优盘量产前的准备工作和注意事项 http://bbs.mydigit.cn/read.php?tid=79204 ———————————————————————– 附上总版搜集的一些U盘量产工具使用操作说明手册 http://bbs.mydigit.cn/read.php?tid=

    2025年9月12日
    5
  • 什么是WPF_windows程序设计教程

    什么是WPF_windows程序设计教程windows的消息具有以下两个参数:(1)字参数(wParam)(2)长参数(lParam)  字参数和长参数都是32位整数,用于提供消息的附带消息,是消息传递过程中参数的载体。附加信息的消息号取决于消息号。一、wParam和lParam消息 :部分说明需要查看MSDN例如:1 WM_PAINT消息,LOWORD(lParam)是客户区的宽,HIWORD(lParam)是客户区的高。…

    2022年8月18日
    6
  • filezilla下载安装_filezilla默认端口

    filezilla下载安装_filezilla默认端口在进行文件下载时,除了filezilla软件,我还发现其他一款超好用的下载文件的软件:IIS7服务器管理工具IIS7服务器管理工具中的ftp功能和vnc很像,都能支持批量操作,但是ftp比vnc更出

    2022年8月4日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号