标签:线程安全 isnan 环境 sync final 类型转换 之间 修改 函数
JS中”==”与“===”的区别
双等号==:
(1)如果两个值类型相同,再进行三个等号(===)的比较
(2)如果两个值类型不同,也有可能相等,需根据以下规则进行类型转换在比较:
1)如果一个是null,一个是undefined,那么相等
2)如果一个是字符串,一个是数值,把字符串转换成数值之后再进行比较
三等号===:
(1)如果类型不同,就一定不相等
(2)如果两个都是数值,并且是同一个值,那么相等;如果其中至少一个是NaN,那么不相等。(判断一个值是否是NaN,只能使用isNaN( ) 来判断)
(3)如果两个都是字符串,每个位置的字符都一样,那么相等,否则不相等。
(4)如果两个值都是true,或是false,那么相等
(5)如果两个值都引用同一个对象或是函数,那么相等,否则不相等
(6)如果两个值都是null,或是undefined,那么相等
final 在 java 中有什么作用?
final作为Java中的关键字可以用于三个地方。用于修饰类、类属性和类方法。
特征:凡是引用final关键字的地方皆不可修改!
(1)修饰类:表示该类不能被继承;
(2)修饰方法:表示方法不能被重写;
(3)修饰变量:表示变量只能一次赋值以后值不能被修改(常量)。
java 中操作字符串都有哪些类?它们之间有什么区别?
java中操作字符串的类,有三个类,分别是String,StringBuffer和StringBuilder.这三个类都是以char[]的形式保存的字符串.String声明的是不可变的对象,当修改对象的时候就会创建一个新的对象然后指上去;而StringBuffer和StringBuilder则可以在原对象上进行修改,不会创建新的对象。StringBuffer中的方法大部分都使用synchronized关键字修饰,所以StringBuffer是线程安全的,StringBuilder中的方法则没有,线程不安全,但是StringBuilder因为没有使用使用synchronized关键字修饰,所以性能更高,在单线程环境下我会选择使用StringBuilder,多线程环境下使用StringBuffer.
MyBatis 中 #{} 和 ${} 的区别
#{} 占位符 ${} 拼接符
#{}:select * from t_user where uid=#{uid}
${}:select * from t_user where uid= ‘${uid}‘
#{}:select * from t_user where uid= 1
${}:select * from t_user where uid= ‘1‘
@PathVariable主要是用来处理URl路径的问题,利用@PathVariable可以是实现在URL路径中实现参数的隐藏效果。
标签:线程安全 isnan 环境 sync final 类型转换 之间 修改 函数
原文地址:https://www.cnblogs.com/nlgz/p/12724592.html