Упражнения на Java: получить первое вхождение строки в заданной строке
Java Basic: упражнение 118 с решением
Напишите программу на Java, чтобы получить первое вхождение (позиция начинается с 0.) строки в данной строке.
Иллюстрированная презентация:
Пример решения:
Java-код:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String s ="Python";
//String t ="Py";
String t ="yt";
// String t ="ab";
System.out.printf(String.valueOf(strStr(s, t)));
}
public static int strStr(String source, String target) {
if (source == null || target == null) {
return -1;
}
if ("".equals(target) || source.equals(target)) {
return 0;
}
int i = 0;
int last = source.length() - target.length() + 1;
while (i < last) {
if (source.charAt(i) == target.charAt(0)) {
boolean equal = true;
for (int j = 0; j < target.length() && equal; ++j) {
if (source.charAt(i + j) != target.charAt(j)) {
equal = false;
}
}
if (equal) {
return i;
}
}
++i;
}
return -1;
}
}
Пример вывода:
1
Блок - схема:
Редактор кода Java:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите Java-программу для вычисления квадратного корня заданного целого числа.
Далее: написать программу на Java, чтобы получить первое вхождение (позиция начинается с 0.) элемента данного массива
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code