Строковые броски

Помните, что широта и долгота изначально написаны в градусах, я думаю, что вам сначала нужно узнать, какое расстояние представляет 1º, в некоторых книгах и на сайтах говорится, что 1º составляет около 111 км, в зависимости от того, как близко находится пятно от линии экватора, Итак (более или менее):

1º  - 111km, also 1º equals 60'
then 1' should be 1.85km, and 1' equals 60"
then 1" is more or less 0.03km 
so 32.4324" is about 1km

Теперь ... в основном вам нужно теперь ограничить квадрат на основе начального местоположения, для этого просто добавьте / вычтите 32.4324 "к широте и долготе, поэтому попробуй .. давай поедем в Лас-Вегас (используй карты Google)

36.1699412,-115.1398296

Это месторасположение в шестнадцатеричной системе счисления, сын переводит 32,4324 "... это просто ... просто разделить его на 3600 и это 0,009009009, это значение, которое вы должны добавить / вычесть из / из широты / долготы

north bound, after add: 36.1789502
south bound, after substract: 36.1609322
east bound, after add: -115.1308206
west bound, after substract: -115.1488386

, теперь в gmaps попробуйте найти эти границы для ex (северная граница: 36.1789502, -115.1398296), которую вы увидите находится чуть выше исходного местоположения, вы также можете измерить расстояние от исходного местоположения до 1 км, которое более или менее близко к северной границе, которую вы только что рассчитали.

Так что теперь просто запросите вашу базу данных и отфильтруйте ее там, где широта находится между северной границей (36.1609322) и южной границей (36.1789502), а также долготой между западной границей (-115.1488386) и восточной границей (-115.1308206), и это должно выполнять работу. Таким образом, магия заключается в том, чтобы просто добавить / вычесть 0,009009009 в любую точку местоположения.

9
задан cgreeno 30 March 2009 в 14:14
поделиться

9 ответов

Convert.ToString(obj)

Преобразовывает заданное значение в его эквивалентное Строковое представление. Возвратится String.Empty если заданное значение null.

obj.ToString()

Возвращает Строку, которая представляет текущий Объект. Этот метод возвращает человекочитаемую строку, которая чувствительна к культуре. Например, для экземпляра Двойного класса, значение которого является нулем, реализацией Дважды. ToString мог бы возвратиться "0.00" или "0,00" в зависимости от текущей культуры UI. Реализация по умолчанию возвращает полностью определенное название типа Объекта.

Этот метод может быть переопределен в производном классе для возвращения значения, которые значимы для того типа. Например, базовые типы данных, такие как Int32, реализуют ToString так, чтобы он возвратил строковую форму значения, которое представляет объект. Производные классы, которые требуют большего количества управления форматированием строк, чем ToString, обеспечивают, должен реализовать IFormattable, метод ToString которого использует свойство CurrentCulture текущего потока.

(string)obj

Это - операция броска, не вызов функции. Используйте его, если Вы уверены, что объект имеет строку типа, ИЛИ это имеет неявный или явный оператор, который может преобразовать его в строку. Возвратится null если объект null AND of type String or of type which implements custom cast to string operator. See examples.

obj as string

Безопасная операция броска. То же как выше, но вместо того, чтобы выдать исключение это возвратится null если брошенная операция перестала работать.


Подсказка: не забывайте использовать CultureInfo с obj.ToString() и Convert.ToString(obj)

Пример:

12345.6D.ToString(CultureInfo.InvariantCulture);          // returns 12345.6
12345.6D.ToString(CultureInfo.GetCultureInfo("de-DE"));   // returns 12345,6
Convert.ToString(12345.6D, CultureInfo.InvariantCulture); // returns 12345.6
Convert.ToString(12345.6D, CultureInfo.GetCultureInfo("de-DE"));  // 12345,6
Convert.ToString(test);  // String.Empty, "test" is null and it's type
                         // doesn't implement explicit cast to string oper.
Convert.ToString(null);  // null
(string) null;           // null
(string) test;           // wont't compile, "test" is not a string and
                         // doesn't implement custom cast to string operator
(string) test;           // most likely NullReferenceException,
                         // "test" is not a string,
                         // implements custom cast operator but is null
(string) test;           // some value, "test" is not a string,
                         // implements custom cast to string operator
null as string;          // null

Вот пример пользовательского оператора броска:

public class Test
{
    public static implicit operator string(Test v)
    {
        return "test";
    }
}
20
ответ дан 4 December 2019 в 06:35
поделиться

