String currentPath=userInfo.getRoot()+userInfo.getParentPath()+userInfo.getDir()+File.separator;
currentPath=(File.separator.equals("//"))?currentPath.replaceAll("/", "\\\\"):currentPath;
请问 第二行是什么意思?

解决方案 »

  1.   

    currentPath=(File.separator.equals("//"))?currentPath.replaceAll("/", "\\\\"):currentPath;相当于:
    if(File.separator.equals("//")){
        currentPath=currentPath.replaceAll("/", "\\\\");
    }else{
        currentPath=currentPath;
    }
      

  2.   

    楼上正解:
    (File.separator.equals("//"))?currentPath.replaceAll("/", "\\\\"):currentPath;
    File.separator.equals("//")返回值是布尔型的值。
      

  3.   

    这说的对。是一种判断。成功返回currentPath.replaceAll("/", "\\\\"),失败返回currentPath
      

  4.   

    这是一个三元表达式
    就等把if...else...
    写在一行上面
    x=A>B?C:D
    如果A>B是true则返回C,否则返回D
    就等同于
    if(A>B)
    {
       x=C;
    }
    else
    {
       x=D;
    }