Java Core

Java
Примитивные типы
boolean
char
byte, short, int, long
float, double
Для примитивных типов выделяется память в Стеке и занимает меньше места.

int sum = 34 + 113;
int difference = 91 - 205;
int product = 2 * 8; 
int quotient = 45 / 3;

Целочисленные типы

int decimal = 99; //десятичная
int octal = 0755; //восмеричной, с префиксом "0"
int hex = 0xFF; //шестнацатеричной, c префиксом "0x"
int binary = 0b101; // двоичной, с префиксом "0b"
int tenMillion = 10_000_000; //между цифрам разрешено добовлять "_" для удобства чтения, появилось в JSE7
long tenBillion = 10_000_000_000L; //суфикс "L" означает что тип числа "long"

Вещественные типы

double simple = -1.234; //
double exponential = -123.4e-2; //-123.4*10^(-2)
double hex = 0x1.Fp10; //1.F*2^10
float floatWithSuffix = 36.6f; //суфикс "f" означает что тип "float"
double doubleWIthSuffix = 4d;
 
Math.abs((a + b) - c) < 0.0001;
//is equivalent to "a + b = c", погрешность вычислений – 0.0001 (1E-4)

Операции инкремента и декремента

int a = 2;
a += a;//return 4
 
a = 2;
a += ++a; //++a вернет значение после изменения, return 5
 
a = 2;
a += a++;//a++ вернет значение до изменения, return 4
 
a = 10; // a = 10
int b = ++a; // префиксный инкремент возвращает новое значение => b = 11 и a = 11
int c = a++; // постфиксный инкремент возвращает старое значение => с = 11 и a = 12
 
int i = 0;
i = i++;
//is equivalent to,
int temp = i; // temp = 0
i++; // i=1
i = temp; // i = 0

Побитовые операции

Операторы сравнения
<, <=, ==
>, >=, !=

boolean операции
! - отрицание
&& - "и", конъюнкция
|| - "или", дизъюнкция
^ - исключающиее "или", XOR
&=, |=, ^= - сокращенная форма

Работа с масивом

Arrays.equals(arr1, arr2); //сравнивает два массива, для одномерных массиовов
Arrays.deepEquals(a, b); //глубокое сравнение двух массивов
Arrays.toString(arr); //распичатать массив
Arrays.deepToString(arr); //распичатать многомерный массив

Интерфейс Queue
Queue работает по FIFO первый зашел первый вышел

//Добавление
boolean add(E e); //если очередь достигла максимального размера, то бросает throw 
boolean offer(E e); /если очередь достигла максимального размера, то возвращает false
 
//Извлечения первого элемента из головы очереди
E remove(); //если очередь пуста, то бросает throw
E poll(); //если очередь пуста, то вернет null
 
//Подсмотреть элемент в голове очереди не удаляя его
E element(); //если очередь пуста, то бросает throw
E peek(); //если очередь пуста, то вернет null

Optional
Optional призванный помочь разработчикам в обработке NullPointerException
JavaDoc
habr

Optional<String> baz = Optional.empty();
baz = Optional.of("baz");
baz = Optional.ofNullable("buz");
baz.ifPresent(System.out::println);
String s = baz.orElse("new baz");
String s = baz.get();

Generices
Если отдавать то использовать "? extends T"
Если принимать то "? super T"

java.lang.Class
Class - объект, который представляет в runtime данные о классе объекта

//Основные методы
static Class<T> forName(String className) //получить класс по имени
String getCanonicalName() //вернет полное имя класса
Fields[] getField(String name)
Class[] getInterfaces() 
Method[] getMethods()
Constructor[] getConstructors()

Collections

Сортировки

//Для List
Collections.sort(words, String::compareTo); //simply
Collections.sort(words, (o1, o2) -> o1.compareTo(o2)); // or custom sorting
//Для Map
        HashMap<String, Double> map = new HashMap<>();
        TreeMap<String, Double> sorted_map = new TreeMap<>((a, b) -> {
            if (map.get(a) >= map.get(b)) {
                return -1;
            } else {
                return 1;
            } // returning 0 would merge keys
        });
        map.put("A", 67.4);
        map.put("B", 67.1);
        map.put("C", 67.4);
        map.put("D", 99.5);
        System.out.println("unsorted map: " + map); //до сортировки
        sorted_map.putAll(map);
        System.out.println("results: " + sorted_map); //после сортировки

Other

Calendar

       Calendar c = Calendar.getInstance();
        c.setTime(new Date());
        c.set(Calendar.HOUR, 16);
        c.getTime();

DataFormat

String dateString =
            new SimpleDateFormat("HH:mm d MMMM", new Locale("ru")).format(updateTime);
Пока не указано иное, содержимое этой страницы распространяется по лицензии Creative Commons Attribution-ShareAlike 3.0 License