Csak akkor olvass tovább, ha a Hányszor van benne az adott String feladatot megoldottad, vagy nem sikerült megoldani.
Lássuk akkor a feladatok megoldásait. Az egyes változatok teljesen eltérő megközelítést alkalmaznak.
1. változat
String hol = "KKNDDKDKKNKDEDNNENNNNNEKNEEEDKNK"+
"EEEDKDDNDKDEKEDKNKKDEENKEKKDKEND"+
"KNNDDDKNDNDDDNEKNEDENDEEDKDDDNDN"+
"NEDEKNENNEEKDEKKDKKEEEDKDNNKKDNN"+
"NEDEKKNEEENKKKDEKDKKKN";
String mit = "KKN";
int db = 0;
for( int i = 0; i < hol.length()-2; i++ )
{
if( hol.substring(i,i+3).equals(mit) )
{
db++;
}
}
System.out.println( db );
2. változat
String hol = "KKNDDKDKKNKDEDNNENNNNNEKNEEEDKNK"+
"EEEDKDDNDKDEKEDKNKKDEENKEKKDKEND"+
"KNNDDDKNDNDDDNEKNEDENDEEDKDDDNDN"+
"NEDEKNENNEEKDEKKDKKEEEDKDNNKKDNN"+
"NEDEKKNEEENKKKDEKDKKKN";
String mit = "KKN";
int db = 0;
boolean van = hol.contains( mit );
while( van )
{
db++;
hol = hol.replaceFirst( mit, "" );
van = hol.contains( mit );
}
System.out.println( db );
3. változat (ehhez már gondolkodni sem árt)
String hol = "KKNDDKDKKNKDEDNNENNNNNEKNEEEDKNK"+
"EEEDKDDNDKDEKEDKNKKDEENKEKKDKEND"+
"KNNDDDKNDNDDDNEKNEDENDEEDKDDDNDN"+
"NEDEKNENNEEKDEKKDKKEEEDKDNNKKDNN"+
"NEDEKKNEEENKKKDEKDKKKN";
String mit = "KKN";
// csak rövidítés miatt, hogy elférjen egy sorba a kód
int db = (hol.length() - hol.replaceAll( mit, "" ).length()) / mit.length();
System.out.println( db );
4. változat (ehhez meg jól kell ismerni a Stringeket)
String hol = "KKNDDKDKKNKDEDNNENNNNNEKNEEEDKNK"+
"EEEDKDDNDKDEKEDKNKKDEENKEKKDKEND"+
"KNNDDDKNDNDDDNEKNEDENDEEDKDDDNDN"+
"NEDEKNENNEEKDEKKDKKEEEDKDNNKKDNN"+
"NEDEKKNEEENKKKDEKDKKKN";
String mit = "KKN";
System.out.println( hol.split( mit, -1 ).length-1 );
