Вы должны использовать 4545454545l
или 4545454545L
, чтобы квалифицировать его как long
. По умолчанию, 4545454545
является int
литералом, а 4545454545
находится вне диапазона int
.
Рекомендуется использовать прописной алфавит L
, чтобы избежать путаницы, поскольку l
и 1
выглядят довольно похоже
Вы можете сделать:
if(Long.valueOf(4545454545l).equals(Long.parseLong(morse)) ){
System.out.println("2");
}
ИЛИ
if(Long.parseLong(morse) == 4545454545l){
System.out.println("2");
}
В соответствии с JLS 3.10.1 :
Целочисленный литерал имеет тип long, если он суффикс с буквой ASCII L или l (ell); в противном случае это тип int (п. 4.2.1).
ОБНОВЛЕНИЕ - iPhone 0.3 включает MapKit, который, надо надеяться, будет значительно быстрее, чем использование API JS. Аннотация говорит, что будет включать обратное геокодирование.
Вы не можете выполнить запрос непосредственно в цели-C, по крайней мере, не согласно условиям Google API. Google API записан в JavaScript. Вы могли использовать цель-c для моста JS, как Компонент Google Maps делает, но это действительно не решает проблему - Вы все еще выполняете вызовы JS!
К сожалению, это означает Вас, a) должен использовать webview b), должен использовать API JS, который является медленным... соответствуют приложению Google Maps, которое использует совершенно другой протокол ОТЫ (попробуйте пакет, осуществляющий сниффинг его).
Компонент Google Maps является, однако, полезным учебным руководством в том, как выполнить простые вызовы к API.
Самый легкий способ получить карту Google с помощью Какао состоит в том, чтобы использовать "Статические Карты API". На практике необходимо подготовить NSURL, который Вы используете для контакта с Google. Вы возвращаете свою карту как NSData, который Вы преобразовываете к NSImage. Обратите внимание, что можно сделать и геокодирование и обратное геокодирование. Можно также встроить маркеры в карту. Однако Вы освобождаете полные средства управления, у Вас есть доступ к тому, если Вы используете их API JavaScript.
Смотрите на их справочник здесь:
Теперь, когда яблоко имеет, выпускают MapKit API для ОС 3.0, я думаю, что на Ваш вопрос ответили. Посмотрев на документы API, я вижу чертовски много потенциала! Я все еще хотел бы видеть обратный веб-сервис геокодирования от Google, но Yahoo сделает тем временем.
К Вашему сведению: Реверс, геокодирующий API от Google для запросов XML, не общедоступен, таким образом, это недопустимо для использования. Единственный легальный путь проходит их JavaScript-API, который, поскольку Вы узнали, более твердо сделать в Какао, чем просто отправить Запрос HTTP.
Альтернативы: Обратное геокодирование с простыми запросами XML/JSON также доступно с Геоимен или Yahoo.
На самом деле я не сделал предназначенного реверса, геокодирующего как "перевод точки в человекочитаемый адрес", а скорее визуализации точки с помощью Google Map (который может также, в зависимости от уровня точности, показывать человекочитаемый адрес). Это - основная функциональность, которая требовалась.
На практике я просто хотел предложить статические карты API в качестве чистого и быстрого пути к:
1) учитывая координаты, полученные из датчика iPhone GPS, получите Google Map, показывающий точку
2) учитывая адрес, преобразуйте его в соответствующие географические координаты и затем используйте провода для получения Google Map, показывающего данный адрес
Оба - возможный использующий простой NSURLs вовлечение staticmap и гео-сервисов
http://maps.google.com/staticmap? http://maps.google.com/maps/geo?
передача, конечно, необходимых параметров для обеспечения подходящей строки запроса.
С уважением
Большая проблема, конечно, то, что в лицензионном соглашении и Google и Yahoo говорится, что Вы не можете использовать их API в "коммерческом применении". не хотел бы в паб, чтобы приложение на App Store только удалило его и преследуемый Yahoo или Google. В чтении API карты iPhone 3.0 и связанной лицензии это не упоминается, но если Вы хотите, чтобы приложение работало на телефонах, не обновленных....
Существует ли ответ для этого, которое не доберется один в проблеме?
http://blog.cloudmade.com/2009/06/12/how-to-get-forward-geocoding-in-iphone-mapkit/
CloudMade кажется поставщик карт / местоположений с открытым исходным кодом - в приведенном выше сообщении в блоге перечислены подробности о том, как использовать прямое геокодирование.