蓝桥杯试题 算法训练 比较字符串

试题 算法训练 比较字符串

资源限制
时间限制:1.0s 内存限制:512.0MB
  编程实现两个字符串s1和s2的字典序比较。(保证每一个字符串不是另一个的前缀,且长度在100以内)。若s1和s2相等,输出0;若它们不相等,则指出其第一个不同字符的ASCII码的差值:如果s1>s2,则差值为正;如果s1<s2,则差值为负。
样例输入
java basic
样例输出
8

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner sc=new Scanner(System.in);
		String s1 = sc.next();
		String s2 = sc.next();
		//首先判断s1 s2 是否相等,若相等则直接输出0
		if(s1.equals(s2)) {
			System.out.println(0);
		}else {
			sum(s1,s2);
		}
		
	}
	public static void sum(String s1,String s2) {
		char [] str1 = s1.toCharArray();
		char [] str2 = s2.toCharArray();
		int n = 0;
		
		//判读 获取长度
		if(str1.length>str2.length) {
			n=str1.length;
			
		}else {
			n=str2.length;
		}
		//比较
		for(int i=0;i<n;i++) {
			if(str1[i] != str2[i]) {
				//直接将这个字符转化为int型就可以得到ascii码值
				int a = str1[i];
				int b = str2[i];
				System.out.println(a-b);
				return;
			}
		}
	}

}

将char类型直接转换为int类型就可以直接获得ascii值

猜你喜欢

转载自blog.csdn.net/weixin_44517477/article/details/105464761