【问题标题】:Initialising Java String literal giving error初始化Java字符串文字给出错误
【发布时间】:2019-01-13 12:18:23
【问题描述】:

当要初始化的代码在检查 par1 是否有值时,此 java 字符串字面量初始化给出错误。我不确定我是在做还是其他问题??

public class optionalFields {

    public static void main(String args[])
    {
        optional_func(Optional.of(true));
    }

        public static void optional_func(Optional<Boolean> par1)
    {
        if(par1.isPresent())
            String s = "test";
        System.out.println(s);
    }
 }

【问题讨论】:

  • 在简单的 if(没有块)中不允许声明

标签: java optional-parameters


【解决方案1】:

应该是:

if (par1.isPresent()) {
    String s = "test";
    System.out.println(s);
}

您不能在if 语句中声明变量,除非您将声明放在块中。此外,由于您打印的是s,所以println 语句也应该在if 语句的块内。

如果要打印s即使条件为假,应该是:

String s = null;
if (par1.isPresent())
    s = "test";
System.out.println(s);

【讨论】:

    猜你喜欢
    • 2011-03-20
    • 2015-11-26
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多