Как я могу отобразить отрицательный символ в.NET?

translated.Union(fallback)

или (если Человек не реализует IEquatable<Person> идентификатором)

translated.Union(fallback, PersonComparer.Instance)

, где PersonComparer:

public class PersonComparer : IEqualityComparer<Person>
{
    public static readonly PersonComparer Instance = new PersonComparer();

    // We don't need any more instances
    private PersonComparer() {}

    public int GetHashCode(Person p)
    {
        return p.id;
    }

    public bool Equals(Person p1, Person p2)
    {
        if (Object.ReferenceEquals(p1, p2))
        {
            return true;
        }
        if (Object.ReferenceEquals(p1, null) ||
            Object.ReferenceEquals(p2, null))
        {
            return false;
        }
        return p1.id == p2.id;
    }
}
8
задан NotDan 26 August 2009 в 15:15
поделиться

7 ответов

Используйте символ Unicode SUPERSCRIPT MINUS (U + 207B) .

Например:

 7-⁻5 = 13 

EDIT : Или с помощью ЗНАК МИНУС (U + 2212) для минуса:

 7 - ⁻5 = 13 
7
ответ дан 5 December 2019 в 07:35
поделиться

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

7 - (-5) = 13
9
ответ дан 5 December 2019 в 07:35
поделиться

При условии, что вы используете юникод, вы можете использовать истинный знак минус, «-» (U + 2212), а не дефис-минус, «-» ( U + 002D). Просто имейте в виду, что он не совместим с ASCII

Вот ваш пример, показывающий их:

7 - −5 = 13

Кроме того, вот несколько забавных вики-статей о всевозможных строках тире-дефис-минус: http://en.wikipedia.org/wiki/Dash#Common_dashes http://en.wikipedia.org/wiki/Minus_sign#Character_codes

3
ответ дан 5 December 2019 в 07:35
поделиться

Это отличный ресурс по форматным строкам в C #: SteveX Compiled - Format Strings

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

{0:<PositiveFormat>;<NegativeFormat>;<ZeroFormat>}

Например, вот как отобразить отрицательное число в скобках и слово «ноль» вместо 0:

{0:#;(#);Zero}

Используя эту технику, я думаю, вы можете попробовать это с надстрочной версией отрицательного ( (код ASCII U + 207B) в строке отрицательного формата.

{0:#;⁻#;Zero}

HTH, Anderson

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

Традиционно в математической типографии вы используете короткое тире U + 2013 или минус U + 2212 (но не дефис!) Как для двоичного (вычитание), так и для унарного (отрицание) минус, и они различаются пробелами (пробелы до и после двоичного минуса, нет пробела между унарным минусом и числом, которое оно отрицает).

Но если вы хотите еще больше различать унарный, я бы рекомендовал заменить верхний индекс минус U + 207B ( но оставьте интервал вокруг вычитания минус):

7 - ⁻5 = 13

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

Вы можете использовать символ Юникода U + 2212 (знак минуса): 7-−5 = 13

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

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

Unicode «верхний индекс минус» http://www.fileformat.info/info/unicode/char/207b/index.htm

char c = '\u207b';
0
ответ дан 5 December 2019 в 07:35
поделиться
Другие вопросы по тегам:

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