为什么"1" -eq 1这个表达式在powershell中会成为现实呢?第一个是字符串型,第二个是整数型,为什么它把它们当作等号。
发布于 2022-03-20 04:15:23
这称为隐式类型转换。
在需要不同类型的上下文中使用一个类型的值时,Powershell将自动执行类型转换。
当在需要不同类型的上下文中使用一个类型的值时,将执行类型转换。如果这种转换自动发生,则称为隐式转换。(这方面的一个常见例子是,一些操作符需要转换其操作数指定的一个或多个值。)隐式转换是允许的,只要源值的意义被保留,例如在转换时不丢失一个数字的精度。
除了官方文档之外,这里还有mklement0提供的一个很好的答案,还有一些其他的例子和参考:PowerShell隐式转换-会发生吗?安全吗?
https://stackoverflow.com/questions/71543902
复制相似问题