Por que '$ true -eq "string"' retorna $ true? [duplicado
Esta pergunta já tem uma resposta aqui:
Por que $ false -eq “” é verdadeiro? 2 respostasNo powerShell, você compara um booleano com uma string com o operador "-eq"; ele sempre retornará o mesmo booleano que eu costumava compara
Por exemplo
$shouldBeFalse = $true -eq "hello"
$shouldBeTrue = $false -eq "hello"
A variável $ shouldBeFalse é $ true. A variável $ shouldBeTrue é $ false.
Eu tive que usar o método "Equals":
$shouldBeFalse = $true.Equals("hello")
Nesse caso, $ shouldBeFalse é $ false.
Mas por que retorna o operador -eq com esse tipo de resultado boolean