본문 바로가기
Java

JAVA]String 문자열 함수들

by 완기 2020. 6. 25.
728x90
반응형

이 글은 추 후에 코딩테스트에서 나올법한 문제들에 대비하기위해 공부용으로 작성된 글입니다.

 

1.문자열에서 N번째 글짜 뽑기. charAt()

import java.util.Random;

public class Altest {
	public static void main(String[] args) {
		Random rand = new Random(); // 랜덤객체 생성

		String msg = "랜덤뽑기다!"; // 알파벳 순 문자열
		for (int i = 0; i < 3; i++) {
			int num = rand.nextInt(1) + msg.length(); // 랜덤으로 뽑힌 숫자는 1부터 문자열의 길이만큼
			System.out.println(msg.charAt(rand.nextInt(num)));// 문자열의 n번째 글자를 확인함
		}
	}
}

 

 

 

 

 

2.특정 문자열 중, N번째 문자의 아스키코드 확인하기. codePointAt()

public class Altest {
	public static void main(String[] args) {
		String msg = "ABCD!";
		System.out.println(msg.codePointAt(0)); //0번 째인 A의 아스키코드 확인
	}
}

 

 

 

 

 

3.문저열 더하기. concat()

public class Altest {
	public static void main(String[] args) {
		String msg = "hello"; // 알파벳 순 문자열
		msg=msg.concat("world!");
		System.out.println(msg);
	}
}

 

 

※참고 :String은 primitive자료형이 아니라서 선언마다, 공간을 차지하므로

붙인 문자열을 다른 변수에 담기 위해서 새로운 변수를 선언하는 행위가 반복되면 시스템의 성능이 저하될 수 있다.

 

 

4.특정 문자열 검색 contains()

public class Altest {
	public static void main(String[] args) {
		String msg = "hello"; // 알파벳 순 문자열
		System.out.println(msg.contains("el"));
	}
}

 

 

 

4.문자열 비교 , contentEquals()  ,  equals()

public class Altest {
	public static void main(String[] args) {
		String msg = "hello"; // 알파벳 순 문자열
		System.out.println(msg.contentEquals("hel"));
		System.out.println(msg.equals("hello"));
	}
}

 

두 함수는 똑같은 기능을 하지만 조금의 차이는 있다.

equals는 자바의 모든 클래스가 상속받고있는 object 클래스에서 오버라이드된 메소드고

contentEquals는 String클래스에서 제공하는 메소드이다.

 

 

 

 

 

5.문자열에서 특정 문자가 몇개나 존재하는지 확인하기  indexof()

 

public class Altest {
	public static void main(String[] args) {
		String msg = "abbcccdddd"; // 알파벳 순 문자열
		System.out.println(msg.indexOf("c"));
	}
}

6.문자열의 value를 똑같이 다시 리턴하기.

public class Altest {
	public static void main(String[] args) {
		String msg = "똑같은 문자가 콘솔에 찍힙니다."; // 알파벳 순 문자열
		System.out.println(msg.intern());
	}
}

728x90
728x90

댓글