Class Mjonot


  • public class Mjonot
    extends java.lang.Object
    Joukko merkkijonoaliohjelmia Ohjelmointi 2-kurssin käyttöön
    Since:
    1.5
    Version:
    1.0, 07.01.2003, 1.1, 09.03.2002, 1.2, 30.09.2007 / vl, testi, 1.3, 12.08.2008 / vl, StringBuilder
    Author:
    Vesa Lappalainen
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static char DESIMAALI
      Käytetty desimaalisymboli
      static java.lang.String DOUBLEMERKIT
      Tunnetut reaaliluvun merkit
      static char ETUMERKKI
      Käytetty desimaalisymboli
      static java.lang.String INTMERKIT
      Tunnetut kokonaisluvun merkit
      static java.lang.String NUMEROT
      Tunnetut numeromerkit
    • Constructor Summary

      Constructors 
      Constructor Description
      Mjonot()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String erota​(java.lang.StringBuffer jono)
      Erottaa jonosta välilyönnin kohdalta alkuosan ja loppuosan.
      static java.lang.String erota​(java.lang.StringBuffer jono, char merkki)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static java.lang.String erota​(java.lang.StringBuffer jono, char merkki, boolean etsitakaperin)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static double erota​(java.lang.StringBuffer jono, char merkki, double oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun
      static int erota​(java.lang.StringBuffer jono, char merkki, int oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
      static java.lang.String erota​(java.lang.StringBuffer jono, char merkki, java.lang.String oletus)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static java.lang.String erota​(java.lang.StringBuilder jono)
      Erottaa jonosta välilyönnin kohdalta alkuosan ja loppuosan.
      static java.lang.String erota​(java.lang.StringBuilder jono, char merkki)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static java.lang.String erota​(java.lang.StringBuilder jono, char merkki, boolean etsitakaperin)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static double erota​(java.lang.StringBuilder jono, char merkki, double oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun
      static int erota​(java.lang.StringBuilder jono, char merkki, int oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
      static java.lang.String erota​(java.lang.StringBuilder jono, char merkki, java.lang.String oletus)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static char erotaChar​(java.lang.StringBuffer jono, char oletus)
      Ottaa merkkijonosta seuraavan merkin
      static char erotaChar​(java.lang.StringBuilder jono, char oletus)
      Ottaa merkkijonosta seuraavan merkin
      static double erotaDouble​(java.lang.StringBuffer jono, double oletus)
      Erottaa merkkijonosta seuraavan reaaliluvun.
      static double erotaDouble​(java.lang.StringBuffer jono, double oletus, java.lang.String numerot)
      Erottaa merkkijonosta seuraavan reaaliluvun.
      static double erotaDouble​(java.lang.StringBuilder jono, double oletus)
      Erottaa merkkijonosta seuraavan reaaliluvun.
      static double erotaDouble​(java.lang.StringBuilder jono, double oletus, java.lang.String numerot)
      Erottaa merkkijonosta seuraavan reaaliluvun.
      static double erotaDouble​(java.lang.String jono, double oletus)
      Erottaa merkkijonosta seuraavan reaaliluvun.
      static double erotaEx​(java.lang.StringBuffer jono, char merkki, double oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun.
      static int erotaEx​(java.lang.StringBuffer jono, char merkki, int oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
      static java.lang.String erotaEx​(java.lang.StringBuffer jono, char merkki, java.lang.String oletus)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static double erotaEx​(java.lang.StringBuilder jono, char merkki, double oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun.
      static int erotaEx​(java.lang.StringBuilder jono, char merkki, int oletus)
      Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
      static java.lang.String erotaEx​(java.lang.StringBuilder jono, char merkki, java.lang.String oletus)
      Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
      static int erotaInt​(java.lang.StringBuffer jono, int oletus)
      Ottaa merkkijonosta seuraavan kokonaisluvun
      static int erotaInt​(java.lang.StringBuffer jono, int oletus, java.lang.String numerot)
      Ottaa merkkijonosta seuraavan kokonaisluvun
      static int erotaInt​(java.lang.StringBuilder jono, int oletus)
      Ottaa merkkijonosta seuraavan kokonaisluvun
      static int erotaInt​(java.lang.StringBuilder jono, int oletus, java.lang.String numerot)
      Ottaa merkkijonosta seuraavan kokonaisluvun
      static int erotaInt​(java.lang.String jono, int oletus)
      Ottaa merkkijonosta seuraavan kokonaisluvun
      static java.lang.String fmt​(double d, int len, int desim)
      Muotoilee reaaliluvun len kokoiseen tilaan.
      static java.lang.String fmt​(int n, int len)
      Muotoilee kokonaisluvun len kokoiseen tilaan.
      static java.lang.String fmt​(int n, int len, char fillch)
      Muotoilee kokonaisluvun len kokoiseen tilaan.
      static java.lang.String fmt​(java.lang.StringBuffer s, int len)
      Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
      static java.lang.String fmt​(java.lang.StringBuilder s, int len)
      Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
      static java.lang.String fmt​(java.lang.String s, int len)
      Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
      static java.lang.String fmt​(java.lang.String s, int len, char fillch)
      Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
      static java.lang.String poista_2_tyhjat​(java.lang.String s)
      Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
      static java.lang.StringBuffer poista_2_tyhjat​(java.lang.StringBuffer s)
      Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
      static java.lang.StringBuilder poista_2_tyhjat​(java.lang.StringBuilder s)
      Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
      static java.lang.String tayta​(java.lang.String s, int n)
      Palauttaa jonon, jossa on monistettuna jono s n-kertaa
      static java.lang.String tyhja​(int n)
      Palauttaa merkkijonon jossa on n kappaletta välilyöntejä
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • tayta

        public static java.lang.String tayta​(java.lang.String s,
                                             int n)
        Palauttaa jonon, jossa on monistettuna jono s n-kertaa
         tayta("kissa",3)  => "kissakissakissa"
        Tuplataan jonon pituus joka kerta => 100 monistusta vaatii 7 kierrosta
        Parameters:
        s - monistettava jono
        n - kuinka monta kertaa monistetaan
        Returns:
        s monistettuna n kertaa
        Example:
         tayta($jono,$n) === $tulos
         
            $jono   | $n | $tulos
          -------------------------------
            "kissa" |  3 | "kissakissakissa"
            ""      | 10 | ""
            "kissa" |  0 | ""     
            "kissa" |  1 | "kissa"
            "a"     | 10 | "aaaaaaaaaa"     
         
      • tyhja

        public static java.lang.String tyhja​(int n)
        Palauttaa merkkijonon jossa on n kappaletta välilyöntejä
        Parameters:
        n - montako välilyöntiä tarvitaan
        Returns:
        jono, jossa on n kpl välilyöntejä
        Example:
         tyhja(0) === ""
         tyhja(1) === " "
         tyhja(2) === "  "
         tyhja(10) === "          ";
         tyhja(1000).length() === 1000; 
         
      • fmt

        public static java.lang.String fmt​(java.lang.String s,
                                           int len,
                                           char fillch)
        Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
         Esim:  fmt("2",3,'0')  => "002"
                fmt("2",-3,' ') => "2  "
         
        Parameters:
        s - muotoiltava jono
        len - pituus, negatiivisella vasempaan laitaan, pos. oikeaan
        fillch - merkki jolla täytetään
        Returns:
        muotoiltu jono
        Example:
           fmt("",3,' ')     === "   "  
           fmt("",3,'0')     === "000"  
           fmt("2",3,'0')    === "002"  
           fmt("2",-3,' ')   === "2  "
           fmt("1234",3,'0') === "1234" 
         
      • fmt

        public static java.lang.String fmt​(java.lang.String s,
                                           int len)
        Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
         Esim:  fmt("2",3)  => "  2"
                fmt("2",-3) => "2  "
         
        Parameters:
        s - muotoiltava jono
        len - pituus, negatiivisella vasempaan laitaan, pos. oikeaan
        Returns:
        muotoiltu jono
        Example:
           fmt("2",3)    === "  2"  
           fmt("2",-3)   === "2  "
           fmt("1234",3) === "1234" 
         
      • fmt

        public static java.lang.String fmt​(java.lang.StringBuffer s,
                                           int len)
        Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
        Parameters:
        s - muotoiltava jono
        len - pituus, negatiivisella vasempaan laitaan, pos. oikeaan
        Returns:
        muotoiltu jono
        See Also:
        fmt(String s,int len)
        Example:
           fmt(new StringBuffer("12"),3) === " 12"
         
      • fmt

        public static java.lang.String fmt​(java.lang.StringBuilder s,
                                           int len)
        Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
        Parameters:
        s - muotoiltava jono
        len - pituus, negatiivisella vasempaan laitaan, pos. oikeaan
        Returns:
        muotoiltu jono
        See Also:
        fmt(String s,int len)
        Example:
           fmt(new StringBuilder("12"),3) === " 12"
         
      • fmt

        public static java.lang.String fmt​(int n,
                                           int len)
        Muotoilee kokonaisluvun len kokoiseen tilaan.
        fmt(12,4) => "  12";  fmt(12,-4) => "12  "
        Parameters:
        n - muotoiltava luku
        len - tulosjonon vähimmäispituus
        Returns:
        merkkijonoksi muotoiltu luku
        See Also:
        fmt(String s,int len)
        Example:
           fmt(2,3)    === "  2"  
           fmt(2,-3)   === "2  "
           fmt(1234,3) === "1234" 
         
      • fmt

        public static java.lang.String fmt​(int n,
                                           int len,
                                           char fillch)
        Muotoilee kokonaisluvun len kokoiseen tilaan.
        fmt(12,4,'0') => "0012";  fmt(12,-4,' ') => "12  "
        Parameters:
        n - muotoiltava luku
        len - tulosjonon vähimmäispituus
        fillch - merkki jolla täytetään
        Returns:
        merkkijonoksi muotoiltu luku
        See Also:
        fmt(String s,int len)
        Example:
           fmt(2,3,'0')    === "002"  
           fmt(2,-3,'0')   === "200"
           fmt(2,-3,' ')   === "2  "
           fmt(1234,3,'0') === "1234"
           fmt(12,4,'0')   === "0012"  
           fmt(12,-4,' ')  === "12  " 
         
      • fmt

        public static java.lang.String fmt​(double d,
                                           int len,
                                           int desim)
        Muotoilee reaaliluvun len kokoiseen tilaan.
        fmt(12.3,6,2) => " 12.30";  fmt(12.3,-6,2) => "12.30 "
        Parameters:
        d - muotoiltava luku
        len - tulosjonon vähimmäispituus
        desim - desimaalien lukumäärä tulosjonossa
        Returns:
        merkkijonoksi muotoiltu luku
        See Also:
        fmt(String s,int len)
        Example:
           fmt(12.3,6,2)  === " 12.30"  
           fmt(12.3,-6,2) === "12.30 "
           fmt(2.0,-6,2)  === "2.00  "
           fmt(1234,6,0)  === "  1234"
           fmt(12,-4,0)   === "12  " 
           fmt(12.1,-4,0) === "12  " 
         
      • poista_2_tyhjat

        public static java.lang.StringBuffer poista_2_tyhjat​(java.lang.StringBuffer s)
        Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
         jono = "   kissa     istuu   "; 
         poista_2_tyhjat(jono)  => jono = " kissa istuu ";
         
        Parameters:
        s - jono josta tyhjät poistetaan
        Returns:
        viite jonoon josta poistettu
        Example:
           StringBuffer sb = new StringBuffer("   kissa     istuu   ");
           poista_2_tyhjat(sb).toString() === " kissa istuu ";
           poista_2_tyhjat((StringBuffer)null).toString() === "";
         
      • poista_2_tyhjat

        public static java.lang.StringBuilder poista_2_tyhjat​(java.lang.StringBuilder s)
        Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
         jono = "   kissa     istuu   "; 
         poista_2_tyhjat(jono)  => jono = " kissa istuu ";
         
        Parameters:
        s - jono josta tyhjät poistetaan
        Returns:
        viite jonoon josta poistettu
        Example:
           StringBuilder sb = new StringBuilder("   kissa     istuu   ");
           poista_2_tyhjat(sb).toString() === " kissa istuu ";
           poista_2_tyhjat((StringBuilder)null).toString() === "";
         
      • poista_2_tyhjat

        public static java.lang.String poista_2_tyhjat​(java.lang.String s)
        Poistetaan jonosta kaikki kaksin- tai useampikertaiset tyhjät.
         jono = poista_2_tyhjat("   kissa     istuu   ")  => jono = " kissa istuu ";
         
        Parameters:
        s - jono josta tyhjät poistetaan
        Returns:
        viite uusi jono josta tyhjät poistettu
        Example:
         poista_2_tyhjat("   kissa     istuu   ") === " kissa istuu "  
         poista_2_tyhjat("") === ""  
         poista_2_tyhjat("   ") === " "  
         poista_2_tyhjat((String)null) === "";
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuffer jono,
                                             char merkki,
                                             boolean etsitakaperin)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Alkuosa palautetaan funktion nimessä ja loppuosa jätetään jonoon. Merkin etsimissuunta voidaan valita (oletuksena alusta päin). Jos merkkiä ei löydy, palautetaan koko jono ja tyhjennetään jono.
         Käyttöesimerkki: olkoon aluksi string jono,s;
          1)  jono = "123 456";  s = erota(jono);   => jono == "456"  s == "123"
          2)  jono = "123";      s = erota(jono);   => jono == ""     s == "123"
          3)  jono = "1 2 3";
          while ( jono.length() > 0 ) System.out.print(erota(jono)+",");
                   => tulostaa 1,2,3,
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        etsitakaperin - etsitäänkö merkki oikealta vasemmalle
        Returns:
        merkkiä edeltävä jono
        Example:
           StringBuffer jono= new StringBuffer("123 456"); String s;
           s = erota(jono); jono.toString() === "456"; s === "123";
         
           jono = new StringBuffer($jono1); 
           s = erota(jono,$merkki,$suunta);
           jono.toString() === $jono2; 
           s === $s;
           
           $jono1     | $merkki | $suunta | $jono2   | $s
           ---------------------------------------------------
           "123"      | ' '     | false   | ""       | "123"
           ---        | ' '     | false   | ""       | ""
           ---        | ' '     | false   | ""       | ""
           "123 456"  | ' '     | false   | "456"    | "123"
           ---        | ' '     | false   | ""       | "456"
           ---        | ' '     | false   | ""       | ""
           "12 34 6"  | ' '     | false   | "34 6"   | "12"   
           ---        | ' '     | false   | "6"      | "34"
           ---        | ' '     | false   | ""       | "6"
           ---        | ' '     | false   | ""       | ""
           "12 34 6"  | ' '     | true    | "6"      | "12 34"
           ---        | ' '     | true    | ""       | "6"
           ---        | ' '     | true    | ""       | ""
         
           erota((StringBuffer)null,' ',false) === "";
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuilder jono,
                                             char merkki,
                                             boolean etsitakaperin)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Alkuosa palautetaan funktion nimessä ja loppuosa jätetään jonoon. Merkin etsimissuunta voidaan valita (oletuksena alusta päin). Jos merkkiä ei löydy, palautetaan koko jono ja tyhjennetään jono.
         Käyttöesimerkki: olkoon aluksi string jono,s;
          1)  jono = "123 456";  s = erota(jono);   => jono == "456"  s == "123"
          2)  jono = "123";      s = erota(jono);   => jono == ""     s == "123"
          3)  jono = "1 2 3";
          while ( jono.length() > 0 ) System.out.print(erota(jono)+",");
                   => tulostaa 1,2,3,
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        etsitakaperin - etsitäänkö merkki oikealta vasemmalle
        Returns:
        merkkiä edeltävä jono
        Example:
           StringBuilder jono= new StringBuilder("123 456"); String s;
           s = erota(jono); jono.toString() === "456"; s === "123";
         
           jono = new StringBuilder($jono1); 
           s = erota(jono,$merkki,$suunta);
           jono.toString() === $jono2; s === $s
           
           $jono1     | $merkki | $suunta | $jono2   | $s
           ---------------------------------------------------
           "123"      | ' '     | false   | ""       | "123"
           ---        | ' '     | false   | ""       | ""
           ---        | ' '     | false   | ""       | ""
           "123 456"  | ' '     | false   | "456"    | "123"
           ---        | ' '     | false   | ""       | "456"
           ---        | ' '     | false   | ""       | ""
           "12 34 6"  | ' '     | false   | "34 6"   | "12"   
           ---        | ' '     | false   | "6"      | "34"
           ---        | ' '     | false   | ""       | "6"
           ---        | ' '     | false   | ""       | ""
           "12 34 6"  | ' '     | true    | "6"      | "12 34"
           ---        | ' '     | true    | ""       | "6"
           ---        | ' '     | true    | ""       | ""
         
           erota((StringBuilder)null,' ',false) === "";
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuffer jono,
                                             char merkki)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        Returns:
        merkkiä edeltävä jono
        Example:
           StringBuffer jono= new StringBuffer("123 456"); String s;
           s = erota(jono,' '); jono.toString() === "456"; s === "123";
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuffer jono)
        Erottaa jonosta välilyönnin kohdalta alkuosan ja loppuosan.
        Parameters:
        jono - jono jota pilkotaan
        Returns:
        merkkiä edeltävä jono
      • erota

        public static java.lang.String erota​(java.lang.StringBuilder jono,
                                             char merkki)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan.
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        Returns:
        merkkiä edeltävä jono
        Example:
           StringBuilder jono= new StringBuilder("123 456"); String s;
           s = erota(jono,' '); jono.toString() === "456"; s === "123";
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuilder jono)
        Erottaa jonosta välilyönnin kohdalta alkuosan ja loppuosan.
        Parameters:
        jono - jono jota pilkotaan
        Returns:
        merkkiä edeltävä jono
      • erotaDouble

        public static double erotaDouble​(java.lang.StringBuffer jono,
                                         double oletus,
                                         java.lang.String numerot)
        Erottaa merkkijonosta seuraavan reaaliluvun. Jos lukua ei voida erottaa niin palautetaan oletus
         jono = " 12.34 km"; d = erotaDouble(jono,0);  => d = 12.34  jono = " km"
         jono = "12k34 km"; d = erotaDouble(jono,0);  => d = 12  jono = "k34 km"
         jono = "k12.34 km"; d = erotaDouble(jono,0); => d = 0  jono = "k12.34 km"
         
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        numerot - aluksi sallitut numerot
        Returns:
        otettu reaaliluku
        Example:
           StringBuffer jono;
           jono = new StringBuffer($jono1); erotaDouble(jono,0) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d   | $jono2
          ----------------------------------
          " 12.34 km" | 12.34 | " km" 
          "12k34 km"  | 12    | "k34 km"
          "k12.34 km" | 0     | "k12.34 km"
          "1.2 3.4"   | 1.2   | " 3.4"
           ---        | 3.4   | ""
          "-1.2 -3.4" | -1.2  | " -3.4"
           ---        | -3.4  | ""
          "-1-2 -3.4" | -1    | "-2 -3.4"
           ---        | -2    | " -3.4"
          ".2"        | 0.2   | ""
          "-.2"       | -0.2  | ""
          ".-2"       | 0.0   | "-2"
          "- 2"       | 0.0   | " 2"
          ""          | 0     | ""
        
           jono = new StringBuffer("2112233451232"); 
           erotaDouble(jono,0,"123") ~~~ 2112233.0; 
           erotaDouble(jono,0,null) ~~~ 451232.0; 
           erotaDouble((StringBuffer)null,0,null) ~~~ 0.0; 
           
         
      • erotaDouble

        public static double erotaDouble​(java.lang.StringBuilder jono,
                                         double oletus,
                                         java.lang.String numerot)
        Erottaa merkkijonosta seuraavan reaaliluvun. Jos lukua ei voida erottaa niin palautetaan oletus
         jono = " 12.34 km"; d = erotaDouble(jono,0);  => d = 12.34  jono = " km"
         jono = "12k34 km"; d = erotaDouble(jono,0);  => d = 12  jono = "k34 km"
         jono = "k12.34 km"; d = erotaDouble(jono,0); => d = 0  jono = "k12.34 km"
         
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        numerot - aluksi sallitut numerot
        Returns:
        otettu reaaliluku
        Example:
           StringBuilder jono;
           jono = new StringBuilder($jono1); erotaDouble(jono,0) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d   | $jono2
          ----------------------------------
          " 12.34 km" | 12.34 | " km" 
          "12k34 km"  | 12    | "k34 km"
          "k12.34 km" | 0     | "k12.34 km"
          "1.2 3.4"   | 1.2   | " 3.4"
           ---        | 3.4   | ""
          "-1.2 -3.4" | -1.2  | " -3.4"
           ---        | -3.4  | ""
          "-1-2 -3.4" | -1    | "-2 -3.4"
           ---        | -2    | " -3.4"
          ".2"        | 0.2   | ""
          "-.2"       | -0.2  | ""
          ".-2"       | 0.0   | "-2"
          "- 2"       | 0.0   | " 2"
          ""          | 0     | ""
        
           jono = new StringBuilder("2112233451232"); 
           erotaDouble(jono,0,"123") ~~~ 2112233.0; 
           erotaDouble(jono,0,null) ~~~ 451232.0; 
           erotaDouble((StringBuilder)null,0,"123") ~~~ 0.0; 
           
         
      • erotaDouble

        public static double erotaDouble​(java.lang.StringBuffer jono,
                                         double oletus)
        Erottaa merkkijonosta seuraavan reaaliluvun. Jos lukua ei voida erottaa niin palautetaan oletus
         jono = " 12.34 km"; d = erotaDouble(jono,0);  => d = 12.34  jono = " km"
         jono = "12k34 km"; d = erotaDouble(jono,0);  => d = 12  jono = "k34 km"
         jono = "k12.34 km"; d = erotaDouble(jono,0); => d = 0  jono = "k12.34 km"
         
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu reaaliluku
        See Also:
        erotaDouble(StringBuffer jono, double oletus, String numerot)
        Example:
           StringBuffer jono;
           jono = new StringBuffer(" 12.34 km"); erotaDouble(jono,0) ~~~ 12.34; jono.toString() === " km"; 
           jono = new StringBuffer(" 12k34 km"); erotaDouble(jono,0) ~~~ 12.00; jono.toString() === "k34 km"; 
           jono = new StringBuffer("k12.34 km"); erotaDouble(jono,0) ~~~  0.0;  jono.toString() === "k12.34 km"; 
         
      • erotaDouble

        public static double erotaDouble​(java.lang.StringBuilder jono,
                                         double oletus)
        Erottaa merkkijonosta seuraavan reaaliluvun. Jos lukua ei voida erottaa niin palautetaan oletus
         jono = " 12.34 km"; d = erotaDouble(jono,0);  => d = 12.34  jono = " km"
         jono = "12k34 km"; d = erotaDouble(jono,0);  => d = 12  jono = "k34 km"
         jono = "k12.34 km"; d = erotaDouble(jono,0); => d = 0  jono = "k12.34 km"
         
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu reaaliluku
        See Also:
        erotaDouble(StringBuilder jono, double oletus, String numerot)
        Example:
           StringBuilder jono;
           jono = new StringBuilder(" 12.34 km"); erotaDouble(jono,0) ~~~ 12.34; jono.toString() === " km"; 
           jono = new StringBuilder(" 12k34 km"); erotaDouble(jono,0) ~~~ 12.00; jono.toString() === "k34 km"; 
           jono = new StringBuilder("k12.34 km"); erotaDouble(jono,0) ~~~  0.0;  jono.toString() === "k12.34 km"; 
         
      • erotaInt

        public static int erotaInt​(java.lang.StringBuffer jono,
                                   int oletus)
        Ottaa merkkijonosta seuraavan kokonaisluvun
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu kokonaisluku
        See Also:
        erotaDouble(StringBuffer jono, double oletus)
        Example:
           StringBuffer jono;
           jono = new StringBuffer($jono1); erotaInt(jono,0) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i   | $jono2
          ----------------------------------
          " 12.34 km" | 12    | ".34 km" 
          "12k34 km"  | 12    | "k34 km"
          "k12.34 km" | 0     | "k12.34 km"
          "1.2 3.4"   | 1     | ".2 3.4"
           ---        | 0     | ".2 3.4"
          ""          | 0     | ""
          " 1 2 3 "   | 1     | " 2 3 "
          ---         | 2     | " 3 "
          ---         | 3     | " "
          ---         | 0     | ""
          " -1 -2 3 " | -1    | " -2 3 "
          ---         | -2    | " 3 "
          ---         | 3     | " "
        
           jono = new StringBuffer("2112233451232"); 
           erotaInt(jono,0,"123") === 2112233; 
         
      • erotaInt

        public static int erotaInt​(java.lang.StringBuilder jono,
                                   int oletus)
        Ottaa merkkijonosta seuraavan kokonaisluvun
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu kokonaisluku
        See Also:
        erotaDouble(StringBuffer jono, double oletus)
        Example:
           StringBuilder jono;
           jono = new StringBuilder($jono1); erotaInt(jono,0) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i   | $jono2
          ----------------------------------
          " 12.34 km" | 12    | ".34 km" 
          "12k34 km"  | 12    | "k34 km"
          "k12.34 km" | 0     | "k12.34 km"
          "1.2 3.4"   | 1     | ".2 3.4"
           ---        | 0     | ".2 3.4"
          ""          | 0     | ""
          " 1 2 3 "   | 1     | " 2 3 "
          ---         | 2     | " 3 "
          ---         | 3     | " "
          ---         | 0     | ""
          " -1 -2 3 " | -1    | " -2 3 "
          ---         | -2    | " 3 "
          ---         | 3     | " "
        
           jono = new StringBuilder("2112233451232"); 
           erotaInt(jono,0,"123") === 2112233; 
         
      • erotaInt

        public static int erotaInt​(java.lang.StringBuffer jono,
                                   int oletus,
                                   java.lang.String numerot)
        Ottaa merkkijonosta seuraavan kokonaisluvun
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        numerot - numero jotka sallitaan lukuun
        Returns:
        otettu kokonaisluku
        See Also:
        erotaDouble(StringBuffer jono, double oletus, String numerot)
        Example:
           StringBuffer jono;
           jono = new StringBuffer("211223345"); 
           erotaInt(jono,0,"123") === 2112233; 
         
      • erotaInt

        public static int erotaInt​(java.lang.StringBuilder jono,
                                   int oletus,
                                   java.lang.String numerot)
        Ottaa merkkijonosta seuraavan kokonaisluvun
        Parameters:
        jono - merkkijono josta luku otetaan, jono lyhenee
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        numerot - numero jotka sallitaan lukuun
        Returns:
        otettu kokonaisluku
        See Also:
        erotaDouble(StringBuilder jono, double oletus, String numerot)
        Example:
           StringBuilder jono;
           jono = new StringBuilder("211223345"); 
           erotaInt(jono,0,"123") === 2112233; 
         
      • erotaDouble

        public static double erotaDouble​(java.lang.String jono,
                                         double oletus)
        Erottaa merkkijonosta seuraavan reaaliluvun.
        Parameters:
        jono - merkkijono josta luku otetaan, jono ei muutu
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu reaaliluku
        See Also:
        erotaDouble(StringBuilder jono, double oletus)
        Example:
           erotaDouble(" 12.34 km",0) ~~~ 12.34;  
           erotaDouble(" 12k34 km",0) ~~~ 12.00;  
           erotaDouble("k12.34 km",0) ~~~  0.0;   
           erotaDouble((String)null,2) ~~~  2.0;   
         
      • erotaInt

        public static int erotaInt​(java.lang.String jono,
                                   int oletus)
        Ottaa merkkijonosta seuraavan kokonaisluvun
        Parameters:
        jono - merkkijono josta luku otetaan, jono ei muutu
        oletus - arvo jota käytetään jos jonossa ei ole yhtään numeroa
        Returns:
        otettu kokonaisluku
        See Also:
        erotaInt(StringBuilder jono, int oletus)
        Example:
           erotaInt(" 123k",12)  === 123; 
           erotaInt(" k123k",12) === 12;
           erotaInt((String)null,2) === 2; 
         
      • erotaChar

        public static char erotaChar​(java.lang.StringBuffer jono,
                                     char oletus)
        Ottaa merkkijonosta seuraavan merkin
        Parameters:
        jono - merkkijono josta merkki otetaan
        oletus - arvo jota käytetään jos jonossa ei ole yhtään merkkiä
        Returns:
        otettu merkki
        Example:
           StringBuffer jono;
           jono = new StringBuffer($jono1); erotaChar(jono,'!') === $c; jono.toString() === $jono2;
           
            $jono1    |  $c   | $jono2
          ----------------------------------
          " 12 "      | ' '   | "12 " 
           ---        | '1'   | "2 "
           ---        | '2'   | " "
           ---        | ' '   | ""
           ---        | '!'   | ""
            
          erotaChar((StringBuffer)null,'a') === 'a'  
         
      • erotaChar

        public static char erotaChar​(java.lang.StringBuilder jono,
                                     char oletus)
        Ottaa merkkijonosta seuraavan merkin
        Parameters:
        jono - merkkijono josta merkki otetaan
        oletus - arvo jota käytetään jos jonossa ei ole yhtään merkkiä
        Returns:
        otettu merkki
        Example:
           StringBuilder jono;
           jono = new StringBuilder($jono1); erotaChar(jono,'!') === $c; jono.toString() === $jono2;
           
            $jono1    |  $c   | $jono2
          ----------------------------------
          " 12 "      | ' '   | "12 " 
           ---        | '1'   | "2 "
           ---        | '2'   | " "
           ---        | ' '   | ""
           ---        | '!'   | ""
            
          erotaChar((StringBuilder)null,'a') === 'a'  
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuffer jono,
                                             char merkki,
                                             java.lang.String oletus)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Jono trimmataan ennen palautusta (kaikki tyhjät pois) Käyttää oletusta jos jono on tyhjä. Tehty lähinnä "kaveriksi" vastaaville int ja double funktiolle, jotta funktiopolymorfismin avulla saadaan symmetrisiä aliohjelmia jolloin kutsussa on helppo vaihtaa parametrin tyyppi
           String s = erota(jono,'|',"");
           double d = erota(jono,'|',0.0);
           s = erota(jono,'|',s);
           d = erota(jono,'|',d);
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasesta tulee tyhjä
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuffer jono, char merkki, boolean etsitakaperin)
        Example:
         // Testataan merkkijono erota-metodia
          StringBuffer jono = new StringBuffer(" Volvo    145 |  12300 e | 1 kpl");
          erota(jono,'|',"!") === "Volvo 145"; 
          erota(jono,'|',"!") === "12300 e";
          erota(jono,'|',"!") === "1 kpl";
          erota(jono,'|',"!") === "!";
          erota(jono,'|',null) === "";
        
         
      • erota

        public static java.lang.String erota​(java.lang.StringBuilder jono,
                                             char merkki,
                                             java.lang.String oletus)
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Jono trimmataan ennen palautusta (kaikki tyhjät pois) Käyttää oletusta jos jono on tyhjä. Tehty lähinnä "kaveriksi" vastaaville int ja double funktiolle, jotta funktiopolymorfismin avulla saadaan symmetrisiä aliohjelmia jolloin kutsussa on helppo vaihtaa parametrin tyyppi
           String s = erota(jono,'|',"");
           double d = erota(jono,'|',0.0);
           s = erota(jono,'|',s);
           d = erota(jono,'|',d);
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasesta tulee tyhjä
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuilder jono, char merkki, boolean etsitakaperin)
        Example:
         // Testataan merkkijono erota-metodia
          StringBuilder jono = new StringBuilder(" Volvo    145 |  12300 e | 1 kpl");
          erota(jono,'|',"!") === "Volvo 145"; 
          erota(jono,'|',"!") === "12300 e";
          erota(jono,'|',"!") === "1 kpl";
          erota(jono,'|',"!") === "!";
          erota(jono,'|',null) === "";
        
         
      • erota

        public static double erota​(java.lang.StringBuffer jono,
                                   char merkki,
                                   double oletus)
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasta ei saa reaalilukua
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuffer jono, char merkki, String oletus)
        Example:
           StringBuffer jono;
           jono = new StringBuffer("12.3,45"); erota(jono,',',9.0) ~~~ 12.3; erota(jono,',',9.0) ~~~ 45.0;
           jono = new StringBuffer("k,45");    erota(jono,',',9.0) ~~~ 9.0;  erota(jono,',',9.0) ~~~ 45.0;
         
      • erota

        public static double erota​(java.lang.StringBuilder jono,
                                   char merkki,
                                   double oletus)
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasta ei saa reaalilukua
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuilder jono, char merkki, String oletus)
        Example:
           StringBuilder jono;
           jono = new StringBuilder("12.3,45"); erota(jono,',',9.0) ~~~ 12.3; erota(jono,',',9.0) ~~~ 45.0;
           jono = new StringBuilder("k,45");    erota(jono,',',9.0) ~~~ 9.0;  erota(jono,',',9.0) ~~~ 45.0;
         
      • erota

        public static int erota​(java.lang.StringBuffer jono,
                                char merkki,
                                int oletus)
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasta ei saa reaalilukua
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuffer jono, char merkki, String oletus)
        Example:
         // Testataan polymorfista erota-metodia
          StringBuffer jono = new StringBuffer(" Volvo    145 |  12300 e | 1 kpl");
          String s=""; double d=0.0; int i=0;
          erota(jono,'|',s) === "Volvo 145"; 
          erota(jono,'|',d) ~~~ 12300.0;
          erota(jono,'|',i) === 1;
          erota(jono,'|',"a") === "a";
         
      • erota

        public static int erota​(java.lang.StringBuilder jono,
                                char merkki,
                                int oletus)
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo jota käytetään jos palasta ei saa reaalilukua
        Returns:
        merkkiä edeltävä jono
        See Also:
        erota(StringBuilder jono, char merkki, String oletus)
        Example:
         // Testataan polymorfista erota-metodia
          StringBuilder jono = new StringBuilder(" Volvo    145 |  12300 e | 1 kpl");
          String s=""; double d=0.0; int i=0;
          erota(jono,'|',s) === "Volvo 145"; 
          erota(jono,'|',d) ~~~ 12300.0;
          erota(jono,'|',i) === 1;
          erota(jono,'|',"a") === "a";
         
      • erotaEx

        public static java.lang.String erotaEx​(java.lang.StringBuffer jono,
                                               char merkki,
                                               java.lang.String oletus)
                                        throws java.lang.NumberFormatException
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Jono trimmataan ennen palautusta (kaikki tyhjät pois) Heittää poikkeuksen jos jono on tyhjä Tehty lähinnä "kaveriksi" vastaaville int ja double funktiolle, jotta funktiopolymorfismin avulla saadaan symmetrisiä aliohjelmia jolloin kutsussa on helppo vaihtaa parametrin tyyppi
           String s = null;
           double d = 0.0;
           try {
             s = erotaEx(jono,'|',s);
             d = erotaEx(jono,'|',d);
           } catch ( NumberFormatException ex ) {
             System.out.println(ex.getMessage());
           }
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo mikäli tulos olisi tyhjä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos palaa ei saada
        See Also:
        erota(StringBuffer jono, char merkki, boolean etsitakaperin)
        Example:
           StringBuffer jono;
           jono = new StringBuffer($jono1); erotaEx(jono,' ',"!") === $s; jono.toString() === $jono2
           
            $jono1    |  $s     | $jono2
          ----------------------------------
          " 12.34 km" | "!"     | "12.34 km"
          ---         | "12.34" | "km"
          ---         | "km"    | ""
          ---         | ""      | ---    #THROWS NumberFormatException
          "Kissa"     | "Kissa" | ""       
          ---         | ""      | ---    #THROWS NumberFormatException  
          
          erotaEx(new StringBuffer(";"),';',null) === "";
         
      • erotaEx

        public static java.lang.String erotaEx​(java.lang.StringBuilder jono,
                                               char merkki,
                                               java.lang.String oletus)
                                        throws java.lang.NumberFormatException
        Erottaa jonosta valitun merkin kohdalta alkuosan ja loppuosan. Jono trimmataan ennen palautusta (kaikki tyhjät pois) Heittää poikkeuksen jos jono on tyhjä Tehty lähinnä "kaveriksi" vastaaville int ja double funktiolle, jotta funktiopolymorfismin avulla saadaan symmetrisiä aliohjelmia jolloin kutsussa on helppo vaihtaa parametrin tyyppi
           String s = null;
           double d = 0.0;
           try {
             s = erotaEx(jono,'|',s);
             d = erotaEx(jono,'|',d);
           } catch ( NumberFormatException ex ) {
             System.out.println(ex.getMessage());
           }
         
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - arvo mikäli tulos olisi tyhjä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos palaa ei saada
        See Also:
        erota(StringBuilder jono, char merkki, boolean etsitakaperin)
        Example:
           StringBuilder jono;
           jono = new StringBuilder($jono1); erotaEx(jono,' ',"!") === $s; jono.toString() === $jono2;
           
            $jono1    |  $s     | $jono2
          ----------------------------------
          " 12.34 km" | "!"     | "12.34 km"
          ---         | "12.34" | "km"
          ---         | "km"    | ""
          ---         | ""      | ---     #THROWS NumberFormatException
          "Kissa"     | "Kissa" | ""       
          ---         | ""      | ---     #THROWS NumberFormatException
            
          erotaEx(new StringBuilder(";"),';',null) === "";
         
      • erotaEx

        public static double erotaEx​(java.lang.StringBuffer jono,
                                     char merkki,
                                     double oletus)
                              throws java.lang.NumberFormatException
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun.
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - tuo vain tiedon palautettavasta tyypistä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos reaalilukua ei saada
        See Also:
        erotaEx(StringBuffer jono, char merkki, String oletus)
        Example:
           StringBuffer jono=new StringBuffer(); // turha alustus jotta ei varoituksia --- kohdalla
           jono = new StringBuffer($jono1); erotaEx(jono,' ',3.14) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d     | $jono2
          ----------------------------------
          " 12.34 km" | 0.0     | ---         #THROWS NumberFormatException  
          ---         | ---     | "12.34 km"
          ---         | 12.34   | "km"
          ---         | 0.0     | ---         #THROWS NumberFormatException
          ---         | ---     | ""
          ---         | 0.0     | ---         #THROWS NumberFormatException
          
           jono = new StringBuffer($jono1); erotaEx(jono,',',3.14) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d     | $jono2
          ----------------------------------
          " 1.2, 3.4" | 1.2     | " 3.4" 
          ---         | 3.4     | ""
          ---         | 0.0     | ---         #THROWS NumberFormatException
          "1.2,k,3.4" | 1.2     | "k,3.4" 
          ---         | 0.0     | ---         #THROWS NumberFormatException
          ---         | ---     | "3.4"
          ---         | 3.4     | ""
         
      • erotaEx

        public static double erotaEx​(java.lang.StringBuilder jono,
                                     char merkki,
                                     double oletus)
                              throws java.lang.NumberFormatException
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta reaaliluvun.
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - tuo vain tiedon palautettavasta tyypistä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos reaalilukua ei saada
        See Also:
        erotaEx(StringBuilder jono, char merkki, String oletus)
        Example:
           StringBuilder jono=new StringBuilder(); // turha alustus jotta ei varoituksia --- kohdalla
           jono = new StringBuilder($jono1); erotaEx(jono,' ',3.14) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d     | $jono2
          ----------------------------------
          " 12.34 km" | 0.0     | ---        #THROWS NumberFormatException 
          ---         | ---     | "12.34 km"
          ---         | 12.34   | "km"
          ---         | 0.0     | ---        #THROWS NumberFormatException
          ---         | ---     | ""
          ---         | 0.0     | ---        #THROWS NumberFormatException
          
           jono = new StringBuilder($jono1); erotaEx(jono,',',3.14) ~~~ $d; jono.toString() === $jono2;
           
            $jono1    |  $d     | $jono2
          ----------------------------------
          " 1.2, 3.4" | 1.2     | " 3.4" 
          ---         | 3.4     | ""
          ---         | 0.0     | ---      #THROWS NumberFormatException
          "1.2,k,3.4" | 1.2     | "k,3.4" 
          ---         | 0.0     | ---      #THROWS NumberFormatException
          ---         | ---     | "3.4"
          ---         | 3.4     | ""
         
      • erotaEx

        public static int erotaEx​(java.lang.StringBuffer jono,
                                  char merkki,
                                  int oletus)
                           throws java.lang.NumberFormatException
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - tuo vain tiedon palautettavasta tyypistä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos kokonaislukua ei saada
        See Also:
        erotaEx(StringBuffer jono, char merkki, String oletus)
        Example:
           StringBuffer jono=new StringBuffer(); // turha alustus jotta ei varoituksia --- kohdalla
           jono = new StringBuffer($jono1); erotaEx(jono,' ',314) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i     | $jono2
          ----------------------------------
          " 12.34 km" | 0       | ---    #THROWS NumberFormatException 
          ---         | ---     | "12.34 km"
          ---         | 12      | "km"
          ---         | 0       | ---    #THROWS NumberFormatException
          ---         | 0       | ---    #THROWS NumberFormatException
          
           jono = new StringBuffer($jono1); erotaEx(jono,',',314) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i     | $jono2
          ----------------------------------
          " 1.2, 3.4" | 1       | " 3.4" 
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException
          "1,2,3"     | 1       | "2,3"
          ---         | 2       | "3"
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException
          "1,k,3"     | 1       | "k,3"      
          ---         | 0       | ---        #THROWS NumberFormatException 
          ---         | ---     | "3"
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException
         
      • erotaEx

        public static int erotaEx​(java.lang.StringBuilder jono,
                                  char merkki,
                                  int oletus)
                           throws java.lang.NumberFormatException
        Ottaa merkkijonosta ensin seuraavan palasen merkki-parametriin saakka ja sitten ottaa tästä palasta kokonaisluvun
        Parameters:
        jono - jono jota pilkotaan
        merkki - merkki jonka kohdalta katkaistaan
        oletus - tuo vain tiedon palautettavasta tyypistä
        Returns:
        merkkiä edeltävä jono
        Throws:
        java.lang.NumberFormatException - jos kokonaislukua ei saada
        See Also:
        erotaEx(StringBuilder jono, char merkki, String oletus)
        Example:
           StringBuilder jono=new StringBuilder(); // turha alustus jotta ei varoituksia --- kohdalla
           jono = new StringBuilder($jono1); erotaEx(jono,' ',314) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i     | $jono2
          ----------------------------------
          " 12.34 km" | 0       | ---        #THROWS NumberFormatException 
          ---         | ---     | "12.34 km"
          ---         | 12      | "km"
          ---         | 0       | ---        #THROWS NumberFormatException
          ---         | 0       | ---        #THROWS NumberFormatException
          
           jono = new StringBuilder($jono1); erotaEx(jono,',',314) === $i; jono.toString() === $jono2;
           
            $jono1    |  $i     | $jono2
          ----------------------------------
          " 1.2, 3.4" | 1       | " 3.4" 
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException
          "1,2,3"     | 1       | "2,3"
          ---         | 2       | "3"
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException
          "1,k,3"     | 1       | "k,3"      
          ---         | 0       | ---        #THROWS NumberFormatException 
          ---         | ---     | "3"
          ---         | 3       | ""
          ---         | 0       | ---        #THROWS NumberFormatException