Thursday, February 13, 2020

Java Strings Part 1

String object, once constructed, is immutable
String s = "Hello" + yourName;
The contents of the particular object that reference variable s refers to can never be changed.
If you need to change characters within a String, you should instead create a StringBuilder (mutable), manipulate the StringBuilder, then convert that to String using toString()
String is a fundamental type in Java. 
The class is marked final so it cannot be subclassed. So you can’t declare your own String subclass
public class getInfo extends java.lang.String { //<-ERROR. Cannot inherit from final String

Break a String
substring() method constructs a new String Object
substring method is overloaded: both forms require a starting index (zero-based) and optional ending index

Example
public class SubStringExample {

    public static void main(String[] av) {
        String a = "Good Morning.";
        System.out.println(a);      //Good Morning.
        String b = a.substring(5);  
        System.out.println(b);      //Morning.
        String c = a.substring(5, 7);
        System.out.println(c);      //Mo
        String d = a.substring(5, a.length());
        System.out.println(d);      //Morning.
    }
}


Break a String into Words
StringTokenizer and use methods hasMoreTokens() and nextToken()
StringTokenizer breaks the String into tokens

Example
import java.util.StringTokenizer;

/**
 *
 * @author AlejandroDavilaFlore
 */
public class strTok {

    public static void main(String[] av) {
        StringTokenizer st = new StringTokenizer("Hello World of Java");
        while (st.hasMoreTokens()) {
            System.out.println("Token: " + st.nextToken());
        }
        //Token: Hello
        //Token: World
        //Token: of
        //Token: Java

        //second string ", |"
        StringTokenizer st2 = new StringTokenizer("Hello, World|of|Java", ", |");
        while (st2.hasMoreElements()) {
            System.out.println("Token: " + st2.nextElement());
        }
        //Token: Hello
        //Token: World
        //Token: of
        //Token: Java
        
        //second string ", |"   
        //third string true, see the delimiters as tokens.
        StringTokenizer st3 = new StringTokenizer("Hello, World|of|Java", ", |", true);
        while (st3.hasMoreElements()) {
            System.out.println("Token: " + st3.nextElement());
        }
        //Token: Hello
        //Token: ,
        //Token:  
        //Token: World
        //Token: |
        //Token: of
        //Token: |
        //Token: Java

    }
}

Java Strings Part 2

No comments:

Post a Comment