JAVA функции: примеры кода
Аннотации (обработка)
- Annotation - Общий интерфейс, расширяемый всеми типами аннотаций
- getAnnotation - Возвращает аннотацию указанного типа
- getDeclaredAnnotations - Возвращает все аннотации, непосредственно присутствующие на этом элементе
- isAnnotationPresent - Возвращает true, если присутствует аннотация указанного типа
Безопасность (Security)
- checkPermission - Проверяет, предоставлено ли указанное разрешение
- doFinal - Завершает операцию шифрования или дешифрования
- getInstance - Возвращает объект Signature, реализующий указанный алгоритм подписи
- getMessageDigest - Возвращает объект MessageDigest, реализующий указанный алгоритм хеширования
- getPasswordAuthentication - Вызывается, когда требуется аутентификация по паролю
Ввод-вывод (I/O) консольный
- printf - Выводит форматированную строку в консоль
- println - Выводит строку текста в консоль
- Scanner - Простой сканер текста, который может разбирать примитивные типы и строки
- System.err - Стандартный поток вывода ошибок
- System.in - Стандартный поток ввода
- System.out - Стандартный поток вывода
Ввод-вывод (I/O) с буферизацией
- BufferedReader - Считывает текст из потока ввода символов, буферизуя символы
- BufferedWriter - Записывает текст в поток вывода символов, буферизуя символы
- flush - Сбрасывает буфер потока
- newLine - Записывает разделитель строк
- readLine - Считывает строку текста
Ввод-вывод (I/O) сетевой (NIO/Сокеты)
- accept - Ожидает подключения к этому сокету и принимает его
- bind - Привязывает сокет канала к локальному адресу
- connect - Подключает этот сокет к серверу
- getChannel - Возвращает уникальный объект SocketChannel, связанный с этим сокетом
- getInputStream - Возвращает входной поток для этого сокета
- getOutputStream - Возвращает выходной поток для этого сокета
- open - Открывает селектор
- select - Выбирает набор ключей, соответствующие каналы которых готовы для операций ввода-вывода
- Selector - Мультиплексор объектов SelectableChannel
- SocketChannel.open - Открывает канал сокета
- SocketChannel.read - Считывает последовательность байтов из этого канала в буфер
- SocketChannel.write - Записывает последовательность байтов в этот канал из буфера
- write - Записывает последовательность байтов в этот канал из буфера
Ввод-вывод (I/O) файловый
- copy - Копирует все байты из входного потока в выходной поток
- createNewFile - Атомарно создает новый пустой файл с указанным именем
- list - Возвращает массив строк, называющих файлы и каталоги в указанном каталоге
- mkdir - Создает каталог, указанный этим абстрактным путем
- read - Считывает байт данных из этого входного потока
- readAllBytes - Считывает все оставшиеся байты из входного потока
- readString - Считывает все содержимое файла в строку
- writeString - Записывает CharSequence в файл
Верификация (валидация)
- compile - Компилирует заданное регулярное выражение в шаблон
- find - Пытается найти следующую подпоследовательность входной последовательности, соответствующую шаблону
- isEmail - Проверяет, является ли CharSequence допустимым адресом электронной почты
- isNull - Проверяет, является ли ссылка на объект null
- isTrue - Проверяет, что условие аргумента истинно
- matcher - Создает сопоставитель, который будет сопоставлять заданный ввод с этим шаблоном
- matches - Проверяет, соответствует ли строка заданному регулярному выражению
- notNull - Проверяет, что указанный аргумент не является null
- Pattern - Скомпилированное представление регулярного выражения
- requireNonNull - Проверяет, что указанная ссылка на объект не является null
Время и дата (Date & Time API)
- between - Вычисляет количество времени между двумя временными объектами
- format - Форматирует эту дату-время, используя указанный форматтер
- isBefore - Проверяет, предшествует ли эта дата указанной дате
- LocalDateTime format - Форматирует эту дату-время, используя указанный форматтер
- now - Получает текущие дату и время из системных часов в часовом поясе по умолчанию
- of - Получает экземпляр LocalDate из года, месяца и дня
- parse - Получает экземпляр LocalDate из текстовой строки
- plusDays - Возвращает копию этой LocalDate с добавлением указанного количества дней
- ZonedDateTime - Дата-время с часовым поясом в календарной системе ISO-8601
Генерация случайных чисел
- current - Возвращает ThreadLocalRandom текущего потока
- ints - Возвращает практически неограниченный поток псевдослучайных значений int
- Math.random - Возвращает значение double с положительным знаком, большее или равное 0.0 и меньшее 1.0
- nextDouble - Возвращает следующее псевдослучайное, равномерно распределенное значение double между 0.0 и 1.0
- nextInt - Возвращает псевдослучайное значение int между нулем (включительно) и указанной границей (исключительно)
- ThreadLocalRandom - Генератор случайных чисел, изолированный для текущего потока
Коллекции
- Collections.emptySet() - Returns the empty immutable set
- Collections.singleton - Returns an immutable set containing only the specified object
- Collections.synchronizedSet - Returns a synchronized (thread-safe) set backed by the specified set
- Collections.unmodifiableSet - Returns an unmodifiable view of the specified set
- HashSet - Hash table based implementation of the Set interface
- LinkedHashSet - Hash table and linked list implementation with predictable iteration order
- Set - Collection that contains no duplicate elements
- Set.add - Adds the specified element to this set
- Set.clear() - Removes all of the elements from this set
- Set.contains - Returns true if this set contains the specified element
- Set.forEach - Performs the given action for each element
- Set.isEmpty() - Returns true if this set contains no elements
- Set.iterator() - Returns an iterator over the elements in this set
- Set.parallelStream() - Returns a possibly parallel Stream with this collection as its source
- Set.remove - Removes the specified element from this set
- Set.removeIf - Removes all of the elements that satisfy the given predicate
- Set.size() - Returns the number of elements in this set
- Set.spliterator() - Creates a Spliterator over the elements in this set
- Set.stream() - Returns a sequential Stream with this collection as its source
- Set.toArray() - Returns an array containing all of the elements in this set
- TreeSet - A NavigableSet implementation based on a TreeMap
Коллекции (Collection Framework) - List
- add - Добавляет указанный элемент в конец этого списка
- ArrayList - Реализация интерфейса List на основе изменяемого массива
- Collections.emptyList - Возвращает пустой (неизменяемый) список
- Collections.sort - Сортирует указанный список в порядке возрастания
- Collections.unmodifiableList - Возвращает неизменяемое представление указанного списка
- get - Возвращает элемент в указанной позиции в этом списке
- remove - Удаляет элемент в указанной позиции в этом списке
- size - Возвращает количество элементов в этом списке
- subList - Возвращает представление части этого списка между указанными индексами
Коллекции (Collection Framework) - Map
- Collections.synchronizedMap - Возвращает синхронизированную (потокобезопасную) карту, поддерживаемую указанной картой
- HashMap - Реализация интерфейса Map на основе хеш-таблицы
- LinkedHashMap - Реализация интерфейса Map на основе хеш-таблицы и связного списка с предсказуемым порядком итерации
- Map.containsKey - Возвращает true, если эта карта содержит сопоставление для указанного ключа
- Map.entrySet - Возвращает представление Set сопоставлений, содержащихся на этой карте
- Map.get - Возвращает значение, которому сопоставлен указанный ключ
- Map.keySet - Возвращает представление Set ключей, содержащихся на этой карте
- Map.put - Связывает указанное значение с указанным ключом на этой карте
- Map.remove - Удаляет сопоставление для ключа из этой карты, если оно присутствует
- TreeMap - Реализация NavigableMap на основе красно-черного дерева
Коллекции (Collection Framework) - Queue/Deque
- ArrayDeque - Реализация интерфейса Deque на основе изменяемого массива
- Collections.asLifoQueue - Возвращает представление Deque как очереди LIFO (последним пришел - первым ушел)
- Deque.addFirst - Вставляет указанный элемент в начало этой двусторонней очереди
- Deque.pollLast - Извлекает и удаляет последний элемент этой двусторонней очереди или возвращает null, если она пуста
- LinkedList - Реализация двусвязного списка интерфейсов List и Deque
- PriorityQueue - Неограниченная очередь с приоритетом на основе кучи
- Queue.offer - Вставляет указанный элемент в эту очередь, если это возможно сделать немедленно
- Queue.peek - Извлекает, но не удаляет, начало этой очереди или возвращает null, если очередь пуста
- Queue.poll - Извлекает и удаляет начало этой очереди или возвращает null, если очередь пуста
Компараторы
- Comparator.naturalOrder() - Returns a comparator that compares Comparable objects in natural order
- Comparator.reversed() - Returns a comparator that imposes the reverse ordering
- Comparator.thenComparing - Returns a lexicographic-order comparator
Логирование
- Logger.info - Log an INFO message
- Logger.log - Log a message
- Logger.severe - Log a SEVERE message
- Logger.warning - Log a WARNING message
Массивы
- Arrays.asList - Returns a fixed-size list backed by the specified array
- Arrays.binarySearch - Searches the specified array for the specified value using binary search
- Arrays.copyOf - Copies the specified array, truncating or padding with zeros
- Arrays.sort - Sorts the specified array into ascending order
Математические операции
- Math.abs - Returns the absolute value of a value
- Math.max - Returns the greater of two values
- Math.min - Returns the smaller of two values
- Math.pow - Returns the value of the first argument raised to the power of the second argument
- Math.random() - Returns a double value with a positive sign, greater than or equal to 0.0 and less than 1.0
- Math.sqrt - Returns the correctly rounded positive square root of a double value
Многопоточность
- AtomicInteger.getAndIncrement() - Atomically increments by one the current value
- AtomicInteger.incrementAndGet() - Atomically increments by one the current value
- AtomicReference.compareAndSet - Atomically sets the value to the given updated value if the current value equals the expected value
- AtomicReference.get() - Returns the current value
- AtomicReference.set - Sets to the given value
- BlockingQueue - A Queue that additionally supports operations that wait for the queue to become non-empty when retrieving an element
- ConcurrentHashMap - A hash table supporting full concurrency of retrievals and high expected concurrency for updates
- CopyOnWriteArrayList - A thread-safe variant of ArrayList
- CountDownLatch.await() - Causes the current thread to wait until the latch has counted down to zero
- CountDownLatch.countDown() - Decrements the count of the latch
- Executors.newFixedThreadPool - Creates a thread pool that reuses a fixed number of threads
- ExecutorService.submit - Submits a value-returning task for execution and returns a Future
- Future.get() - Waits if necessary for the computation to complete, and then retrieves its result
- Object.notify() - Wakes up a single thread that is waiting on this object's monitor
- Object.notifyAll() - Wakes up all threads that are waiting on this object's monitor
- Object.wait() - Causes the current thread to wait until another thread invokes notify()
- ReentrantLock.lock() - Acquires the lock
- ReentrantLock.unlock() - Attempts to release this lock
- Semaphore.acquire() - Acquires a permit from this semaphore
- Semaphore.release() - Releases a permit, returning it to the semaphore
- synchronized - Synchronizes access to a block of code or method
- Thread.join() - Waits for this thread to die
- Thread.sleep - Causes the currently executing thread to sleep for the specified number of milliseconds
- Thread.start() - Causes this thread to begin execution
- volatile - Declares a variable that is always read from and written to main memory
Наблюдение
- Observable.addObserver - Adds an observer to the set of observers for this object
- Observable.notifyObservers() - If this object has changed, notify all of its observers
Обработка XML
- DocumentBuilder.parse - Parses the content of the given file as an XML document
- SAXParser.parse - Parses the content of the given file as an XML document using SAX
- XMLStreamReader.next() - Gets the next event
Объекты
- Object.equals - Indicates whether some other object is equal to this one
- Object.getClass() - Returns the runtime class of this Object
- Object.hashCode() - Returns a hash code value for the object
- Object.toString() - Returns a string representation of the object
Отражение
- Class.getDeclaredField - Returns a Field object that reflects the specified declared field of the class
- Class.getDeclaredMethod - Returns a Method object that reflects the specified declared method of the class
- Field.get - Returns the value of the field represented by this Field, on the specified object
- Method.invoke - Invokes the underlying method represented by this Method object, on the specified object
Параллельные стримы
- Arrays.stream().parallel - Returns a parallel stream with the specified array as its source
- Collection.parallelStream() - Returns a possibly parallel Stream with this collection as its source
- Stream.parallel() - Returns an equivalent stream that is parallel
Парсинг
- Integer.parseInt - Parses the string argument as a signed decimal integer
- Scanner.nextInt() - Scans the next token of the input as an int
- String.split - Splits this string around matches of the given regular expression
Потоки ввода-вывода (Streams) байтовые
- BufferedInputStream - Добавляет буферизацию к входному потоку, повышая производительность
- BufferedOutputStream - Добавляет буферизацию к выходному потоку, повышая производительность
- DataInputStream.readInt - Считывает значение типа int из входного потока
- DataOutputStream.writeInt - Записывает значение типа int в выходной поток
- FileInputStream - Входной поток для чтения данных из файла
- FileOutputStream - Выходной поток для записи данных в файл
- InputStream.close - Закрывает этот входной поток и освобождает все связанные с ним системные ресурсы
- InputStream.read - Считывает следующий байт данных из входного потока
- OutputStream.close - Закрывает этот выходной поток и освобождает все связанные с ним системные ресурсы
- OutputStream.write - Записывает b.length байтов из указанного массива в этот выходной поток
Потоки ввода-вывода (Streams) символьные
- BufferedReader.readLine - Считывает строку текста
- BufferedWriter.newLine - Записывает разделитель строк
- FileReader - Символьный поток для чтения файлов
- FileWriter - Символьный поток для записи файлов
- InputStreamReader - Мост от байтовых потоков к символьным
- OutputStreamWriter - Мост от символьных потоков к байтовым
- PrintWriter.println - Печатает строку текста и завершает строку
- Reader.close - Закрывает поток
- Reader.read - Считывает один символ
- Writer.close - Закрывает поток, предварительно сбросив буфер
- Writer.write - Записывает массив символов
Потоки данных (Stream API) - промежуточные операции
- Stream.distinct - Возвращает поток, состоящий из уникальных элементов
- Stream.filter - Возвращает поток, состоящий из элементов, соответствующих заданному условию
- Stream.flatMap - Возвращает поток, состоящий из результатов замены каждого элемента содержимым отображенного потока
- Stream.limit - Возвращает поток, состоящий из элементов, ограниченный maxSize элементами
- Stream.map - Возвращает поток, состоящий из результатов применения функции к элементам
- Stream.mapToInt - Возвращает IntStream, состоящий из результатов применения функции к элементам
- Stream.peek - Возвращает поток, состоящий из элементов, выполняя указанное действие для каждого элемента
- Stream.skip - Возвращает поток, состоящий из оставшихся элементов после пропуска первых n элементов
- Stream.sorted - Возвращает поток, состоящий из элементов, отсортированных в естественном порядке
Потоки данных (Stream API) - терминальные операции
- Stream.allMatch - Возвращает true, если все элементы потока соответствуют условию
- Stream.anyMatch - Возвращает true, если хотя бы один элемент потока соответствует условию
- Stream.collect - Выполняет изменяемую операцию свертки элементов потока
- Stream.count - Возвращает количество элементов в потоке
- Stream.findFirst - Возвращает Optional, содержащий первый элемент потока
- Stream.forEach - Выполняет действие для каждого элемента потока
- Stream.forEachOrdered - Выполняет действие для каждого элемента потока, гарантируя порядок в последовательных потоках
- Stream.iterator - Возвращает итератор для элементов потока
- Stream.max - Возвращает максимальный элемент потока в соответствии с переданным Comparator
- Stream.min - Возвращает минимальный элемент потока в соответствии с переданным Comparator
- Stream.noneMatch - Возвращает true, если ни один элемент потока не соответствует условию
- Stream.reduce - Выполняет свертку элементов потока с использованием ассоциативной функции накопления
- Stream.spliterator - Возвращает Spliterator для элементов потока
- Stream.toArray - Возвращает массив, содержащий элементы потока
Работа с HTTP (HTTP Client, URLConnection)
- HttpClient.newHttpClient - Создает новый HttpClient с настройками по умолчанию
- HttpClient.send - Отправляет HTTP-запрос и возвращает ответ
- HttpRequest.Builder.build - Создает HttpRequest
- HttpRequest.newBuilder - Создает новый построитель HttpRequest
- HttpURLConnection.getInputStream - Возвращает входной поток для чтения из открытого соединения
- HttpURLConnection.getResponseCode - Получает код состояния из HTTP-ответа
- URL.openConnection - Возвращает экземпляр URLConnection, представляющий соединение с удаленным объектом по URL
Работа с JSON (Jackson, Gson, JSON-P)
- Gson.fromJson - Десериализует указанный JSON в объект указанного класса
- Gson.toJson - Сериализует указанный объект в эквивалентное JSON-представление
- Json.createParser - Создает JSON-парсер из строки
- ObjectMapper.readValue - Десериализует JSON из строки в Java-объект
- ObjectMapper.writeValueAsString - Сериализует Java-объект в эквивалентное JSON-представление
Работа с процессами и памятью (Runtime, Process)
- Process.getInputStream - Получает входной поток подпроцесса
- Process.waitFor - Заставляет текущий поток ждать завершения процесса
- Runtime.exec - Выполняет указанную строковую команду в отдельном процессе
- Runtime.freeMemory - Возвращает количество свободной памяти в виртуальной машине Java
- Runtime.getRuntime - Возвращает объект Runtime, связанный с текущим Java-приложением
- Runtime.totalMemory - Возвращает общее количество памяти в виртуальной машине Java
Работа с системными свойствами и окружением
- System.getenv - Получает значение указанной переменной окружения
- System.getenv() - Возвращает неизменяемое представление текущего окружения в виде Map
- System.getProperty - Получает системное свойство по указанному ключу
- System.setProperty - Устанавливает системное свойство по указанному ключу
Регулярные выражения
- Matcher.find() - Attempts to find the next subsequence of the input sequence that matches the pattern
- Matcher.matches() - Attempts to match the entire region against the pattern
- Pattern.compile - Compiles the given regular expression into a pattern
Сериализация/десериализация объектов
- ObjectInputStream.readObject - Считывает объект из ObjectInputStream
- ObjectOutputStream.writeObject - Записывает указанный объект в ObjectOutputStream
Сканирование ввода (Scanner)
- Scanner.hasNext - Возвращает true, если в сканере есть еще одна лексема
- Scanner.next - Находит и возвращает следующую полную лексему из сканера
- Scanner.nextInt - Сканирует следующую лексему ввода как int
- Scanner.nextLine - Перемещает сканер за текущую строку и возвращает пропущенный ввод
События (EventListener)
- ActionListener.actionPerformed - Вызывается при возникновении действия
- EventListener - Интерфейс-маркер, который должны расширять все интерфейсы слушателей событий
- MouseListener.mouseClicked - Вызывается при щелчке кнопкой мыши по компоненту
Сокеты (сетевые)
- ServerSocket - Серверный сокет, ожидающий запросов из сети
- Socket - Сокет для подключения к серверу
- Socket.getInputStream - Возвращает входной поток для этого сокета
- Socket.getOutputStream - Возвращает выходной поток для этого сокета
Строки (String) - базовые операции
- String.charAt - Возвращает символ по указанному индексу
- String.concat - Объединяет указанную строку с концом данной строки
- String.length - Возвращает длину строки
- String.substring - Возвращает подстроку данной строки
Строки (String) - поиск и сравнение
- String.contains - Возвращает true, если строка содержит указанную последовательность символов
- String.equals - Сравнивает данную строку с указанным объектом
- String.equalsIgnoreCase - Сравнивает строки, игнорируя регистр
- String.indexOf - Возвращает индекс первого вхождения указанной подстроки
- String.startsWith - Проверяет, начинается ли строка с указанного префикса
Строки (String) - преобразование
- String.replace - Возвращает строку, в которой все вхождения oldChar заменены на newChar
- String.toLowerCase - Преобразует все символы строки в нижний регистр
- String.toUpperCase - Преобразует все символы строки в верхний регистр
- String.trim - Возвращает строку, из которой удалены начальные и конечные пробелы
Строки (String) - форматирование (String.format)
- String.format - Возвращает отформатированную строку, используя указанный формат и аргументы
Строки (String) - части строк (StringBuilder, StringBuffer)
- StringBuffer.append - Добавляет строковое представление аргумента к последовательности
- StringBuffer.reverse - Заменяет эту последовательность символов на обратную
- StringBuilder.append - Добавляет строковое представление аргумента к последовательности
- StringBuilder.toString - Возвращает строку, представляющую данные в этой последовательности
Упаковка/распаковка (авто)
- Integer.intValue - Возвращает значение этого Integer как int
- Integer.valueOf - Возвращает экземпляр Integer, представляющий указанное значение int
Управление памятью (сборка мусора, System.gc)
- Runtime.gc - Запускает сборщик мусора
- System.gc - Запускает сборщик мусора
Файловая система
- Files.copy - Copy a file to a target file
- Files.readAllLines - Read all lines from a file
- Files.write - Write lines of text to a file
- Path.toAbsolutePath() - Returns a Path object representing the absolute path of this path
Форматирование чисел и денежных единиц (NumberFormat)
- NumberFormat.format - Форматирует число в строку
- NumberFormat.getCurrencyInstance - Возвращает денежный формат для локали по умолчанию
- NumberFormat.getInstance - Возвращает числовой формат общего назначения для локали по умолчанию
Функциональные интерфейсы (использование и создание)
- @FunctionalInterface - Аннотация, указывающая, что интерфейс является функциональным
- Comparator.compare - Сравнивает два аргумента для определения порядка
- Runnable.run - При запуске потока, созданного на основе объекта, реализующего Runnable, вызывается метод run
Шифрование и хеширование (Cryptography, MessageDigest)
- Cipher.doFinal - Шифрует или дешифрует данные в одношаговой операции или завершает многошаговую операцию
- Cipher.getInstance - Возвращает объект Cipher, реализующий указанное преобразование
- MessageDigest.digest - Завершает хеширование, обрабатывая указанный массив байтов, и возвращает хеш
- MessageDigest.getInstance - Возвращает объект MessageDigest, реализующий указанный алгоритм хеширования