例如,我会从用户那里获得一个未指定数量的字符的输入并将它们添加到字符串中,然后我使用if input1.toLowerCase().startsWith(input2.toLowerCase()))
来检测两个字符串的第一部分是否相同。在这种情况下,input1
和input2
都是使用扫描仪拾取的字符串。
如何打印每个字符串的相同部分?
例如,如果我输入"您好我的名字是" input1
和"嗨我的名字"对于input2
,它应输出"嗨我的名字"
编辑:为了澄清,我将字符串转换为小写,然后尝试将这两个字符串与startsWith
大小写进行比较,这个问题并不重要
答案 0 :(得分:2)
要从两个字符串中找到最大的起始字符串,您需要分别测试每个字符:
int i;
for (i = 0; i < str1.length() && i < str2.length() && str1.charAt(i) == str2.charAt(i); i++);
String common = str1.substring(0, i);
答案 1 :(得分:0)
你的逻辑应该以这种方式流动:
尝试自己创建此代码 - 这是学习编码的最佳方式:反复试验!请记住,这是软件编程 - 当遇到Java编译器错误时,什么都不会爆炸。