<dd id="sga4y"><optgroup id="sga4y"></optgroup></dd>
<nav id="sga4y"><code id="sga4y"></code></nav>
  • <optgroup id="sga4y"></optgroup>

    Often Misused: Boolean.getBoolean()

    ABSTRACT

    方法 Boolean.getBoolean() 常常與 Boolean.valueOf()Boolean.parseBoolean() 方法調用混淆。

    EXPLANATION

    在多數情況下,由于是用 Boolean.getBoolean() 來返回指定字符串變量表示的布爾值,因而導致 Boolean.getBoolean() 的調用使用不當。但是,正如 Javadoc Boolean.getBoolean(String) 方法所說,“當且僅當該參數表示的系統屬性存在且等于字符串 'true' 時,才會返回 true。”

    絕大多數情況下,開發人員真正希望使用的是調用 Boolean.valueOf(String)Boolean.parseBoolean(String) 方法。
    例 1:下列代碼將不會按照期望的方式運行。它會輸出 "FALSE",因為 Boolean.getBoolean(String) 不會對基元型字符串進行轉換。它只能對系統屬性進行轉換。


    ...
    String isValid = "true";
    if ( Boolean.getBoolean(isValid) ) {
    System.out.println("TRUE");
    }
    else {
    System.out.println("FALSE");
    }
    ...

    REFERENCES

    [1] Class Boolean Oracle


    Copyright 2013 Fortify Software - All rights reserved.
    (Generated from version 2013.1.1.0008 of the Fortify Secure Coding Rulepacks)
    desc.semantic.java.often_misused_boolean_getboolean

    97av