Инструменты пользователя

Инструменты сайта


develop:java:over

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
develop:java:over [2023/01/06 12:05]
admin
develop:java:over [2023/05/05 04:22] (текущий)
admin [Сведения]
Строка 7: Строка 7:
 Установка ubuntu\\ Установка ubuntu\\
 <code bash> <code bash>
-snap install intellij-idea-community --classic --edge+snap install intellij-idea-community --classic --stable
 apt install default-jre (java --version) apt install default-jre (java --version)
 apt install default-jdk (javac --version) apt install default-jdk (javac --version)
Строка 16: Строка 16:
 ===== Сведения ===== ===== Сведения =====
 [[https://www.oracle.com/java/technologies/downloads|Downloads]]\\ [[https://www.oracle.com/java/technologies/downloads|Downloads]]\\
-{{:develop:java:2023-01-05_17-03.png?direct&600|}}+{{:develop:java:2023-01-05_17-03.png?direct&600|}}\\ 
 +[[https://habr.com/ru/articles/488144/|Про версии]]\\
  
 Разнообразие терминов/комплектов вызывает сложности т.к. несколько проекций, по сути сводится вот к чему:\\ Разнообразие терминов/комплектов вызывает сложности т.к. несколько проекций, по сути сводится вот к чему:\\
Строка 60: Строка 61:
 :!: Строки принимают шестнадцатеричные юникод последовательности типа "\u0000 - \uFFFF". Причем даже в комментарии может распознать и применить, например такой коммент приведет к ошибке "c:\users" т.к. есть "\u" О_О\\ :!: Строки принимают шестнадцатеричные юникод последовательности типа "\u0000 - \uFFFF". Причем даже в комментарии может распознать и применить, например такой коммент приведет к ошибке "c:\users" т.к. есть "\u" О_О\\
  
 +
 +=== Типы ===
 :!: Тип boolean не конвертируется в числовое значение !\\ :!: Тип boolean не конвертируется в числовое значение !\\
  
Строка 81: Строка 84:
 Символьные строки сравниваются только методом **mystring.equals()**, оператор "==" только проверит хранятся ли они в одном участке памяти, так же есть метод **compareTo()**\\ Символьные строки сравниваются только методом **mystring.equals()**, оператор "==" только проверит хранятся ли они в одном участке памяти, так же есть метод **compareTo()**\\
 **null** и **length 0** разные вещи\\ **null** и **length 0** разные вещи\\
 +
 +
 +
 +=== Ввод/Вывод ===
 +:!:Консольный ввод. Нужен объект "Scanner"\\
 +<code java>
 +import java.util.*;
 +
 +Scanner in = new Scanner(System.in);
 +String allLine = in.nextLine();
 +String oneWord = in.next();
 +int oneDigit = in.nextInt(); /nextDouble(); 
 +
 +// Еще есть тайный ввод
 +Console cons = System.console();
 +String username = cons.readLine ("User name: ");
 +char[] passwd = cons.readPasswi:Jrd ("Password: ") ;
 +</code>
 +
 +{{:develop:java:2023-01-06_21-04.png?direct&600|}}
 +{{:develop:java:2023-01-06_21-12.png?direct&600|}}
 +
 +:!: Начальный каталог определяется виртуальной машиной, если запускать из IDE то путь хз какой будет\\
 +
 +:!: При запуске программы можно задать ей файлы для стандартных потоков ввода/вывода, например **"java MyProg < inFile.txt > outFile.txt"**\\
 +
 +
 +
 +=== Управляющие конструкции ===
 +:!: **Дробные числа** нужно быть очень внимательным с ними и пользоваться всякими спец методами для работы с ними, например:
 +<code java>
 +// Этот цикл никогда не завершится
 +for (double x = 0; x != 10; x += 0.1)
 +  // x перескочит с 9.99..998 на 10.999..9998. т.к. у 0.1 не существует точного двоичного представления
 +</code>
 +
 +
 +
 +=== Массивы ===
 +Инициализируются отдельно, оператором **new**, int и boolean заполняются нулями и false с-но, объекты, в т.ч. **String**, заполняются значением **null**\\
 +
 +:!: **for each** (условно). Перебираем элементы коллекции или класса если определен интерфейс "Iterable"\\
 +"for (int item: ArrayItems) {...}"
 +
 +В операции "[]" автоматически проверяются границы массива\\
  
  
develop/java/over.1673006719.txt.gz · Последнее изменение: 2023/01/06 12:05 — admin