검색결과 리스트
자바 스트링 string java에 해당되는 글 1건
- 2017.09.30 JAVA STRING, 자바 string
package com.access.string;
/*
* 자바에서 String이란, 문자값들의 연속을 나타내는 객체이다.
* 문자의 배열도 String과 똑같이 작동한다.
*
* compare(),concat(),equals(),split(),
* length(),replace(),compareTo(),intern(),substring()... 등 다양한 메소드를 지원한다.
*
* 게다가 String은 아래의 3개 메소드를 구현하고있다.
* - Serializable
* - Comparable
* - CharSequence
*
*
*/
public class StringTest {
public static void main(String[] args) {
//test1( );
//test2();
test3();
}
public void test() {
char[] ch = { 'j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't' };
String s = new String(ch);
System.out.println(s);
}
/*
* CharSequence Interface 는 문자의 연속을 나타내기위해 사용하는 인터페이스인데,
* String, StringBuffer,StringBuilder 클래스들이 구현하고있다.
*
* String 객체를 만드는 2가지 방법이 있다.
* 1. string literal 2. new keyword
*
* 1.쌍따옴표를 사용해서 객체를 생성한다.
* String s = "welcome"; 과 같이 ""로 감싸서 String임을 JVM한테 알려준다.
* 매번 String 문자를 만들때마다 JVM은 string contant pool을 체크한다.
* 만약 pool에 해당 string이
* 이미 존재한다면 pooling 인스턴스를 참조하여 리턴한다.
*
*
*/
public static void test2() {
String s1 = "Welcome";
String s2 = "Weclome"; // 새로운 인스턴스를 만들지않음.
/*
* 1번 방법으로 String 객체를 만들어봅시다.
* 먼저, "Welcome"이란 값을 가진 String객체를 string constant pool에서 JVM은 찾지않습니다.
* s1 객체가 생성되면 그 다음 pool에서 "Welcome"이라는 값을 가진 string을 찾기
* 시작할겁니다.
* 그리고 pool에서 "Welcome"을 찾으면 새로 인스턴스를 생성하지않고 참조하고있는 인스턴스를 리턴하죠.
*
* 한마디로 이미 생성된 string에 대해서는 중복 인스턴스를 허용하지않고
* 효율적으로 같은 값을 가진 동일한 인스턴스를 리턴하게됩니다.
* (게다가, String object는 string constant pool이라는 특별한 메모리에 저장됩니다.)
*
* 그럼 자바는 왜 string literal 개념을 사용하는가?
* 메모리를 효율적으로 관리하기위해서 위 개념을 사용하고있습니다.
* 중복은 숙적이니까요.
*
*
*/
}
public static void test3() {
String s1 = "java";
char[] ch = { 's', 't', 'r', 'i', 'n', 'g', 's' };
String s2 = new String(ch); // new keyword로 string 객체를 생성.
String s3 = new String("example");
System.out.println(s1);
System.out.println(s2);
System.out.println(s3);
}
}
// String 객체의 메소드들은 나중에 한번에 정리해서 올리겠습니다~
객체(오브젝트)와 클래스의 차이점/ Differences between Object and Java (0) | 2017.09.25 |
---|---|
Java Command Line Argument (0) | 2017.09.25 |
자바 strictly 키워드 (0) | 2017.09.25 |
자바 재귀메소드, 재귀함수 java recursive ( Recursion in Java) (0) | 2017.09.25 |
Java Array 자바 배열편! (0) | 2017.09.25 |
RECENT COMMENT