Boolean.getBoolean()Vs中的System.getenv()

时间:2012-01-06 14:26:42

标签: java

Boolean.getBoolean("myvariable"); // where myvariable has been defined in the
                                  // Environment variable as Variable name:
                                  // myvariable
                                  // and Variable Value:true

以上调用为我输出false。  如果我使用

 System.getenv("myvariable") ; 

然后它输出为true

我想知道为什么Boolean.getBoolean("myvariable")无效。

2 个答案:

答案 0 :(得分:12)

System.getenv返回环境变量。这与返回 Java系统属性System.getProperty不同。

Boolean.getBoolean使用后一种调用,如记录所示:

  

当且仅当参数指定的系统属性存在且等于字符串" true"时,才返回true。 [...]系统属性可通过getProperty访问,{{1}}是由System类定义的方法。

答案 1 :(得分:3)

Boolean.getBoolean("myvariable");查找名为myvariable的系统属性,而System.getenv("myvariable");查找环境变量。虽然相似,但它们并不相同。