[编程题]旧键盘 (20)
题目描述:
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出
肯定坏掉的那些键。
java题解:
import java.util.*;
public class Main {
public static void main(String []args) {
String f1 = "",f2 = "";
Scanner scan = new Scanner(System.in);
if(scan.hasNext()){
f1 = scan.nextLine();
}
if(scan.hasNext()){
f2 = scan.nextLine();
}
f1 = f1.toUpperCase();
f2 = f2.toUpperCase();
int len1 = 0, len2 = 0;// 变量定义遵循需要时再定义原则;
int lenf1 = f1.length();
int lenf2 = f2.length(); // 避免直接写入循环判断式中,减少重复运算
String def = "";
while(len1 < lenf1){
if(f2.charAt(len2) == f1.charAt(len1)){
len1++;
if(len2 < lenf2-1)
len2++;
}else if(def.indexOf(f1.charAt(len1)) == -1){
def += f1.charAt(len1);
len1++;
}else{
len1++;// 遇见重复字符不记录
}
}
System.out.println(def);
}
}
今日学习笔记:
String.toUpperCase();// 转变为大写;
String.indexOf(char);// 判断char字符是否存在String中,不是返回-1,是返回下标;
================================
十一月份前来考古,有段时间没学了。。。。