массив символов в Java | Массив символов Java
Опубликовано: 2020-12-01Оглавление
Введение
Большинство данных, которые мы обрабатываем сегодня, содержат символы, язык программирования будет называться гибким, если он знаком программисту и предоставляет способ обработки символьных данных.
Массивы символов в java очень полезны и просты в использовании, строки неизменяемы в java, но мы можем манипулировать записями в массиве символов. Массивы символов быстрее по сравнению со списками и наборами и даже проще, чем наборы и списки.
Давайте теперь рассмотрим работу с массивами символов!
Декларация и инициализация
Объявление массива char похоже на объявление обычного массива в java. «char[] имя_массива» или «char имя_массива[]» — это синтаксис, которому следует следовать при объявлении.
После объявления следующее, что нам нужно сделать, это инициализация. «имя_массива = новый символ[длина_массива]» — это синтаксис, которому необходимо следовать. В любом случае мы можем сделать и объявление, и инициализацию в одном, используя синтаксис «char array_name[] = new char[array_length]». Длина массива должна быть объявлена во время инициализации в массиве символов.
открытый класс Тест { public static void main ( String args[]) { //объявление-1 символ обр[]; arr = новый символ [ 4 ]; //декларация-2 char arr2[] = новый символ [ 4 ]; //назначение-1 char arr1[] =new char []{ ' a ' , ' b ' , ' c ' , ' d ' }; //назначение-2 обр[ 0 ] = ' а ' ; обр[ 1 ] = ' б ' ; обр[ 2 ] = ' с ' ; обр[ 3 ] = ' д ' ; Система . вне . println(обр); Система . вне . println(обр1); } } |
В приведенном выше фрагменте объявления-1 и объявления-2 являются способами объявления и инициализации. И присваивание-1, и присваивание-2 — это оба способа помещения записей в массив. Помните, что когда мы печатаем массив символов, он печатает все символы, объединенные в строку, в приведенном выше случае вывод будет «abcd».

Узнайте больше: Обработка событий в Java: что это такое и как это работает?
Перебор массива символов
Цикл по массиву символов — забавная задача в java, мы можем использовать обычный цикл «for» или цикл «for: each» для цикла по массиву.
//цикл-1 for ( int i = 0 ;i < arr .length ; i ++ ) Система . вне . печать (обр [я]); //цикл-2 для ( символ c : обр) Система . вне . распечатать (с); |
В приведенном выше фрагменте цикл 1 является обычным циклом for, а конечным результатом первого цикла будет «abcd». А цикл-2 — это for: каждый цикл и конечный результат цикла-2 будут «abcd».
Длину массива символов можно получить с помощью атрибута length. «Имя_массива.длина» — это синтаксис, которому необходимо следовать.
char array[] =new char []{ ' h ' , ' e ' , ' l ' , ' l ' , ' o ' }; Система . вне . println(массив . длина); |
Приведенный выше фрагмент выводит 5, как и ожидалось.
Запишитесь на курсы по разработке программного обеспечения в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.
Сортировка массива символов
Массивы в java можно сортировать с помощью «Arrays.sort(array_name)». Это отсортирует переданный массив символов лексикографически.
char [] array = { ' h ' , ' e ' , ' l ' , ' l ' , ' o ' };![]() Массивы . сортировать (массив); Система . вне . println( Массивы . toString(массив)); //линия 1 Система . вне . распечатать(массив); //строка2 |
Обратите внимание, что нам нужно импортировать java.util.Arrays, чтобы заставить Arrays.sort() и Arrays.toString() работать.
В приведенном выше фрагменте массив символов сортируется лексикографически, и печать массива печатает символы, объединенные в строку. Вывод «line2» будет «ehllo», если вы не выводите в виде объединенной строки, вместо этого вы хотите напечатать весь массив с квадратными скобками на концах, тогда Arrays.toString() выполнит эту работу. Выход «line1» будет [e, h, l, l, o].
В предыдущих фрагментах кода мы объявили массивы символов, заполнив элементы массива, но что, если мы хотим преобразовать строку в массив символов?
В любом случае мы инициализируем массив символов длиной строки, циклически перебираем строку и добавляем каждый символ в массив, который выполнит эту работу.
Строка s = « привет » ; char [] arr = новый char [s . длина()]; for ( int i = 0 ;i < s .length ();i ++ ) обр[я] = с . символ (я); Система . вне . println( Массивы . toString(arr)); |
Вышеприведенный фрагмент будет печатать [h, e, l, l, o], как и ожидалось.
В приведенном выше фрагменте показано искусство преобразования строки в массив символов, но нужно ли нам писать этот длинный код каждый раз, когда мы хотим преобразовать строку в массив символов? Что ж, ответ будет НЕТ.
В Java есть красивый метод toCharArray(), который применяется к строке и возвращает массив символов.
Строка s = « aejou » ; char [] обр = s . toCharArray(); Система . вне . println( Массивы . toString(arr)); //линия 1 обр[ 2 ] = ' я ' ; Система . вне . println( Массивы . toString(arr)); //строка2 |
Как и ожидалось, «line1» выводит [a, e, j, o, u] в качестве вывода. И, как уже говорилось, в отличие от строки, мы можем редактировать или манипулировать элементами массива символов. Таким образом, вывод строки2 будет [a, e, i, o, u].
Теперь, когда мы увидели метод преобразования строки в массив символов в java, что, если нам нужна обратная задача?
Не говоря уже о том, что в Java также есть метод для выполнения таких задач.

char [] arr = { ' h ' , ' e ' , ' y ' , ' ' , ' t ' , ' h ' , ' e ' , ' r ' , ' e ' }; Строка s1 = новая строка (обр); //метод1 Система . вне . распечатать(s1); Строка s2 = Строка . значение(обр); //метод2 Система . вне . распечатать(s2); |
В приведенном выше фрагменте мы видим оба метода преобразования массива символов в строку. Вывод приведенного выше фрагмента будет «привет», как и ожидалось.
Читайте также: 17 интересных идей и тем для Java-проектов для начинающих
Заключение
Мы узнали, что такое массивы символов, изучили различные способы инициализации и объявления массивов символов. Прошелся по фрагменту для цикла по массиву символов. Сортировка массива символов с использованием предопределенного метода Arrays.sort().
И наблюдал наивную и предопределенную реализацию преобразования строки в массив символов, а также наблюдал обратную реализацию с использованием различных методов. Теперь, когда вы хорошо разбираетесь в концепциях массивов символов, приступайте к их реализации!
Если вам интересно узнать больше о Java, ООП и разработке программного обеспечения с полным стеком, ознакомьтесь с программой Executive PG upGrad и IIIT-B по разработке программного обеспечения с полным стеком, которая предназначена для работающих профессионалов и предлагает более 500 часов интенсивного обучения. Более 9 проектов и заданий, статус выпускника IIIT-B, практические практические проекты и помощь в трудоустройстве в ведущих фирмах.
