Другое событие NullPointerException
возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.
String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals
для гарантированного непустого объекта.
Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null
.
Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.
String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
там существует довольно много программ распознавания речи, из которых дракон NaturallySpeaking , я думаю, один из наиболее широко используемых. Я использовал его сам и был впечатлен его качеством. Тот являющийся несколько лет назад, я предполагаю, что вещи улучшились еще больше к настоящему времени.
Даже при том, что это работает удивительно хорошо, я не скажу, что это - легкое решение. Это занимает время для обучения программы, и даже тогда, это сделает ошибки. Это кропотливо медленно по сравнению с вводом, таким образом, я должен был продолжать говорить мне, "Не захватывают клавиатуру, не захватывайте клавиатуру..." (после которого я захватил бы клавиатуру так или иначе). Я сам склонен бормотать немного, который не сделал вещи намного лучше, также;-). Особенно первые недели могут быть печальными. Можно даже добраться связанные с речью проблемы при напряжении речи слишком много .
, В целом, это - конечно, осуществимое решение для людей, пишущих обычный текст / проза . Как программист, Вы находитесь в совершенно другой области, для которой нет никаких действительных решений. Вещи, возможно, изменились к настоящему времени, но я буду удивлен, имеют ли они.
, Какова проблема? Программное обеспечение Most SR создается для распознавания нормального языка. Программисты пишут очень загадочный материал, и трудно, если не невозможный, для нахождения программного обеспечения, которое делает преобразование между нормальным языком и кодом. Например, как был бы Вы диктовать:
if (somevar == 'a')
{
print('You pressed a!');
}
Используя команды в Вашей средней программе SR, это - огромная боль: "если написание апострофа знака "равно" знака "равно" левой скобки пространства апостроф...". И я даже не говорю [приблизительно 118] навигация Ваш код. Когда-нибудь замеченный, сколько Вы используете клавиатуру при программировании, и как отличающийся, который использование от того, как 'нормальный' пользователь использует клавиатуру?
К настоящему времени, я только работал с Драконом NaturallySpeaking (DNS), таким образом, я могу только говорить за тот продукт. Существуют некоторые интересные дополнения и веб-сайты, предназначенные для людей как программисты:
кажется, что лучшее решение этой проблемы, действительно:
Я не могу найти ссылку на одну (я действительно смотрел), но существуют клавиатуры только с 5 ключами, позволяя Вам ввести одной рукой, я предполагаю, что у Вас только одно больное запястье.
, Если я нахожу ссылку, я попытаюсь передать Вас.
Я использовал Дракона, Диктуют в 1996 по той же причине как Вы. Это было медленное движение, но лучше, чем не работа. Я нашел легче записать код, заполнившись 4x8 белая доска кодом и затем заставив кого-то еще ввести его. Тогда я использовал DD для отладки.
И в то время как Вы в нем, Вы могли бы посмотреть Deborah Quilter книги о RSI. Они очень информативны.
Scott Hanselman распознавание речи использования вполне немного .
Как упомянуто выше, Дракон, Естественно Говорящий, является лучшим программным обеспечением для распознавания речи там, однако Microsoft Speech Recognition не далека позади и приезжает связанная Vista.
Vocola был недавно портирован к MSR и имеет.Net функцию интеграции.
Несколько подсказок
Золотой стандарт для программирования речью VoiceCode. Если я помню правильно, они поддерживают C++ и Python.
Я начал использовать левую руку для мыши, это не только помогает мне немного, но и позволило мне использовать правую руку более свободно, если Вы пишете много материала dwon, в то время как Вы кодируете, это помогает Вам много.. можно прокрутить и записать одновременно...
, Когда мои проблемы начались, я положил водную сумку под запястье, я любил его! сумка, которую я имел, была прекрасна, это было длинно, и я поместил его перед клавиатурой, таким образом, я мог дать отдых запястьям там.... до одного дня, я ступаю на него...
Я попробовал Дракона несколько лет назад, и это был кошмар слов, из которых mish-делают-пюре, и фраз - не рекомендуемый. Я понимаю, что это была лучшая вещь, идущая в то время, таким образом, я не оптимистичен.
Как такой же больной, рекомендации были бы:
Я знаю, что я немного вне темы здесь, и ничего не знаю о программном обеспечении распознавания речи; однако, Вы могли бы найти полезным исследовать изменение Вашей клавиатуры к расположению Dvorak, которое я услышал, намного более добро на запястьях.
Другая идея состоит в том, чтобы найти другого хорошего разработчика к парной программе с. Это работало действительно хорошо на меня. Я добираюсь, чтобы опереться моими руками без необходимого замедления, закончить тем, что произвел лучший качественный код - или по крайней мере не имел для рассмотрения такого количества его.
Я диктую VB.net и TSQL использование Профессионала дракона NaturallySpeaking 10. VB.net по сути ближе к "говорившему" языку, но я не вижу оснований, почему они не могли работать на C# или других. Я запускаю с абсолютно пустого словаря и создаю его с нуля для удовлетворения моим потребностям (который является, почему я использую профессиональную версию).
Вот основные шаги (это предполагает, что Вы уже создали и обучили пользователя):
я опишу что-то с большим количеством детали, когда я получу шанс, если кому-либо интересно.
Редактирование:
Вот то, как к диктуют код SQL . Список слов, созданный здесь, может быть включен в другие словари, если Вы - разработчик базы данных.
Относительно проблемы запястья, я изучил мышь использования обеими руками приблизительно 10 лет назад.
Это удивительно легко, и снимает напряжение существенно. В настоящее время я использую ноутбук и нажимаю, кнопка сенсорной панели напрягает мой ползунок.
Быть осторожным. Эти проблемы могут продлиться путь дольше, чем можно было бы думать.
<час>p.s. Вы могли бы добавить тег 'эргономика' или что-то - заголовок виден, чтобы быть [приблизительно 110] разработкой для распознавания речи.
Дракон, естественно говорящий, предпочитает и вокола. Autohotkey максимально автоматизировать. Однако запрограммировать непросто. Я попытался; почти невозможно. Посмотрите «Исцеляющую боль в спине» Джона Сарно. Мне стало лучше. Я весь день возвращаюсь к программированию!