import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 比较版本号 * @param version1 string字符串 * @param version2 string字符串 * @return int整型 */ public int compare (String version1, String version2) { // String[] st1=version1.split("\\."); // String[] st2=version2.split("\\."); // int[] arr1=new int[st1.length]; // int[] arr2=new int[st2.length]; // int k1=0; // int k2=0; // for(String s1 : st1){ // arr1[k1++]=Integer.valueOf(s1).intValue(); // } // for(String s2 : st2){ // arr2[k2++]=Integer.valueOf(s2).intValue(); // } // int len= arr1.length<arr2.length ? arr1.length :arr2.length; // for(int i=0;i<len;i++){ // if(arr1[i]<arr2[i]){ // return -1; // }else if(arr1[i]>arr2[i]){ // return 1; // } // } // if(arr1.length==len){ // for(int i=len;i<arr2.length;i++){ // if(arr2[i]!=0){ // return -1; // } // } // return 0; // }else{ // for(int i=len;i<arr1.length;i++){ // if(arr1[i]!=0){ // return 1; // } // } // return 0; // } int k1 = 0; int k2 = 0; String res1 = ""; String res2 = ""; int val1 = 0; int val2 = 0; while (k1 < version1.length() || k2 < version2.length()) { while (k1 < version1.length() && version1.charAt(k1) != '.') { res1 += version1.charAt(k1++); } if (res1 != "") val1 = Integer.valueOf(res1).intValue(); while (k2 < version2.length() && version2.charAt(k2) != '.') { res2 += version2.charAt(k2++); } if (res2 != "") val2 = Integer.valueOf(res2).intValue(); if (val1 < val2) { return -1; } if (val1 > val2) { return 1; } if (k1 == version1.length() && k2 != version2.length()) { if (val2 != 0) { return -1; } } if (k2 == version2.length() && k1 != version1.length()) { if (val1 != 0) { return 1; } } k1++; k2++; res1 = ""; res2 = ""; } return 0; } }