`args String str, Collection col, boolean b, Object[] a1, int[] a2, int i, String s2

    `verbatim
        `if expr {
            xxx
        `} else if expr {
            yyy
        `} else {
            zzz
        `}
    `

is equals to

    `verbatim
        `if(cn.bran.play.WebUtils.asBoolean(expr)){
            xxx
        `} else if(cn.bran.play.WebUtils.asBoolean(expr)){
            yyy
        `} else {
            zzz
        `}
    `

    `if str {
        Got $str
    `} else if str {
        finally got $str
    `} else {
        str is empty
    `}

    `if col {
        Got data from col: $col
    `} else {
        col is empty
    `}

    `if b {
        right
    `} else {
        wrong
    `}

    `if a1 {
        got a1: $a1
    `} else {
        a1 is empty
    `}

    `if a2{
        got a2: $a2
    `} else {
        a2 is empty
    `}

    `if i{
        got i: $i
    `} else {
        i == 0
    `}

    `if s2 {
        got s2: $s2
    `} else {
        s2 is empty
    `}

    try the negation
    `String ss = str;
    `if ! ss
        ss is empty
    `else if !ss
        again...
    `else
        ss has something
    `