Java의 문자 배열 | 자바 문자 배열

게시 됨: 2020-12-01

목차

소개

오늘날 우리가 처리하는 대부분의 데이터에는 문자가 포함되어 있으며 프로그래머에게 친숙하고 문자 데이터를 처리하는 방법을 제공하는 프로그래밍 언어는 유연하다고 할 수 있습니다.

Java의 Char 배열은 매우 유용하고 사용하기 쉽습니다. 문자열은 Java에서 변경할 수 없지만 char 배열의 항목을 조작할 수 있습니다. Char 배열은 목록 및 집합과 비교할 때 더 빠르며 집합 및 목록보다 간단합니다.

이제 char 배열의 작동을 살펴보겠습니다!

선언 및 초기화

char 배열의 선언은 Java의 일반 배열 선언과 유사합니다. "char[] array_name" 또는 "char array_name[]"은 선언 시 따라야 하는 구문입니다.

선언 후 다음으로 해야 할 일은 초기화입니다. "array_name = new char[array_length]"는 따라야 하는 구문입니다. 어쨌든 "char array_name[] = new char[array_length]" 구문을 사용하여 선언과 초기화를 동시에 수행할 수 있습니다. 배열의 길이는 초기화 시 char 배열로 선언해야 합니다.

공개 클래스 테스트 {

공개 정적 무효 메인 ( 문자열 args[])

{

//선언-1

문자 arr[];

arr = 새로운 문자 [ 4 ];

//선언-2

char arr2[] = 새로운 char [ 4 ];

//할당-1

char arr1[] =new char []{ ' a ' , ' b ' , ' c ' , ' d ' };

//할당-2

arr[ 0 ] = ' ' ;

arr[ 1 ] = ' b ' ;

arr[ 2 ] = ' c ' ;

arr[ 3 ] = ' d ' ;

시스템 . 밖으로 . println(arr);

시스템 . 밖으로 . println(arr1);

}

}

위의 스니펫에서 선언-1 및 선언-2는 모두 선언 및 초기화 방법입니다. 그리고 assigning-1과 assigning-2는 모두 항목을 배열로 푸시하는 방법입니다. char 배열을 인쇄할 때 문자열로 병합된 모든 문자를 인쇄한다는 것을 기억하십시오. 위의 경우 출력은 "abcd"가 됩니다.

자세히 알아보기: Java의 이벤트 처리: 이것이 무엇이며 어떻게 작동합니까?

char 배열에 대한 루핑

char 배열을 반복하는 것은 자바에서 재미있는 작업입니다. 배열을 반복하기 위해 일반 "for 루프" 또는 "for: each" 루프를 사용할 수 있습니다.

//루프-1

for ( int i = 0 ;i < arr . length;i ++ )

시스템 . 밖으로 . 인쇄(arr[i]);

//루프-2

( char c : arr )

시스템 . 밖으로 . 인쇄(c);

위의 스니펫에서 루프-1은 일반적인 for 루프이고 루프 1의 최종 출력은 "abcd"입니다. 그리고 루프-2는 for: 각 루프와 루프-2의 최종 출력은 "abcd"입니다.

문자 배열의 길이는 length 속성을 사용하여 얻을 수 있습니다. "Array_name.length"는 따라야 하는 구문입니다.

char 배열[] =new char []{ ' h ' , ' e ' , ' l ' , ' l ' , ' o ' };

시스템 . 밖으로 . println(배열 . 길이);

위의 스니펫은 예상대로 5를 인쇄합니다.

세계 최고의 대학 에서 소프트웨어 엔지니어링 과정 에 등록하십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

Char 배열 정렬하기

Java의 배열은 "Arrays.sort(array_name)"를 사용하여 정렬할 수 있습니다. 이것은 전달된 문자 배열을 사전순으로 정렬합니다.

char [] 배열 = { ' h ' , ' e ' , ' l ' , ' l ' , ' o ' };

배열 . 정렬(배열);

시스템 . 밖으로 . println( 배열 . toString(array)); //라인1

시스템 . 밖으로 . println(배열); //라인2

Arrays.sort() 및 Arrays.toString()이 작동하도록 하려면 java.util.Arrays를 가져와야 합니다.

