Другое событие 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));
}
Проверьте SQLite, это - библиотека программного обеспечения, которая реализует автономное, serverless, нулевую конфигурацию, транзакционный механизм базы данных SQL.
Это имеет многих обертки для.NET
SQL Server Howabout 3.5/2008 Компактный Выпуск? Аккуратная встроенная версия SQL Server.
http://www.microsoft.com/Sqlserver/2008/en/us/compact.aspx
Работы, довольно любезные с.NET, и конечно, все Ваши обычные инструменты SQL Server и сценарии хорошо работают.
SQLite является большим.
Также выезд Firebird встраивается. Это мог бы быть более оптимальный вариант, если многочисленные пользователи должны получить доступ к базе данных в будущем.
Вы можете посмотреть на VistaDB, если пишете в .NET. Это 100% управляемый код, содержит истинную ссылочную целостность, сохраненные в tsql процессы, процедуры clr и многое другое в одной сборке, которую можно развернуть с помощью xcopy.
VistaDB работает на сайтах общего хостинга asp.net со средним доверием, а также в доменах активных каталогов в качестве гостя (без локальных разрешений).
На машине, на которой установлен ядро, не требуются параметры реестра или другие параметры конфигурации, и среда выполнения бесплатна.
32/64 бит поддержка включена в единую сборку. Механизмы смешанного режима с неуправляемым кодом, как правило, требуют, чтобы вы поставили более 1 версии неуправляемого кода для поддержки 32- и 64-разрядных или перекомпилировали для конкретных целей ЦП.
См. Преимущества VistaDB SO поток для получения дополнительной информации.