Определение и использование массивов Java <br /> Если вы хотите сохранить набор данных того же типа, вы можете использовать массив.
Определение массива и распределение памяти
Есть два синтаксиса для определения массивов на Java:
Тип ArrayName [];
Тип - это тип данных в Java, включая основные типы и типы комбинации. Например:
int demoarray []; int [] demoharray;
Нет разницы между этими двумя формами, и эффект использования точно такой же.
В отличие от C и C ++, Java не выделяет память для элементов массива при определении массивов, поэтому нет необходимости указывать количество элементов массива, то есть длины массива. Более того, для массива, определенного выше, он не может получить доступ к одному из его элементов.
ArrayName = новый тип [ArraySize];
где массивы - это длина массива, а тип - тип массива. нравиться:
demoharray = new int [3];
Распределите пространство памяти, занятое 3 int целыми числами на целочисленный массив.
Обычно вы можете выделить пространство во время определения, с синтаксисом как:
Тип ArrayName [] = новый тип [массивов];
Например:
int demoharray [] = new int [3];
Инициализация массивов
Вы можете инициализировать (статическую инициализацию) при объявлении массива, или вы можете инициализировать его после объявления (динамическая инициализация). Например:
// Статическая инициализация // При статической инициализации он выделяет пространство для элементов массива и присваивает значение int intarray [] = {1,2,3,4}; string stringArray [] = {"weChatyuan", "http: // www .wixueyuan.net "," Все языки программирования - это бумажные тигры "}; // Динамическая инициализация floatarray [] = new Float [3]; floatArray [0] = 1.0f; floatArray [1] = 132.63f; FloatArray [2] = 100f;Ссылка на массив
На массив можно ссылаться с помощью Sppript:
ArrayName [Index];
В отличие от C и C ++, Java должна провести непрерывные чеки на элементы массива, чтобы обеспечить безопасность.
Каждый массив имеет атрибут длины, чтобы указать его длину, например, Intarray.length указывает длину массива Intarray.
[Пример] Напишите кусок кода, который требует ввода любых 5 целых чисел и выводит их сумму.
Import java.util.*; Дайте массивные элементы. {intarray [i] = sc.nextint (); («Сумма всех элементов массива:» + total); Результаты работы:
Пожалуйста, введите 5 целых чисел, разделенные пространствами: 10 20 15 25 50
Сумма всех элементов массива: 120
Массив
В реальном развитии часто необходимо пройти массив, чтобы получить каждый элемент в массиве. Например, самый простой способ подумать - для цикла: для цикла:
int arraydemo [] = {1, 2, 4, 7, 9, 192, 100}; для (int i = 0, len = arraydemo.length; i <len; i ++) {System.out.println (arraydemo [i ] + ",");}
Результат вывода:
1, 2, 4, 7, 9, 192, 100,
Тем не менее, Java обеспечивает «улучшенную версию» для петли, которая специально используется для массивов с помощью синтаксиса:
для (arraytype varname: arrayname) {// какой -то код}
Arraytype - это тип массива (также тип элемента массива);
Каждый цикл выполняется, значение следующего элемента в массиве получается и сохраняется с переменной варена до конца массива. То есть значение вида имени в первом петле - это 0 -й элемент, а второй цикл - 1 -й элемент ... например:
int arraydemo [] = {1, 2, 4, 7, 9, 192, 100}; for (int x: arraydemo) {System.out.println (x + ",");}
Результат вывода такой же, как и выше.
Эта улучшенная версия для петли также называется «петлей Foreach», которая является специальной упрощенной версией обычных операторов цикла. Все петли Foreach могут быть переписаны для петли.
Однако, если вы хотите использовать индекс массива, расширение для цикла не может этого сделать.
Двумерный массив
Объявление, инициализация и ссылка двухмерных массивов аналогичны одномерным массивам:
int intarray [] [] = {{1,2}, {2,3}, {4,5}}; int a [] [] = new int [2] [3]; a [0] [0] = 12; a [0] [1] = 34; // ...... a [1] [2] = 93; На языке Java, поскольку двумерные массивы рассматриваются как массивы массивов, пространство массива не постоянно распределяется, поэтому размер каждого измерения двумерного массива не требуется одинаковым. Например:
int intarray [] [] = {{1,2}, {2,3}, {3,4,5}}; int a [] [] = new int [2] []; a [0] = new int [3]; a [1] = new int [5]; [Пример] Рассчитайте произведение двух матриц через двумерный массив.
открытый класс демонстрация {public static void main (string [] args) {// Первая матрица (динамическая инициализация двумерного массива) int a [] [] = new int [2] [3]; Матрица (статически инициализирует 2D массив) int b [] [] = {{1,5,2,8}, {5,9,10, -3}, {2,7, -5, -18}}; // Матрица результата int c [] [] = new int [2] [4]; j ++) a [i] [j] = (i+1) * (j+2); <4; [j]; c [i] [j]); Результаты работы:
25 65 14 -65 50 130 28 -130
Несколько объяснений:
Вышеуказанное - статический массив. Как только статический массив объявлен, его емкость фиксированная и не может быть изменена. Поэтому, объявив массив, вы должны рассмотреть максимальную емкость массива, чтобы предотвратить недостаточную емкость.
Если вы хотите изменить емкость при запуске программы, вам необходимо использовать список массивов (ArrayList, также известный как динамический массив) или вектор (вектор).
Это именно из -за недостатка фиксированной емкости статических массивов, которые часто не используются в реальной разработке и заменяются ArrayList или Vector, потому что в реальном развитии он часто должен добавлять или удалять элементы в массив, а его способность - это способность Нелегко оценить.
Java String (String)
На первый взгляд, строки - это данные между двойными кавычками, такими как "weixueyuan", "http://www.weixueyuan.net" и т. Д. В Java вы можете использовать следующий метод для определения строки:
String stringName = "String Content";
Например:
String url = "http://www.weixueyuan.net"; string webname = "wechatyuan";
Строки могут быть объединены через «+».
открытый класс Демо, {Статический void main (string [] args) {string stuname = "xiao ming"; Степень " + stuscore; System.out.println (info);}} Результаты работы:
Возраст Сяо Мин 17, а его оценка - 92,5
Строки струны имеют одну общую черту с массивами, то есть после того, как они инициализированы, их длина остается неизменной, а их содержание остается неизменным. Если вы хотите изменить его значение, будет сгенерирована новая строка, как показано ниже:
String str = "hello"; str += "world!";
Это выражение задания выглядит немного как простой пасьянс, добавляя строку «Мир!» Принцип работы заключается в следующем: программа сначала генерирует строку Str1 и применяется к кусочке места в памяти. В настоящее время невозможно добавить новую строку, потому что длина строки фиксируется после инициализации. Если вы хотите изменить его, вы можете отказаться от исходного пространства, повторно применить для памяти, которое может разместить строку «Hello World!»
Фактически, строка является классом в рамках пакета Java.lang.
String stringName = new String ("String Content");
Например:
String url = new String (http://www.weixueyuan.net);
Однако, поскольку строка особенно часто используется, Java обеспечивает упрощенный синтаксис.
Другая причина использования упрощенного синтаксиса заключается в том, что в соответствии со стандартным объектно-ориентированным синтаксисом существует относительно большие отходы в использовании памяти. Например, string str = new String ("ABC");
Строка операция
Есть много способов легко управлять строками.
1) Метод длины ()
Length () возвращает длину строки, например:
String str1 = "weixueyuan"; string str2 = "weixueyuan"; System.out.println («Длина str1 - + str1.length ()); System.out.println (« Длина ST R2 - это " + str2.length ());
Результат вывода:
Длина str1 - 3 длина STR2 - 10
Видно, что длина каждого персонажа составляет 1, будь то буквы, числа или китайские иероглифы.
2) Метод charat ()
Функция метода charat () состоит в том, чтобы получить указанные символы в строке в соответствии со значением индекса. Java предусматривает, что значение индекса первого символа в строке составляет 0, значение индекса второго символа составляет 1, и так далее. Например:
String str = "123456789"; System.out.println (str.charat (0) + "" + str.charat (5) + "" + str.charat (8));
Результат вывода:
1 6 9
3) содержит () метод
Метод содержит () используется для определения того, содержит ли строка подстроение, например:
String str = "weixueyuan"; system.out.println (str.contains ("yuan"));
Результат вывода:
истинный
4) Заменить метод
Замена строки, используемая для замены всех указанных подстроков в строке, например:
String Str1 = "URL Weixueyuan - www.weixueyuan.net!"; String str2 = str1.replace ("weixueyuan", "weixueyuan"); System.out.println (str1); Syste M.Out.println (str2); System.out.println (str1); );
Результат вывода:
URL Weixueyuan - www.weixueyuan.net!
Примечание. Метод reply () не изменяет исходную строку, но генерирует новую строку.
5) Метод сплит ()
Используйте указанную строку в качестве разделителя, чтобы разделить текущую строку.
Import java.util.*; Массивы .toString (strarr));
Результаты работы:
[Вэй, Сюэ, Юань, это, хорошо]
Выше приведено только несколько часто используемых методов строковых объектов.