借鉴了题解并进行了一点小优化

 public String longestCommonPrefix (String[] strs) {
        // write code here
        if(strs==null || strs.length==0) return "";

        String cur=strs[0];    //将第一个字符串当作当前最长的公共前缀
        //循环遍历
        for(String str:strs){
            cur=Prefix(cur,str);
            if(cur=="") return "";   //如果遍历到公共前缀为空字符串,就直接返回
        }
        return cur;

     }

    //进行字符串之间的判断,相同进1,不相同截止至当前下标的字符串
    public String Prefix(String str1,String str2){
        int length=Math.min(str1.length(),str2.length());
        int index=0;
        while(index<length &&str1.charAt(index)==str2.charAt(index)){
            index++;
        }
        return str1.substring(0,index);
    }