Чтение онлайн

на главную

Жанры

Программирование на Java
Шрифт:

Разделителем лексем по умолчанию служит пробел.

public class Test {

public Test {

}

public static void main(String[] args) {

Test test = new Test;

String toParse =

"word1;word2;word3;word4";

StringTokenizer st =

new StringTokenizer(toParse,";");

while(st.hasMoreTokens) {

System.out.println(st.nextToken);

}

}

}

Результатом будет:

word1

word2

word3

word4

Класс BitSet

Класс BitSet предназначен для работы с последовательностями битов. Каждый компонент этой коллекции может принимать булево значение, которое обозначает, установлен бит или нет. Содержимое BitSet может быть модифицировано содержимым другого BitSet с использованием операций AND, OR или XOR (исключающее или).

BitSet имеет текущий размер (количество установленных битов), может динамически изменяться. По умолчанию все биты в наборе устанавливаются в 0 (false). Установка и очистка битов в BitSet осуществляется методами set(int index) и clear(int index).

Метод int length возвращает "логический" размер набора битов, int size возвращает количество памяти, занимаемой битовой последовательностью BitSet.

public class Test {

public Test {

}

public static void main(String[] args) {

Test test = new Test;

BitSet bs1 = new BitSet;

BitSet bs2 = new BitSet;

bs1.set(0);

bs1.set(2);

bs1.set(4);

System.out.println("Length = " + bs1.length+" size = "+bs1.size);

System.out.println(bs1);

bs2.set(1);

bs2.set(2);

bs1.and(bs2);

System.out.println(bs1);

}

}

Результатом будет:

Length = 5 size = 64

{0, 2, 4}

{2}

Проанализировав первую строку вывода на консоль, можно сделать вывод, что для внутреннего представления BitSet использует значения типа long.

Класс Random

Класс Random используется для получения последовательности псевдослучайных чисел. В качестве "зерна" применяется 48-битовое число. Если для инициализации Random задействовать одно и то же число, будет получена та же самая последовательность псевдослучайных чисел.

В классе Random определено также несколько методов, которые возвращают псевдослучайные величины для примитивных типов Java.

Дополнительно следует отметить наличие двух методов: double nextGaussian - возвращает случайное число в диапазоне от 0.0 до 1.0 распределенное по нормальному закону, и void nextBytes(byte[] arr) - заполняет массив arr случайными величинами типа byte.

Пример использования Random:

public class Test {

public Test {

}

public static void main(String[] args) {

Test test = new Test;

Random r = new Random(100);

// Generating the same sequence numbers

for(int cnt=0;cnt<9;cnt++) {

System.out.print(r.nextInt + " ");

}

System.out.println;

r = new Random(100);

for(int cnt=0;cnt<9;cnt++) {

System.out.print(r.nextInt + " ");

}

System.out.println;

// Generating sequence of bytes

byte[] randArray = new byte[8];

r.nextBytes(randArray);

test.dumpArray(randArray);

}

void dumpArray(byte[] arr) {

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

System.out.print(arr[cnt]);

}

System.out.println;

}

}

Пример 14.24.

Результатом будет:

– 1193959466 -1139614796 837415749 -1220615319 -1429538713 118249332 -951589224 -1193959466 -1139614796 837415749 -1220615319 -1429538713 118249332 -951589224 81;-6;-107;77;118;17;93; -98;

Пример 14.25.

Локализация

Класс Locale

Класс Locale предназначен для отображения определенного региона. Под регионом принято понимать не только географическое положение, но также языковую и культурную среду. Например, помимо того, что указывается страна Швейцария, можно указать также и язык - французский или немецкий.

Определено два варианта конструкторов в классе Locale:

Locale(String language, String country)

Locale(String language, String country,

String variant)

Первые два параметра в обоих конструкторах определяют язык и страну, для которой определяется локаль, согласно кодировке ISO. Список поддерживаемых стран и языков можно получить и с помощью вызова статических методов Locale.getISOLanguages Locale.getISOCountries, соответственно. Во втором варианте конструктора указан также строковый параметр variant, в котором кодируется информация о платформе. Если здесь необходимо указать дополнительные параметры, то их требуется разделить символом подчеркивания, причем, более важный параметр должен следовать первым.

Пример использования:

Locale l = new Locale("ru","RU");

Locale l = new Locale("en","US","WINDOWS");

Статический метод getDefault возвращает текущую локаль, сконструированную на основе настроек операционной системы, под управлением которой функционирует JVM.

Для наиболее часто использующихся локалей заданы константы. Например, Locale.US или Locale.GERMAN.

После того как экземпляр класса Locale создан, с помощью различных методов можно получить дополнительную информацию о локали.

Поделиться:
Популярные книги

Эпоха Опустошителя. Том VII

Павлов Вел
7. Вечное Ристалище
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Эпоха Опустошителя. Том VII

Лейб-хирург

Дроздов Анатолий Федорович
2. Зауряд-врач
Фантастика:
альтернативная история
7.34
рейтинг книги
Лейб-хирург

Газлайтер. Том 21

Володин Григорий Григорьевич
21. История Телепата
Фантастика:
боевая фантастика
аниме
попаданцы
5.00
рейтинг книги
Газлайтер. Том 21

Московское золото или нежная попа комсомолки. Часть Вторая

Хренов Алексей
2. Летчик Леха
Фантастика:
попаданцы
5.00
рейтинг книги
Московское золото или нежная попа комсомолки. Часть Вторая

Родословная. Том 2

Ткачев Андрей Юрьевич
2. Линия крови
Фантастика:
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Родословная. Том 2

Наследие Маозари 6

Панежин Евгений
6. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 6

Второгодка. Книга 3. Ученье свет

Ромов Дмитрий
3. Второгодка
Фантастика:
городское фэнтези
сказочная фантастика
альтернативная история
5.00
рейтинг книги
Второгодка. Книга 3. Ученье свет

Родословная. Том 3

Ткачев Андрей Юрьевич
3. Линия крови
Фантастика:
городское фэнтези
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Родословная. Том 3

Ну привет, заучка...

Зайцева Мария
Любовные романы:
эро литература
короткие любовные романы
8.30
рейтинг книги
Ну привет, заучка...

Телохранитель Генсека. Том 3

Алмазный Петр
3. Медведев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Телохранитель Генсека. Том 3

Последний Паладин

Саваровский Роман
1. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин

История московских кладбищ. Под кровом вечной тишины

Рябинин Юрий Валерьевич
Научно-образовательная:
история
культурология
5.75
рейтинг книги
История московских кладбищ. Под кровом вечной тишины

Я уже царь. Книга XXIX

Дрейк Сириус
29. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я уже царь. Книга XXIX

На границе империй. Том 10. Часть 2

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
5.00
рейтинг книги
На границе империй. Том 10. Часть 2