StringBuilder와 string의 차이점
4341 단어 StringBuilder
용량과 길이를 설정합니다. StringBuilder 대상은 동적 대상입니다. 봉인된 문자열의 문자 수를 늘릴 수 있지만, 수용할 수 있는 최대 문자 수에 값을 지정할 수 있습니다.이 값을 객체의 용량이라고 하며 현재 StringBuilder 객체가 수용하는 문자열 길이와 혼동해서는 안 됩니다.예를 들어, 문자열 "Hello"(길이 5)가 있는 StringBuilder 클래스의 새 인스턴스를 만들 수 있으며 객체의 최대 용량을 25로 지정할 수 있습니다.StringBuilder를 수정하면 용량에 도달할 때까지 공간이 재할당되지 않습니다.용량에 도달하면 자동으로 새 공간이 할당되고 용량이 두 배로 늘어납니다.다시 불러오는 구조 함수 중 하나를 사용하여StringBuilder 클래스의 용량을 지정할 수 있습니다.다음 코드 예제에서는 MyStringBuilder 객체를 최대 25개의 공백으로 확장할 수 있도록 지정합니다. StringBuilder MyStringBuilder = new StringBuilder( "Hello World!", 25 );또한 읽기/쓰기 Capacity 속성을 사용하여 객체의 최대 길이를 설정할 수 있습니다.다음 코드 예제에서는 Capacity 속성을 사용하여 객체의 최대 길이를 정의합니다. MyStringBuilder.Capacity = 25;EnsureCapacity 메서드는 현재 StringBuilder 의 용량을 확인하는 데 사용됩니다.만약 용량이 전달된 값보다 크면 어떠한 변경도 하지 않는다.그러나 용량이 전달된 값보다 작으면 현재 용량이 전달된 값과 일치하도록 변경됩니다.Length 속성을 보거나 설정할 수도 있습니다.Length 속성을 Capacity 속성보다 큰 값으로 설정하면 자동으로 Capacity 속성을 Length 속성과 같은 값으로 변경합니다.Length 속성을 현재 StringBuilder 객체의 문자열 길이보다 작은 값으로 설정하면 문자열이 단축됩니다.
StringBuilder 문자열 수정 아래 표에는 StringBuilder의 내용을 수정할 수 있는 방법이 나와 있습니다.방법명은 StringBuilder를 사용합니다.Append는 현재 StringBuilder의 끝에 정보를 추가합니다. StringBuilder.AppendFormat는 문자열에서 전달된 형식 설명자를 형식 텍스트로 바꿉니다. StringBuilder.Insert는 문자열 또는 객체를 현재 StringBuilder 객체의 지정된 색인에 삽입합니다. StringBuilder.Remove는 현재 StringBuilder 객체에서 지정된 수의 문자를 제거합니다. StringBuilder.Replace는 지정된 색인에 지정된 문자를 대체합니다.
Append Append 메서드는 현재 StringBuilder 객체가 나타내는 문자열의 끝에 텍스트나 객체의 문자열 표현 형식을 추가할 수 있습니다.다음 예제에서는 StringBuilder 객체를 Hello World로 초기화한 다음 일부 텍스트를 객체의 끝에 추가합니다.필요에 따라 자동으로 공간이 할당됩니다. StringBuilderMyStringBuilder = newStringBuilder("Hello World!"); MyStringBuilder.Append("What a beautiful day."); Console.WriteLine(MyStringBuilder);
이 예에서는 "Hello World! What a beautiful day."콘솔에 표시됩니다.
AppendFormat AppendFormat 방법은 텍스트를StringBuilder의 끝에 추가하고 IFormattable 인터페이스를 실현하기 때문에 포맷 부분에서 기술한 표준 포맷 문자열을 받아들일 수 있습니다.이 방법을 사용하면 변수의 형식을 사용자 정의하고 이 값을 StringBuilder 뒤에 추가할 수 있습니다.다음 예제에서는 AppendFormat 방법을 사용하여 통화 값 형식으로 설정된 정수 값을 StringBuilder의 끝에 배치합니다. intMyInt = 25; StringBuilderMyStringBuilder = newStringBuilder("Your total is"); MyStringBuilder.AppendFormat("{0:C}", MyInt); Console.WriteLine(MyStringBuilder);
이 예는 콘솔에 "Your total is $25.00"을 표시합니다.
Insert Insert 메서드는 문자열 또는 객체를 현재 StringBuilder에서 지정된 위치에 추가합니다.다음 예제에서는 이 방법을 사용하여 StringBuilder의 여섯 번째 위치에 단어를 삽입합니다.
StringBuilderMyStringBuilder = newStringBuilder("Hello World!"); MyStringBuilder.Insert(6, "Beautiful"); Console.WriteLine(MyStringBuilder);
이 예에서는 "Hello Beautiful World!"콘솔에 표시됩니다.Remove는 현재 StringBuilder에서 지정된 수의 문자를 제거하는 Remove 방법을 사용하며, 제거 프로세스는 0부터 시작하는 지정된 색인에서 시작합니다.다음 예제에서는 Remove 방법을 사용하여 StringBuilder를 줄입니다.
StringBuilder MyStringBuilder = new StringBuilder("Hello World!");
MyStringBuilder.Remove(5, 7);
Console.WriteLine(MyStringBuilder);
이 예제에서는 Hello를 콘솔에 표시합니다.Replace는 Replace 방법을 사용하여 StringBuilder 객체의 문자를 다른 지정된 문자로 대체할 수 있습니다.다음 예제에서는 Replace 방법을 사용하여 StringBuilder 객체를 검색하고 모든 느낌표 문자(!)를 찾습니다.물음표 문자(?)를 사용합니다.그것들을 교체할 것이다.
StringBuilder MyStringBuilder = new StringBuilder("Hello World!");
MyStringBuilder.Replace('!', '?');
Console.WriteLine(MyStringBuilder);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
String, StringBuffer, StringBuilder 어떻게 다른가?이 String 객체는 어떻게 선언을 하냐에 따라 JVM내의 String constant pool에 저장되기도하고, Heap 영역에 저장되기도 한다. 리터럴 방식으로 생성하게 되면 String constant poo...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.