import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param message string字符串
* @param keyword string字符串
* @return int整型
*/
public int findKeyword (String message, String keyword) {
// write code here
int keywordLength = keyword.length();
int messageLength = message.length();
for (int i = 0; i <= messageLength - keywordLength; i++) {
if (message.substring(i, i + keywordLength).equals(keyword)) {
return i; // 返回关键词起始位置的下标
}
}
return -1; // 关键词未出现,返回 -1
}
}
编程语言是Java。
这道题考察的主要知识点包括:
- 字符串操作:在信息字符串中查找子串。
- 循环遍历:遍历信息字符串的每个可能的起始位置。
以下是代码的解释:
- findKeyword 方法接受两个字符串参数,message 表示一串信息,keyword 表示关键词。
- 获取关键词和信息的长度。
- 使用循环从信息的开头开始,遍历信息字符串的每个可能的起始位置,不超过 messageLength - keywordLength,以避免越界。
- 在每个起始位置,使用 substring 方法截取与关键词长度相等的子串,然后与关键词进行比较。
- 如果截取的子串与关键词相等,说明找到了关键词的起始位置,返回该位置的下标。
- 如果循环结束后仍未找到关键词,返回 -1。

京公网安备 11010502036488号