내장형 하드웨어/JAVA

JAVA - String 클래스의 메소드, 배열

동화다아아 2011. 12. 14. 14:45
- equality and identity 
 →  StringCompare.java
// 두 문자열을 비교하는 프로그램
public
 class StringCompare 
{
  public static void main (String[] args) 
  {
    String aString = "Java ";
    String bString = "Programming";
    String cString = "Programming";
    String myString;
    // identity 비교
    if (bString == cString) // true
    {
      System.out.println ("bString points to the same string object as cString.");
    }
    else
    {
      System.out.println ("bString points to the different string object as cString.");
    }
    aString = aString + bString; // "Java Programming"
    myString = "Java " + bString; // "Java Programming"
    System.out.println ("aString: " + aString);
    System.out.println ("myString: " + myString);
    // identity 비교 -> 객체가 같은가.(C의 주소비교)
    if (aString == myString) // false
    {
      System.out.println ("aString points to the same string object as myString.");
    }
    else
    {
      System.out.println ("aString points to the different string object as myString.");
    }
    // equlity 비교 -> 문자열이 같은가.(C의 strcmp())
    if (aString.equals (myString)) // true
    {
      System.out.println ("aString and myString refer to the same valued strings.");
    }
    else
    {
      System.out.println ("aString and myString do not refer to the same valued strings.");
    }
  }
}




- String 클래스가 가지고 있는 메소드

 → StringMethod.java
// String 클래스의 여러가지 메소드를 사용하는 프로그램

public
 class StringMethod
{
  public static void main(String[] args)
  {
    String aString = "This is a TEST string.";
    String bString;
    char ch;
    System.out.println("aString : " + aString);
    ch = aString.charAt(5); // ch의 값은 'i'가 된다.
    System.out.println("ch: " + ch);
    bString = aString.replace('t''k'); // bString은 "This is a TEST skring."이 된다.
    System.out.println("bString : " + bString);
    bString = aString.toUpperCase(); // bString은 "THIS IS A TEST STRING."이 된다.
    System.out.println("Upper : " + bString);

    int index = 0;
    String cString = "This is a text string.";
    System.out.println("\ncString : " + cString); 
    index = cString.indexOf('s'); // index의 값은 3이 된다.
    System.out.println("index : " + index);
    index = cString.indexOf("text"); // index의 값은 10이 된다.
    System.out.println("index : " + index);
    index = cString.lastIndexOf('s'); // index의 값은 15가 된다.
    System.out.println("lastindex : " + index);
    index = cString.lastIndexOf("text"); // index의 값은 10이 된다.
    System.out.println("lastindex : " + index);

    String dString;
    String Text = "Java Programming";
    System.out.println("\nText : " + Text);
    dString = Text.substring(7); // dString의 값은 "ogramming"이 된다.
    System.out.println("substring : " + dString);
    dString = Text.substring(710); // dString의 값은 "ogr"이 된다.
    System.out.println("substring : " + dString);
  }
}

 → 실행 결과



→ ChangeString.java
/* 키보드로부터 입력받은 문자의 개수를 출력하고, 문자열을 소문자와 대문자로 변환하여 출력하는 
프로그램. */

import
 java.io.*;

public class ChangeString
{
  public static void main(String[] args) throws IOException
  {
    BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
    String text;
    System.out.print("Please enter string : ");
    System.out.flush();
    text = stdin.readLine();

    System.out.println("The number of character is " + text.length());
    System.out.println("Lower : " + text.toLowerCase());
    System.out.println("Upper : " + text.toUpperCase());
  }
}

 → 실행 결과