【问题标题】:I am getting string errors我收到字符串错误
【发布时间】:2015-05-08 16:06:26
【问题描述】:

从这里更改我的字符串后:

String osver = System.getProperty("os.name");
  if (osver.contains("Mac")){
     String app = wd + "/relap5.x\"";
    } else if (osver.contains("Windows")){
     String app = "relap5.exe";
    } else if (osver.contains("linux")) {
     String app = "/relap5.x";
    }

到这里:

String[] osver = {System.getProperty("os.name")};
  if (osver.contains("Mac")){
     String[] app = {wd + "/relap5.x\""};
    } else if (osver.contains("Windows")){
     String[] app = {"relap5.exe"};
    } else if (osver.contains("linux")) {
     String[] app = {"/relap5.x"};
    }

我遇到了错误。

Cannot find symbol
symbol: method contains(String)
Location variable osver of type string[]

【问题讨论】:

  • 使用List<String> 而不是String[]
  • 你到底想做什么?
  • 是否要检查是否相等?

标签: java string


【解决方案1】:

您不能对数组进行包含。 您也可以这样做:

List<String> osver = Arrays.asList(System.getProperty("os.name"));

    if (osver.contains("Mac")) {
        String[] app = { wd + "/relap5.x\"" };
    } else if (osver.contains("Windows")) {
        String[] app = { "relap5.exe" };
    } else if (osver.contains("linux")) {
        String[] app = { "/relap5.x" };
    }

【讨论】:

    【解决方案2】:

    这是因为Array 不包含方法contains。你的意思是:

        String osver = System.getProperty("os.name");
        String app;
        if (osver.equals("Mac")){
            app = "wd" + "/relap5.x\"";
        } else if (osver.equals("Windows")){
            app = "relap5.exe";
        } else if (osver.equals("linux")) {
            app = "/relap5.x";
        }
        System.out.println(app);
    

    上面的代码会检查是否相等,但是如果你想检查是否包含,那么使用:

            String osver = System.getProperty("os.name");
            String app;
            if (osver.contains("Mac")){
                app = "wd" + "/relap5.x\"";
            } else if (osver.contains("Windows")){
                app = "relap5.exe";
            } else if (osver.contains("linux")) {
                app = "/relap5.x";
            }
            System.out.println(app);
    

    【讨论】:

    • 那么String()和String[] {}有什么区别呢?
    • String 是一个字符串。 String[]是一个字符串数组。可以使用{} 初始化数组
    猜你喜欢
    • 1970-01-01
    • 2020-08-20
    • 1970-01-01
    • 2019-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-14
    • 2011-11-02
    相关资源
    最近更新 更多