/** * Title:
* Description:
* Copyright: Copyright (c)
* Company:
* @author * @version 1.0 */ import java.util.*; public class Merkkijonoesimerkit { public static void main(String[] args) { //Erityismerkkien tulostaminen System.out.println("Merkkien \\, \" ja \' käyttö\non hieman hankalaa."); //Merkkijonojen yhdistelyä ja primitiivityyppien tulostamista. String s1 = "puu"; String s2 = "kenkä"; String s3 = s1 + s2; //s3 on "puukenkä" //sama pidemmin s3 = s1.concat(s2); System.out.println(s1 +"+"+ s2 +"="+ s3); int koko = 32; String s4 = "Koko on: " + koko + "."; //s4 on "Koko on: 32." //sama pidemmin s4 = "Koko on: " + String.valueOf(koko) + "."; System.out.println(s4); Date d = new Date(); String s5 = "Päivä: " + d; //s5 on "Päivä: Sun Oct 01 23:26:42 GMT+03:00 2000" //sama pidemmin s5 = "Päivä: " + String.valueOf(d); System.out.println(s5); //Esimerkkejä Stringin metodeista String jono = "Puukenkä"; int index = jono.indexOf('k'); //index = 3 index = jono.indexOf('k',4); //index = 6 index = jono.lastIndexOf('k'); //index = 6 index = jono.indexOf("en"); //index = 4 String osajono = jono.substring(3,jono.length()); //Osajono = "kenkä" String sjono = jono.toUpperCase(); //sjono = "PUUKENKÄ" //Merkkijonojen vertailu String jono1 = "kenkä"; String jono2 = "kenkä"; if ( jono1 == jono2 ) { /* Ehto on epätosi, koska jono1 ja jono2 osoittavat eri olioon! */ System.out.println("Samatko 1"); } if ( jono1.equals(jono2) ) { /* ehto on tosi, sillä merkkijonot vastaavat */ System.out.println("Samatko 2"); } jono1 = jono2; if ( jono1 == jono2 ) { /* Nyt ehto on tosi, koska jono1 ja jono2 osoittavat samaan olioon */ System.out.println("Samatko 3"); } //StringBuffer StringBuffer sb = new StringBuffer("kenkä"); sb.insert(0,"Puu"); //Puukenkä sb.append("kö"); //Puukenkäkö sb.delete(4,6); //Puukkäkö sb.replace(5,8,"o"); //Puukko String jono3 = sb.toString(); //jono3 = Puukko //StringTokenizer StringTokenizer st = new StringTokenizer("Matti,Kalle,,Maija", ",", false); while ( st.hasMoreTokens() ) System.out.println(st.nextToken()); st = new StringTokenizer("Matti,Kalle,,Maija", ",", true); while ( st.hasMoreTokens() ) System.out.println(st.nextToken()); //Merkkijonosta primitiivityypiksi boolean bool = new Boolean("true").booleanValue(); //b = true; //Seuraavista metodeista kaikki heittävät NumberFormatException-poikkeuksen, //jos merkkijono ei ole muunnettavissa ko tyypiksi try { byte b = Byte.parseByte("13"); double dbl = new Double("12.5").doubleValue(); float f = new Float("56.7").floatValue(); int i = Integer.parseInt("123"); long l = Long.parseLong("-987"); short s = Short.parseShort("12"); //Seuraavat toimivat vain JDK1.2:lla tai uudemmalla double dbl2 = Double.parseDouble("12.5"); //Vain JDK1.2 float f2 = Float.parseFloat("56.7"); //Vain JDK1.2 //Tästä lentää poikkeus int i2 = Integer.parseInt("Kukkakaali"); } catch (NumberFormatException nfe) { System.out.println(nfe); } } }