mgr Agnieszka Patyk, Wydział FTiMS, Politechnika Gdańska, 2007
PODSTAWOWE TYPY DANYCH I ICH METODY
Załóż nowy projekt i nazwij jego główną klasę TestTypowDanych. Od razu wykasuj z kodu komentarze.
Przetestuj w funkcji main poniższe przykłady:
Klasa: Integer
Metody: parseInt, valueOf, toString, intValue.
Przykład zamiany zawartości napisu na liczbę:
...
String napis="1765";
int liczba;
// pierwszy sposób:
liczba = Integer.parseInt(napis);
// drugi sposób:
liczba = Integer.valueOf(napis).intValue();
// trzeci sposób:
liczba = new Integer(napis).intValue();
// i na ekran:
System.out.println(liczba);
...
Klasa: String
Metody: indexOf, charAt, valueOf, length, substring, trim Przykłady:
...
String napis="przykladowy napis ";
System.out.println("badam napis: '"+napis+"'"); System.out.println("długosc napisu: "+napis.length()); System.out.println("podsłowo od drugiego do szóstego znaku: "+napis.substring(2,6)); System.out.println("znak na pozycji siódmej: "+napis.charAt(7)); System.out.println("gdzie zaczyna się podsłowo 'adowy': "+napis.indexOf("adowy")); System.out.println("przycinam spacje na końcu: '"+napis.trim()+"'");
...
Sklejanie napisu z liczbą:
...
String s1 = "abcde";
int liczba = 7;
System.out.println(s1+liczba+liczba); // wydrukuje abcde77
System.out.println(s1+(liczba+liczba)); // wydrukuje abcde14
System.out.println(liczba+liczba+s1); // wydrukuje 14abcde System.out.println((liczba+liczba)+s1); // wydrukuje 14abcde System.out.println(liczba+s1+liczba); // wydrukuje 7abcde7
...
Zamiana liczby na napis:
...
int liczba =9;
String s;
s = liczba + "";
// to nie przejdzie: s=liczba;
...
mgr Agnieszka Patyk, Wydział FTiMS, Politechnika Gdańska, 2007
Klasa: Character
Metody: isDigit, isWhitespace, isLetter, isUpperCase, isLowerCase Przykład: zliczanie różnego rodzaju znaków w napisie
...
String napis="lic2e b1a1e znak1 , CYFRY i duZE LItery"; int licznik_bialych = 0;
int licznik_cyfr = 0;
int licznik_duzych_liter = 0;
for(int i=0;i<napis.length();i++){
if( Character.isWhitespace( napis.charAt(i) ) ) licznik_bialych++; if( Character.isDigit( napis.charAt(i) ) ) licznik_cyfr++; if( Character.isUpperCase( napis.charAt(i) ) ) licznik_duzych_liter++;
}
System.out.println("badam napis: '"+napis+"'"); System.out.println("biale znaki: "+licznik_bialych); System.out.println("cyfry : "+licznik_cyfr); System.out.println("duze litery: "+licznik_duzych_liter);
...
Klasa: StringBuffer
Metody: insert, append, length, charAt
Przykład:
...
StringBuffer buf= new StringBuffer("Drink Java"); buf.insert(6,"Hot ");
buf.append(" !!!");
System.out.println(buf);
...
Więcej informacji znajduje się na stronach:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Double.html http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Character.html http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html http://java.sun.com/j2se/1.5.0/docs/api/java/lang/StringBuffer.html generalnie:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/[nazwa klasy].html