Преобразовать. ToString () возвратит пустую строку, если объект будет пустым.ToString, и (Строка) выдаст исключение. Преобразовать. ToString внутренне назовет.ToString (), если значение будет нулевым, то он возвратит пустую строку.

5
ответ дан 4 December 2019 в 06:35
поделиться
  • .ToString() может быть назван от любого объекта. Однако, если тип, Вы обращаетесь к нему, не имеет хорошей реализации, значение по умолчанию должно возвратить имя типа, а не что-то значимое об экземпляре того типа. Этот метод наследован от основы Object введите, и можно перегрузить его в собственных типах, чтобы сделать независимо от того, что Вы хотите.

  • (string) бросок, не вызов функции. Необходимо только использовать это, если объект, в котором Вы нуждаетесь уже, является строкой в некотором смысле, или если Вы знаете, что существует хорошее неявное доступное преобразование (как от int). Это выдаст исключение, объект, не может быть преобразован (включая то, когда объект null)

  • as string другой путь состоит в том, чтобы записать (string), но это отличается, в котором это возвращается null вместо того, чтобы выдавать исключение, если состав исполнителей перестал работать.

  • Convert.ToString() попытки на самом деле преобразовать аргумент в строку. Это - наилучший вариант, если Вы действительно не знаете много об аргументе. Это может быть медленно, потому что это должно сделать большую дополнительную работу для определения, какие результаты для возврата, но та же самая работа также делает это самой устойчивой опцией, когда Вы не знаете очень много об аргументе. Если ничто иное не будет доступно, то это отступит к вызову аргумента .ToString() метод.

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

  • Serialization Это немного более сложно, но .NET включает пару различных механизмов для преобразования объектов в представление, которое может быть безопасно сохранено и перезагружено от диска или другого механизма потоковой передачи. Это включает бинарный форматтер, но чаще всего включает преобразование в строку в некотором формате или другом (часто xml). Сериализация является соответствующей, когда Вы хотите позже преобразовать свою строку назад в, она порождает тип, или если Вы хотите полное представление составного типа.

8
ответ дан 4 December 2019 в 06:35
поделиться

object.ToString() самый основной способ получить строковое представление объекта и может быть конкретно реализован объектом.

Convert.ToString() подробно останавливается на этом и обеспечивает некоторые определенные перегрузки для типов примитивов (символ, байт, интервал, дважды, и т.д.), которые допускают некоторую более определенную для типа функциональность (как основное преобразование, например)

(string) оператор кастинга и будет только работать, если тип является или строкой или имеет неявный или явный оператор, который может преобразовать его в строку. Иначе Вы доберетесь InvalidCastException

2
ответ дан 4 December 2019 в 06:35
поделиться

Не забывать as string

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

ToString () является методом объекта, и он будет всегда работать над ненулевой ссылкой, таким образом, Вы получите что-то, но является ли это, что-то - то, что Вы хотите, другой историей.

Преобразовать. ToString () приведет к тому же результату в большинстве случаев, но не так гибок как Объект. ToString (), поскольку Вы не можете передать пользовательские правила форматирования.

(строка) бросит Ваш объект представить в виде строки, и если это не будет строка затем, то Вы получите InvalidCastException ().

0
ответ дан 4 December 2019 в 06:35
поделиться

Подумай.

ToString является виртуальным методом, и каждый тип может реализовать его однако, он хочет. Также Система. Объект обеспечивает реализации по умолчанию так, чтобы он всегда успешно выполнился. Преобразовать. ToString работает только с пустыми указателями также и позволяет Вам использовать IFormat provier, как отмечено в комментарии.

Кастинг для строкового представления требует объекта реализовать оператор кастинга. Снова, типы могут реализовать его однако, им нравится, но большинство типов не делает, таким образом, можно получить исключение здесь.

Используйте.ToString в качестве своего наилучшего варианта.

0
ответ дан 4 December 2019 в 06:35
поделиться

Не придираться к мелочам, но null допустимое значение для a String объект. Поэтому (string) null не выдает исключений. Попробуйте его сами:

using System;

namespace Test
{
    class Program
    {
        public static void Main(string[] args)
        {
            string s = (string) null;
            Console.WriteLine(s);
        }
    }
}
0
ответ дан 4 December 2019 в 06:35
поделиться

.ToString () является методом экземпляра, который просит у объекта его строковое представление. Когда объект будет несуществующим, это выдаст исключение.

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

Преобразовать. ToString () делает немного больше проверки, чем простой бросок, давая более устойчивую альтернативу броску. Это возвратит пустую строку, когда объект будет несуществующим.

0
ответ дан 4 December 2019 в 06:35
поделиться
Другие вопросы по тегам:

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