如果version1 > version2 返回1,如果 version1 < version2 返回-1,不然返回0.
输入的version字符串非空,只包含数字和字符.。.字符不代表通常意义上的小数点,只是用来区分数字序列。例如字符串2.5并不代表二点五,只是代表版本是第一级版本号是2,第二级版本号是5.
如果version1 > version2 返回1,如果 version1 < version2 返回-1,不然返回0.
输入的version字符串非空,只包含数字和字符.。.字符不代表通常意义上的小数点,只是用来区分数字序列。例如字符串2.5并不代表二点五,只是代表版本是第一级版本号是2,第二级版本号是5.
两个字符串,用空格分割。
每个字符串为一个version字符串,非空,只包含数字和字符.
只能输出1, -1,或0
0.1 1.1
-1
version1和version2的长度不超过1000,由小数点'.'分隔的每个数字不超过256。
import java.util.Scanner;
// 字符串: 以.分割,转数字比较大小
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String[] v1 = in.next().split("\\.");
String[] v2 = in.next().split("\\.");
int m = v1.length, n = v2.length;
int i = 0, j = 0;
while (i < m || j < n) {
int x = i < m ? Integer.parseInt(v1[i]) : 0;
int y = j < n ? Integer.parseInt(v2[j]) : 0;
i++;
j++;
if (x == y) continue;
System.out.println(x > y ? 1 : -1);
return;
}
System.out.println(0);
}
} import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input1 = in.next();
String input2 = in.next();
if (input1.equals(input2)) {
System.out.println(0);
return;
}
String[] v1 = input1.split("\\.");
String[] v2 = input2.split("\\.");
int len1 = v1.length;
int len2 = v2.length;
for (int i = 0; i < Math.min(len1, len2); i++) {
if (Integer.parseInt(v1[i]) < Integer.parseInt(v2[i])) {
System.out.println(-1);
return;
} else if (Integer.parseInt(v1[i]) > Integer.parseInt(v2[i])) {
System.out.println(1);
return;
}
}
//可能一个版本号是另一个版本的子串,也有可能完全相同
if (len1 < len2) {
System.out.println(-1);
return;
} else if (len1 > len2) {
System.out.println(1);
return;
} else {
System.out.println(0);
return;
}
}
} /*
不仅要考虑字符串长度相同还要考虑不同的时候
*/
import java.io.*;
public class Main{
public static void main( String[] args ) throws IOException{
BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );
String[] inarr = br.readLine().split( " " );
String[] str1 = inarr[0].split("\\.");
String[] str2 = inarr[1].split("\\.");
//先直接进行比较,看看谁的版本高
for( int i=0; i<str1.length && i<str2.length; i++ ){
if( Integer.parseInt( str1[i] ) < Integer.parseInt( str2[i] ) ){
System.out.println( "-1" );
return;
}
else if( Integer.parseInt( str1[i] ) > Integer.parseInt( str2[i]) ){
System.out.println( "1" );
return;
}
}
//当前面的比较没有成功,有如下情况
//长度相同时版本一致,
//一长一短,并且短的部分与长的前面相同
if( str1.length == str2.length ){
System.out.println( "0" );
}
else if( str1.length < str2.length ){
System.out.println( "-1" );
}
else{
System.out.println( "1" );
}
return;
}
} import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] v1 = sc.next().split("\\.");
String[] v2 = sc.next().split("\\.");
int len = Math.max(v1.length, v2.length);
int[] num1 = new int[len];
int[] num2 = new int[len];
for (int i = 0; i < v1.length; i++) {
num1[i] = Integer.parseInt(v1[i]);
}
for (int i = 0; i < v2.length; i++) {
num2[i] = Integer.parseInt(v2[i]);
}
int index = 0;
while (index < len) {
if (num1[index] < num2[index]) {
System.out.println(-1);
return;
} else if (num1[index] > num2[index]) {
System.out.println(1);
return;
} else {
index++;
}
}
System.out.println(0);
}
}