JC13 - Lecture 01. Java Intro
Mirantis Java Сourse 2013 (back)
Lecture 01. Java Intro
История и введение в язык программирования Java и платформу JVM.
Основная IDE - IntelliJ IDEA 12 Community Edition.
Практическое задание (на занятии) #1
Убедиться в наличии Oracle JDK 6/7, скачать и установить при необходимости. Убедиться в работе консольных приложений javac и java.
Попробовать написать простейший “Hello, World!”, скомпилировать его и запустить.
Написать чуть более сложную программу, которая читает из потока ввода
int n
иString name
иn
раз выводит сообщениеCase #<номер итерации>: Hello, <name>
.
Практическое задание (на занятии) #2 / Домашнее задание
Заданием является набор задач, которые необходимо решить на сайте acm.sgu.ru/univer с использованием компилятора Java 6 + Checkstyle
(JAVA-X
). Только решения отправленные с использованием этого компилятора будут засчитываться. После регистрации на этом сайте, вам необходимо прислать мне свой идентификатор на нем, чтобы я мог смотреть ваши решения (например, QWE
).
Список задач для решения: 100, 251-260, 404, 405, 410.
Я советую начать с задания #100, далее на странице архив задач вы можете видеть сколько человек решили ту или иную задачу и таким образом выбирать более простые задачи для решения в первую очередь.
Далее следуют некоторые примеры, которые помогут вам в решении этих задач.
- A + B
1 2 3 4 5 6 7 8 9 10 11 12 |
|
- Сортировка массивов
1 2 |
|
Так же для того чтобы задать отношение сравнимости вы можете использовать интерфейсы Comparable
и Comparator
.
- Коллекции в Java (java.util.*)
1 2 3 4 5 6 7 8 9 10 11 |
|
В ходе решения задач вы можете встретить следующие ошибки:
OK
- тест пройден;WA
- неправильный ответ на тест;PE
- ошибка вывода (тестирующая программа не смогла понять, что вы вывели);TL
- ваша программа превысила ограничение по времени на тесте и была прервана;ML
- ваша программа превысила ограничение по памяти на тесте и была прервана;RE
- ваша программа прервалась с ошибкой времени исполнения (деление на 0, выход за границу массива и т.п.);SD
- ваша программа ничего не делает и не расходует процессорное время (например ожидает ввод с клавиатуры или это такой “хитрый” RE).
Так же на стадии компиляции осуществляется style check, поэтому вы можете получить ошибку компиляции в случае плохо отформатированного кода.
Для успешной компиляции убедитесь, что ваша программа удовлетворяет следующим требованиям:
- отступы расставлены в количестве 4 пробела на каждый уровень вложенности (используя IDEA это будет получаться автоматически даже при нажатиях Tab);
- у всех управляющих конструкций тело обрамлено фигурными скобками (для if, for, if .. else, while и др.);
- бинарные операторы (+, -, /, *, == и др.), а так же оператор присваивания (=) окружены единичными пробелами;
- классы, поля и имена переменных названы в соответствии с общепринятыми стандартами в Java (например, для классов Solution, Pair, ArraySet, для остальных i, index, totalCount и т.п.);
- не используйте более одного оператора в строке;
- используйте фигурные скобки так, как по умолчанию их расставляет IDEA (фигурная открывающаяся на той же строке через пробел, закрывающаяся на отдельной).
Если это не помогло, то:
- при помощи сочитания клавиш Ctrl+Alt+L переформатируйте исходный код решения, если он изменился, то это может стать причиной исправления ошибки;
- прочитайте отчет тестирующей системы по ссылке с Compilation Error из раздела “статус”.