위의 스니펫에서 char 배열은 사전순으로 정렬되고 배열을 인쇄하면 병합된 문자가 문자열로 인쇄됩니다. "line2"의 출력은 병합된 문자열로 출력하지 않고 끝 부분에 대괄호로 전체 배열을 인쇄하려는 경우 "ehllo"가 됩니다. 그러면 Arrays.toString()이 작업을 수행합니다. "line1"의 출력은 [e, h, l, l, o]입니다.

이전 코드 조각에서 배열의 항목을 채워 char 배열을 선언했지만 문자열을 char 배열로 변환하려면 어떻게 해야 할까요?

어쨌든 우리는 문자열 길이로 char 배열을 초기화하고 문자열을 반복하고 배열에 각 문자를 추가하면 작업이 수행됩니다.

문자열 s = " 안녕하세요 " ;

문자 [] arr = 새로운 문자 [s . 길이()];

for ( int i = 0 ;i < s . length();i ++ )

arr[i] = s . charAt(i);

시스템 . 밖으로 . println( 배열 . toString(arr));

위의 스니펫은 예상대로 [h, e, l, l,o]를 인쇄합니다.

위의 스니펫은 문자열을 char 배열로 변환하는 기술을 수행하지만 문자열을 char 배열로 변환할 때마다 이 긴 코드를 작성해야 합니까? 글쎄요, 대답은 NO일 것입니다.

Java는 문자열에 적용해야 하고 char 배열을 반환하는 toCharArray()라는 아름다운 메서드를 제공합니다.

문자열 s = " 아주 " ;

문자 [] arr = s . toCharArray();

시스템 . 밖으로 . println( 배열 . toString(arr)); //라인1

arr[ 2 ] = ' 나는 ' ;

시스템 . 밖으로 . println( 배열 . toString(arr)); //라인2

예상대로 "line1"은 [a, e, j, o, u]를 출력으로 인쇄합니다. 그리고 이미 논의한 바와 같이 문자열과 달리 char 배열의 항목을 편집하거나 조작할 수 있습니다. 따라서 line2의 출력은 [a, e, i, o, u]가 됩니다.

이제 자바에서 문자열을 char 배열로 변환하는 방법을 보았으므로 그 반대의 작업을 원하면 어떻게 될까요?

Java에는 이러한 작업을 수행하는 방법도 있습니다.

char [] arr = { ' h ' , ' e ' , ' y ' , ' ' , ' t ' , ' h ' , ' e ' , ' r ' , ' e ' };

문자열 s1 = 문자열 (arr); //메서드1

시스템 . 밖으로 . println(s1);

문자열 s2 = 문자열 . 값의(arr); //메서드2

시스템 . 밖으로 . println(s2);

위의 스니펫에서 char 배열을 문자열로 변환하는 두 가지 방법을 모두 볼 수 있습니다. 위 스니펫의 출력은 예상대로 "hey there"입니다.

읽어보기: 초보자를 위한 17가지 흥미로운 Java 프로젝트 아이디어 및 주제

결론

char 배열이 무엇인지 알게 되었고, char 배열을 초기화하고 선언하는 다양한 방법을 배웠습니다. char 배열을 반복하기 위한 스니펫을 살펴보았습니다. 미리 정의된 Arrays.sort() 메서드를 사용하여 문자 배열을 정렬했습니다.

그리고 문자열에서 char 배열로의 변환에 대한 순진하고 미리 정의된 구현을 관찰했으며 다양한 방법을 사용하여 그 반대의 구현도 관찰했습니다. 이제 char 배열의 개념에 정통했으므로 구현을 시작하십시오!

Java, OOP 및 전체 스택 소프트웨어 개발에 대해 자세히 알아보려면 작업 전문가를 위해 설계되었으며 500시간 이상의 엄격한 교육을 제공하는 upGrad & IIIT-B의 전체 스택 소프트웨어 개발 이그 제 큐 티브 PG 프로그램을 확인하십시오. 9개 이상의 프로젝트 및 과제, IIIT-B 동문 자격, 실질적인 실습 캡스톤 프로젝트 및 최고의 기업과의 취업 지원.

미래의 직업을 위한 준비

지금 소프트웨어 공학 석사 지원