Публикации по теме 'unboxing'


Равенство Java, подводные камни автоупаковки и распаковки
Вы, наверное, уже знаете, что оператор Java «==» довольно сложен. Потому что это просто бесполезно в большинстве случаев. В Java вы имеете дело в основном с объектами, и вы не можете использовать оператор «==» для сравнения объектов, вместо этого вы должны использовать метод .equals() . Что касается объекта «==», сравнивайте ссылки на объекты, а не их фактическое содержимое. Несмотря на это, можно увидеть такой код, который не только использует «==» для сравнения объектов, но и работает..

Вопросы по теме 'unboxing'

Почему я не могу распаковать int как десятичное?
У меня есть IDataRecord reader , из которого я получаю десятичную дробь следующим образом: decimal d = (decimal)reader[0]; По какой-то причине это вызывает недопустимое исключение приведения, говоря, что «Указанное приведение...
23878 просмотров
schedule 12.07.2022

распаковка, (разреженные) матрицы и векторная библиотека haskell
Я хотел бы эффективно манипулировать матрицами (полными или разреженными) с помощью векторной библиотеки haskell. Вот тип матрицы import qualified Data.Vector.Unboxed as U import qualified Data.Vector as V data Link a = Full (V.Vector...
1292 просмотров
schedule 28.07.2022

Распаковка просто возвращает указатель на значение внутри упакованного объекта в куче?
В этой статье журнала MSDN автор утверждает (выделено мной): Обратите внимание, что упаковка всегда создает новый объект и копирует биты неупакованного значения в объект. С другой стороны, распаковка просто возвращает указатель на данные в...
653 просмотров
schedule 17.11.2022

Приводит ли передача типа значения в выходной параметр к упаковке переменной?
Я знаю, что упаковка и распаковка относительно дороги с точки зрения производительности. . Что мне интересно: Приводит ли передача типа значения к параметру метода out к упаковке / распаковке переменной (и, следовательно, к снижению...
2795 просмотров
schedule 08.03.2024

Упаковка и распаковка при использовании параметров out и ref
Происходит ли упаковка/распаковка, когда метод принимает параметр out/ref типа ValueType?
3857 просмотров
schedule 23.04.2022

C# — Проблемы с упаковкой/распаковкой/приведением типов целых чисел. Я не понимаю
Я с трудом понимаю это. Рассмотрим следующий пример: protected void Page_Load(object sender, EventArgs e) { // No surprise that this works Int16 firstTest = Convert.ToInt16(0); int firstTest2 = (int)firstTest; // This also works...
5287 просмотров
schedule 11.07.2022

Как создать распакованный экземпляр ADT?
У меня возникли проблемы с поиском хороших ресурсов, которые помогут сделать мои типы данных распакованными для использования в распакованном векторе. Как бы я сделал тип данных data Color = Yellow | Red | Green | Blue | Empty deriving (Show,...
959 просмотров
schedule 26.06.2022

Почему в Java невозможно распаковать стертые типы?
Два метода add в этом классе имеют одинаковую стертую сигнатуру: class extend { Integer add (Integer a, Integer b) { return a + b; } <Type extends Integer> Type add (Type a, Type b) { return a + b; } } Это делает...
67 просмотров
schedule 24.11.2022

Распаковка необходима для кортежей, но не для типов
Может кто-нибудь объяснить следующее, это кажется немного противоречивым. Эта строка кода недействительна: let l = [("Hi", 1); ("Ho", "One")] Потому что кортежи разные, string*int vs string*string OK. Эта строка кода также...
338 просмотров
schedule 26.05.2022

общее литье из объектно-боксового типа
Почему это работает: decimal dec = new Decimal(33); double dd = (double) dec; Console.WriteLine(dd); Но не это: decimal dec = new Decimal(33); object o = (object)dec; double dd = (double) o; Console.WriteLine(dd); Второй пример...
752 просмотров
schedule 02.11.2022

Распаковать число, чтобы удвоить
Существует ли какой-то способ привести неизвестное число к двойному? Например public static double Foo(object obj) { if (!obj.GetType().IsValueType) throw new ArgumentException("Argument should be a number", "obj");...
567 просмотров
schedule 13.12.2022

Почему объекты Integer не распаковываются по сравнению с оператором `==`?
Потому что иногда это сбивает с толку. Скажем: Integer start=new Integer(10); Integer mid=new Integer(10); Integer end=new Integer(20); System.out.println(start<end); // gives true System.out.println(start!=end); // gives true...
139 просмотров
schedule 08.08.2022

Почему операции приведения и преобразования синтаксически неразличимы?
У Stack Overflow есть несколько вопросов о приведении значений в штучной упаковке: 1 , 2 . Решение требует сначала unbox значения и только после этого привести его к другому типу. Тем не менее, коробочное значение "знает" свой собственный тип,...
403 просмотров
schedule 04.12.2022

Распаковка -1 и приведение к Nullable‹int› с использованием дженериков дает InvalidCastException
В этой записи SO я нашел общий метод расширения, который возвращает значение по умолчанию значение, если значение, прочитанное SqlDataReader , равно null или DBNull.Value , и правильно преобразованное значение в противном случае. Я реализовал...
94 просмотров
schedule 03.08.2023

Проблема Findbugs с упаковкой/распаковкой для анализа примитива с помощью Integer.valueOf(String)
У меня есть этот кусок кода: public void someMethod(String id) { someOtherMethod(Integer.valueOf(id)); } public void someOtherMethod(int id) { // do something with id } И во второй строке Findbugs выдает это исключение:...
25637 просмотров
schedule 23.08.2022

Сравнение int и Integer
В случае приведенного ниже кода, int упаковывается в Integer или Integer распаковывается в int? if (mAccount.getValue() != value) { // value is Integer object // do something // mAccount.getValue() returns int }
50 просмотров
schedule 21.06.2022

Делаем Realm & Unbox приятной игрой
Я учусь анализировать JSON в Swift, исходя из Android/Java, и я использую Unbox от Джона Санделла, чтобы помочь мне в этом, что напоминает мне GSON. Ссылка: модуль распаковки Я использую Realm в качестве базы данных для локального хранения...
538 просмотров
schedule 15.10.2023

Распаковка. Копирование полей в стопку в большинстве случаев
Знаменитая книга Рихтера "CLR через C#" Я понимаю, что при распаковке он возвращает указатель на неупакованное значение в куче, но я не могу получить указатель в С#, поэтому выполняется копирование полей из кучи в стек (ответил здесь ). Но,...
92 просмотров
schedule 22.09.2022

Почему невозможно аппликативный обход массивов? (Или это?)
Обдумывая, как лучше всего сопоставить, например, traverse , a -> Maybe a -Клейсли с unboxed vector , я искал существующую реализацию. Очевидно, что U.Vector не является Traversable , но он предоставляет mapM , что для Maybe , конечно,...
247 просмотров
schedule 19.07.2022

Упаковка или распаковка Java
Я нашел пример, в котором я не могу найти количество коробок и распаковок в коде Java ниже: Integer x = 5; int y = x + x; Я бы сказал, что есть один тип распаковки ( int y = x + x ), но я не уверен в этом. Бокс тоже есть?
142 просмотров
schedule 13.07.2023