点 (.) 如果变量是一个对象或者对象引用,则用它来访问对象成员. 箭头( ->) 如果变量是一个对象指针,则用它来访问对象成员. 双冒号 (::) 如果操作目标是一个具有名空间的标识符,则用它来访问其名空间内的东西.具有名空间的东西很多,除了纯粹的namespace外,正如你所知道的还有class,struct,union.…
a="abcd" b="abc" sed -i '/$a/ s/$/$b/' test.a 我想在test.a中匹配以”abcd“开头的行,然后在行尾加入”abc” 但这样是不生效的,需要改为 sed -i "/$a/ s/$/$bi/" test.a 双引号下的$才有变量的意思…
一.单引号和双引号 首先, 单引号和双引号,都是为了解决中间有空格的问题. 因为空格在linux中时作为一个很典型的分隔符,比如 string1=this is a string,这样执行就会报错.为了避免这个问题,因此就产生了单引号和双引号.他们的区别在于,单引号将剥夺其中的所有字符的特殊含义,而双引号中的 '$'(参数替换)和'`'(命令替换)是例外.所以,两者基本上没有什么区别,除非在内容中遇到了参数替换符$和命令替换符`. 所以下面的结果:num=3echo ‘$num’$numecho…
就是为了区分对象的方法和属性,和是访问类的静态方法和静态变量,类的静态方法和静态变量是类公用的,不需要实例化也能访问,而对象的方法和属性是每个对象特有的,因此必须先实例化.其他语言如C++,JAVA等也是一样的(当然它们提供的访问符号可能不一样) 双冒号一般是用在静态方法.静态变量的调用,此时类不需要实例化.而是用箭头操作符- > 时,必须要将类进行实例化(或者在类的内部调用也可以.) 双冒号(::)是位置访问符号.并不仅仅是指静态方法和变量.而是意味着调用冒号得左边这一坨调用冒号的右边这一坨.…
java中的双冒号操作符 定义 双冒号运算操作符是类方法的句柄,lambda表达式的一种简写,这种简写的学名叫eta-conversion或者叫η-conversion. 通常的情况下: 把 x -> System.out.println(x) 简化为 System.out::println 的过程称之为 eta-conversion 把 System.out::println 简化为 x -> System.out.println(x) 的过程称之为 eta-expansion 范式: 类名…
双冒号运算符就是java中的方法引用,方法引用的格式是类名::方法名. 这里只是方法名,方法名的后面没有括号“()”.--------> 这样的式子并不代表一定会调用这个方法.这种式子一般是用作Lambda表达式,Lambda有所谓的懒加载,不要括号就是说,看情况调用方法. 例如: 表达式: person ->person.getAge(); 可以替换为 Person::getAge 表达式: ()-> new HashMap<>(); 可以替换为 HashMap::new…
css3中对于伪元素的使用,在项目开发中使用得当将会对代码的可读性又很大的提升.但是对于伪类大家或许都知道是一些选择器的使用,这里总结了关于伪元素中单冒号和双冒号的区别: 再官方定义中规定单冒号都为伪类,是一种选择器 eg:     a:first-child{}     a:nth-of-type(2) {}     a:last-child {}     a:nth-of-type(even) {}     a:nth-of-type(odd) {} 而伪元素的使用中可以用单冒号和双冒号都可…
在PHP中,字符串数值有单引号和双引号两种. 区别: 单引号:系统不做复杂的转义.只转义\'和\\两种转义,其他的按原样输出. 双引号:则转义比较多,\",\\,\r,\t,\n,\$等. 对于变量: 单引号:不对字符串中的$做变量名解析. 双引号:会试着将$理解成变量名,进行解析输出. 关于速度: 单引号的处理速度快于双引号.…
::before和:after中的的双冒号和单冒号有什么区别及这两个伪元素的作用 单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素(伪元素由双冒号和伪元素名称组成),为了兼容已有的伪元素写法,在一些浏览器中也可以使用单冒号,来表示伪元素,比如:first-line.:first-letter.:before.:after等. 在新的CSS3中引入的伪元素不允许再支持旧的单冒号是写法 想让插入的内容出现在其它内容前,使用::before,反之使用::after,在代码顺序上,::af…
在 CSS 中伪类一直用 : 表示,如 :hover, :active 等 伪元素在CSS1中已存在,当时语法是用 : 表示,如 :before 和 :after 后来在CSS3中修订,伪元素用 :: 表示,如 ::before 和 ::after,以此区分伪元素和伪类 由于低版本IE对双冒号不兼容,开发者为了兼容性各浏览器,继续使使用 :after 这种老语法表示伪元素 综上所述:::before 是 CSS3 中写伪元素的新语法: :after 是 CSS1 中存在的.兼容IE的老语法…