Простая практика программирования (Шум Шипения, Начала Печати) [закрытый]

SimpleDateFormat, как указывает его имя, форматирует даты. Не календарь. Поэтому, если вы хотите отформатировать GregorianCalendar с помощью SimpleDateFormat, сначала необходимо преобразовать календарь в дату:

dateFormat.format(calendar.getTime());

И то, что вы видите напечатано, - это представление календаря toString (). Предполагаемое использование - отладка. Он не предназначен для отображения даты в графическом интерфейсе. Для этого используйте (Simple) DateFormat.

Наконец, чтобы преобразовать из String в Date, вы также должны использовать (Simple) DateFormat (его метод parse()), а не разделять строку как вы это делаете. Это даст вам объект Date, и вы можете создать календарь из Даты, установив его (Calendar.getInstance()) и установив свое время (calendar.setTime()).

Мое мнение было бы: Google не работает решение здесь. Чтение документации API - это то, что вам нужно сделать.

7
задан robintw 27 August 2008 в 12:50
поделиться

7 ответов

Я работал над http://projecteuler.net/

12
ответ дан 6 December 2019 в 06:15
поделиться

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

На самом деле кодирование в газете сосет, и это позволяет Вам почти ничего не изучить. Рабочая среда действительно имеет значение настолько вводящая на компьютере, компиляции, видя, какие ошибки Вы совершили, использование осуществляют рефакторинг тут и там, просто не выдерживает сравнение с тем, что можно сделать на листке бумаги и так, что можно сделать на листке бумаги, будучи интересным умственным осуществлением не практичен, это не улучшит навыки кодирования так.

С другой стороны, можно разработать архитектуру носителя или даже сложного приложения вручную в газете. На самом деле я обычно делаю. Инженерные инструменты (такие как Архитектор Предприятия) не достаточно хороши для замены пользы, которую все вручную схематически изображают.

Хорошие проекты могли быть, Как Вы разработаете игровой механизм? Классы, Потоки, устройство хранения данных, Физика, структуры данных, которые будут содержать все и так далее. Как Вы запустили бы поисковый двигатель? Как Вы разработали бы систему распознавания образов?

Я нахожу такие проблемы намного более полезными, чем какая-либо бумага, кодирующая Вас, может сделать.

5
ответ дан 6 December 2019 в 06:15
поделиться

Проблема: Вставьте + или - знак где угодно между цифрами 123456789 таким способом, которым выражение оценивает к 100. Условие состоит в том, что порядок цифр не должен быть изменен.

например: 1 + 2 + 3 - 4 + 5 + 6 + 78 + 9 = 100

Проблема программирования: Запишите программу в своем любимом языке который выводы все возможные решения вышеупомянутой проблемы.

6
ответ дан 6 December 2019 в 06:15
поделиться

Существуют некоторые хорошие примеры вопросов о программировании простого выхода в статье Five Essential Phone Screen Questions Steve Yegge (под областью Номер Один: Кодирование). Я нахожу, что они довольно хороши для того, чтобы сделать на пере и бумаге. Кроме того, вопросы при Дизайне ООП в той же статье могут быть сделаны на пере и бумаге (или даже в Вашей голове) и, я думаю, хорошие упражнения, чтобы сделать.

3
ответ дан 6 December 2019 в 06:15
поделиться

Башни Hannoi являются большими для практики на рекурсии.

Я также сделал бы поиск по демонстрационным вопросам об интервью программирования.

1
ответ дан 6 December 2019 в 06:15
поделиться

Мне также нравится Эйлер проекта, но я хотел бы указать, что вопросы становятся действительно хитрыми действительно быстро. После первых 20 вопросов или так, они начинают быть проблемами, большинство людей не сможет выяснить в 1/2 час. Другая проблема состоит в том, что многие из них имеют дело с математикой с действительно большими количествами, которые не вписываются в стандартное целое число или даже долгие типы переменных.

1
ответ дан 6 December 2019 в 06:15
поделиться

Довольно много онлайн-сайтов для конкурентоспособного программирования полны демонстрационных вопросов/проблем, отсортированных по 'трудности'. Довольно часто более простые категории в вопросах 'об алгоритмах' подошли бы Вам, я думаю.

Например, проверьте TopCoder (раздел алгоритмов)!

Кроме этого, 2 образцов:

  1. Вам дают список точек N в плоскости их координаты (x_i, y_i), и число R> 0. Произведите максимальное количество из N, данного вопросы, на которые может одновременно ответить диск радиуса R (для бонусных очков: сложность?).

  2. Вам дают массив чисел N a1 к, и Вы хотите вычислить a1 * a2 * ... * aN / ai для всех значений меня (таким образом, вывод является снова массивом элементов N), не используя подразделение. Предоставьте (ненаивный) метод (сложность должна быть в O (N) умножением).

1
ответ дан 6 December 2019 в 06:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: