Razred Object. tostring() String

Velikost: px
Začni prikazovanje s strani:

Download "Razred Object. tostring() String"

Transkripcija

1 Razred Object Razred Object (paket java.lang) je razred iz katerega so (neposredno ali posredno) izpeljani vsi drugi razredi. vsak razred v Javi (razen Object) je podrazred; če razred ni deklariran kot razširitev nekega nadrazreda, se privzame, da je razširitev razreda Object. Določilo in tip String boolean Metoda in opis tostring() Pretvori vsebino objekta v niz tipa String, ki vsebuje ime razreda, kateremu pripada objekt in pomnilniški naslov, kjer je objekt shranjen v pomnilniku, Metodo tostring pri objektih redefiniramo, da vrne vrednosti vseh atributov v obliki niza (ta niz uporabljamo za public String tostring() { String lastnostibesedilo = "[ime=" + this.ime + ", priimek=" + this.priimek + ", spol=" + this.spol + ", datum rojstva= " + this.datumrojstva.format(oblikadatuma) + "]"; return lastnostibesedilo; } equals(object obj) Preveri če imata dva objekta enak pomnilniški naslov (ni primerjava vsebine public boolean equals (Osebe oseba) { return this.priimek.equals(oseba.priimek); }

2 Razred Object Določilo in tip Class<?> int protected Object protected Metoda in opis getclass() Vrne objekt tipa Class, ki je bil uporabljen za ustvarjanje primerka objekta. hashcode() Izračuna hash kodo (namen shranjevanja objektov v razpršenih tabelah). clone() Ustvari in vrne kopijo objekta. finalize() Metodo izvrši garbage collector ob uničenju objekta (ko ne obstajaja več nobena referenca na objekt). notify() Posamezno nit predmeta določi za aktivno. notifyall() Vse niti predmeta določi za aktivne. wait() Trenutna nit čaka dokler druga nit ne izvrši metode notify() ali notifyall() tega objekta. wait(long timeout) Trenutna nit čaka dokler druga nit ne izvrši metode notify() ali notifyall() ali dokler ne poteče določen časovni interval (parameter timeout). wait(long timeout, int nanos) Trenutna nit čaka dokler druga nit ne izvrši metode notify() ali notifyall() ali dokler ne poteče določen časovni interval (parameter timeout) ali dokler druga nit ne prekine trenutne niti.

3 Razred Math Razred Math (paket java.lang) vsebuje statične metode, ki jih lahko uporabljamo za izračun standardnih matematičnih kalkulacij. Določilo in tip Metoda in opis Primeri static double abs(double a) abs( 45.8 ) = 45.8 Absolutna vrednost števila. abs( ) = 12.2 static double ceil(double a) ceil( 9.2 ) = 10.0 Zaokroži a na najmanjše celo število, ki ni manjše od a. ceil( -9.8 ) = -9.0 static double cos(double a) cos( 0.0 ) = 1.0 Kosinus kota (a v radianih). static double cosh(double a) Hiperbolični kosinus kota. static double exp(double a) exp( 1.0 ) = E na potenco števila a. exp( 2.0 ) = static double floor(double a) floor( 9.2 ) = 9.0 Zaokroži število a na največje celo število, ki ni večje kot a. floor( -9.7 ) = static double log(double a) log( Math.E ) = 1.0 Logaritem števila a (osnova e). static double log10(double a) Desetiški logaritem števila a (osnova 10). static double max(double a, double b) max( 1.3, 11.5) = 11.5 Večja vrednost od števil a in b. max( -2.8, -10. ) = -2.8 static double min(double a, double b) min( 1.3, 11.5 ) = 2.3 Manjša vrednost od števil a in b. min( -2.8, -10. ) = -10.

4 Razred Math Določilo in tip Metoda in opis Primeri static double pow(double a, double b) pow( 2.0, 8.0 ) = Potenca števila a na b. pow( 9.0, 0.5 ) = 3.0 static double random() Vrne naključno število iz intervala od 0.0 do 1.0 (>=0.0 <=> < 1.0). static long round(double a) Zaokroži število a na najbližjo celoštevilčno vrednost. static double sin(double a) sin( 0.0 ) = 0.0 Sinus kota (a v radianih). static double sqrt(double a) sqrt( ) = 30.0 Kvadratni koren števila a. static double tan(double a) Tanges kota (a v radianih). static double todegrees(double angrad) Pretvori kot v radianih v stopinje. static double toradians(double angdeg) Pretvori kot v stopinjah v radiane.

5 Razred Character Razred Character (paket java.lang) je ovojni razred osnovnega podatkovnega tipa char in predstavlja metode za delo z objektom, ki vsebuje znak. Določilo in tip Metoda in opis Primeri static boolean isuppercase(char ch) Character.isUpperCase('H') Je znak ch velika črka. static boolean islowercase(char ch) Character.isLowerCase('o') Je znak ch mala črka. static boolean touppercase(char ch) Character.toUpperCase('h') Znak ch pretvori v veliko črko. static boolean tolowercase(char ch) Character.toLowerCase('Z') Znak ch pretvori v malo črko. static boolean isletterordigit(char ch) Character.isLetterOrDigit('8') Je znak ch črka ali številka. static boolean isdigit(char ch) Character.isDigit('4') Je znak ch števka ('0'.. '9'). static boolean isletter(char ch) Character.isLetter(znak) Je znak ch črka. static boolean iswhitespace(char ch) Character.isWhiteSpace(znak) Je neviden presledek (presledek, tabulator, nova vrstica, vnašalka ali pomik naprej). static String tostring(char c) Character.toString(znak) Pretvori znak c v niz oz. besedilo.

6 Tip razreda String predstavlja zaporedje znakov (besedilo oz. niz). Literal objekta tipa String zapišemo med dvojnimi narekovaji npr. "Ana". Indeks prvega polja besedilne vrednosti je 0. String vrednost Pomen "Janez Kotnik" ime in priimek "Celjska 5" naslov "3000 Celje" poštna številka in kraj " " telefonska številka Razred String Besedilno vrednost shranimo v String referenco oz. kazalec. String imepriimek1 = new String ("Janez Kotnik"); //ali String imepriimek2 = "Janez Kotnik"; Prvi deklaracijski stavek inicializira spremenljivko imepriimek1, da njena vrednost vsebuje pomnilniški naslov na katerem je v pomnilniku shranjeno besedilo Janez Kotnik. Spremenljivka imepriimek1 se sklicuje na besedilni objekt v pomnilniku. char[] tab_besedilo = { 'r', 'o', 'j', 's', 't', 'n', 'i', '', 'd', 'a', 'n' }; // string objekti String besedilo = new String( "vse najboljše" ); // uporaba String konstruktorjev String besedilo1 = new String(); String besedilo2 = new String( besedilo ); String besedilo3 = new String( tab_besedilo ); String besedilo4 = new String( tab_besedilo, 8, 3 ); //izpis System.out.printf( "besedilo1 = %s\nbesedilo2 = %s\nbesedilo3 = %s\nbesedilo4 = %s\n", besedilo1, besedilo2, besedilo3, besedilo4 ); /* besedilo1 = besedilo2 = vse najboljše besedilo3 = rojstni dan besedilo4 = dan */

7 Metode razreda String Določilo, tip Metoda in opis Primeri char charat(int index) String besedilo = new String( "vse najboljše" ); Vrne vrednost znaka z določenega položaja (indeksa). char znak = besedilo.charat(4); //vrne 'n' int compareto(string anotherstring) String besedilo1 = new String( "Andrej" ); Primerjava dveh nizov. Vrednost: 0 - niza sta enaka, negativno število - klican niz je manjši od argumenta, pozitivno število - klican niz je večji od argumenta. String besedilo2 = new String( "Boris" ); int primerjava = besedilo1.compareto(besedilo2); System.out.printf("%s <=> %s: %d", besedilo1, besedilo2,primerjava); /* Andrej <=> Coris: -1 */ boolean equals(object object) String besedilo1 = new String( "Andrej" ); Primerjava enakosti nizov. boolean enaka = besedilo1.equals("andrej"); // true boolean equalsignorecase(string anotherstring) String besedilo1 = new String( "Andrej" ); Primerjava enakosti nizov brez razlikovanja velikih in malih znakov. boolean enaka = besedilo1.equals("andrej"); // true static String format(locale l, String format, Object... args) besedilo1 = String.format("Skupni znesek je %9.2f Vrne oblikovano besedilo glede na oblikovna Eurov\n, ); določila in argumente. Argumenti so enaki kot pri metodi System.out.printf(). // besedilo1 = "Skupni znesek je Eurov " b indexof(int ch) String besedilo = new String( "vse najboljše" ); Mesto prve pojavitve znaka ch v nizu. Če se nahaja int kje = besedilo.indexof('e'); // 2 znak ch v nizu, vrne mesto pojavitve, sicer vrne -1. int length() String besedilo = new String( "vse najboljše" ); Dolžina niza. int dolzina = besedilo.length(); // 13

8 Metode razreda String Določilo, tip Metoda in opis Primeri int split(string regex) String stavek = "Razdelitev stavka na besede."; Delitev niza glede na izraz ujemanja. Vrne tabelo nizov. String besede[]; besede = stavek.split(" "); for (int i = 0; i < besede.length; i++) System.out.println(besede[i]); String substring(int beginindex, int endindex) String stavek = "Vrne podniz niza."; Vrne podniz niza od indeksa beginindex do indeksa endindex-1. String podniz = stavek.substring(2, 4); // "ne" String tolowercase() String stavek = "Pretvori v male ČRKE."; Besedilo pretvori v male znake. stavek = stavek.tolowercase(); // pretvori v male črke. String touppercase() Besedilo pretvori v velike znake. String trim() Vrne niz brez presledkov na začetku in koncu niza. String valueof(int i) Pretvori osnovni podatkovni tip int v String. String stavek = "Pretvori v velike ČRKE."; stavek = stavek.touppercase(); // PRETVORI V VELIKE ČRKE. String stavek = " Besedilo xyz. "; stavek = stavek.trim(); // "Besedilo xyz." int stevilo = 123; String s = String.valueOf(stevilo); // "123" String valueof(<osnovni podatkovni tip> vrednost) Pretvori vrednost osnovnega podatkovnega tipa v String. int stevilod = ; String s = String.valueOf(steviloD); // "123.22"