Men alt hvad jeg har forsøgt at lave med dem, giver uendeligt loop, så jeg har mistet modet. Det egentlige formål er, at den skal tælle kommaer, men jeg vil have noget kode, hvor den også kan lede efter en lille streng.
findes der en \"repeat\"-loop. Jeg har programmeret en smule Delphi, og der kan man skrive
repeat ...; until i>x;
altså et loop der bliver kørt en gang uanset hvad, men bliver kørt igen hvis until-betingelsen ikke er opfyldt efter at have kørt indholdet af loopet.
(jeg er newbie, og har som I kan se en masse dumme spørgsmål. Er det skik, at skulle oprette et nyt spørgsmål for hvert spørgsmål, eller er ok, hvis jeg lige skriver nogle udvidende spørgsmål som dette. Jeg kan jo godt se, at det er fedest for jer, hvis I får point for det i svarer på, men...)
public static void main( String[] argv ){ String streng1 = \"Noget pjat ssss og noget mere pjat\"; String streng2 = \"ss\"; StringTokenCounter stc = new StringTokenCounter(); System.out.println( \"\" + stc.countSubString(streng1, streng2, false) ); System.out.println( stc.countSubString(streng1, streng2, true) ); }
public int countSubString(String s1, String s2, boolean overlap) { int count = 0; if (s1 != null && s2 != null && !s2.equals(\"\")){ for ( int i = 0 ; i < s1.length()-s2.length() ; i++ ) { if (s1.substring(i, i + s2.length() ).equals(s2)){ count++; if (!overlap){ i+=(s2.length() - 1 ); } } } } return( count ); } }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.