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


Что такое класс-оболочка в Java
Класс-оболочка - это объектное представление примитивных типов данных в java. Целочисленный объект = Целое число (100); int num = obj.intValue (); Вы сталкивались с этим? бокс распаковка? Нет ? Давай начнем! Что такое примитивный тип данных? В java есть большинство основных типов данных, которые служат строительными блоками для манипулирования данными. Они предопределены языком. Язык программирования Java поддерживает восемь примитивных типов данных: boolean, byte,..

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

Вопросы о боксе
Я знаю, что бокс - популярная концепция, о которой доступно много информации, но у меня есть несколько вопросов, на которые я не могу найти ответов: 1) Если упаковка приводит к преобразованию типа значения (структуры) в объект (ссылочный тип) или...
498 просмотров
schedule 04.03.2022

Варианты использования для упаковки типа значения в С#?
Бывают случаи, когда экземпляр типа значения необходимо рассматривать как экземпляр ссылочного типа. В подобных ситуациях экземпляр типа значения можно преобразовать в экземпляр ссылочного типа с помощью процесса, называемого заниматься боксом....
7567 просмотров
schedule 08.03.2023

Является ли приведение к интерфейсу преобразованием бокса?
У меня есть интерфейс IEntity public interface IEntity{ bool Validate(); } И у меня есть класс Employee, который реализует этот интерфейс public class Employee : IEntity{ public bool Validate(){ return true; } } Теперь, если...
3092 просмотров
schedule 26.04.2022

Почему сравнение Integer с int может вызвать исключение NullPointerException в Java?
Мне было очень непонятно наблюдать за этой ситуацией: Integer i = null; String str = null; if (i == null) { //Nothing happens ... } if (str == null) { //Nothing happens } if (i == 0) { //NullPointerException ... } if...
38816 просмотров
schedule 31.05.2022

Следует ли предпочесть общие ограничения использованию интерфейсов в качестве типов параметров?
Рассмотрим эту тривиальную функцию: public static bool IsPositive(IComparable<int> value) { return value.CompareTo(0) > 0; } Теперь, если я передам этому методу int , он будет помещен в коробку. Не лучше ли было бы поэтому...
294 просмотров
schedule 03.12.2022

Каким образом возможно поведение упаковки / распаковки Nullable ‹T›?
Что-то случилось со мной сегодня утром, что заставило меня почесать затылок. Любая переменная типа Nullable<T> может быть присвоена null . Например: int? i = null; Сначала я не мог понять, как это возможно без какого-либо...
6825 просмотров
schedule 10.07.2023

Бокс Native C++ Pointer
У меня есть указатель на собственный класс, и я хочу временно обернуть его в объект. Я предполагаю, что функция System::Reflection::Pointer::Box() была бы подходящей. Однако у меня возникли проблемы с форматированием второго параметра. class A...
677 просмотров
schedule 07.08.2022

Избегание бокса / распаковки при неизвестном вводе
Я создаю приложение, которое анализирует XML и извлекает некоторые данные. Каждый узел xml определяет данные (const), имя столбца набора записей для получения данных из (var), подмножество возможных значений данных в зависимости от некоторого условия...
286 просмотров
schedule 04.05.2022

Могу ли я установить значение структуры через отражение без бокса?
На самом деле, я должен был спросить: как я могу сделать это и оставаться совместимым с CLS? Потому что единственный способ, которым я могу это сделать, заключается в следующем, но использование __makeref , FieldInfo.SetValueDirect или просто...
6037 просмотров
schedule 09.05.2024

Зачем метод Enum HasFlag бокс?
Я читаю «C # через CLR», и на странице 380 есть примечание, в котором говорится следующее: Примечание. Класс Enum определяет метод HasFlag, определенный следующим образом. public Boolean HasFlag(Enum flag); Используя этот метод,...
5258 просмотров
schedule 03.07.2023

Вернуть объект обратно в массив типов значений
Я использую отражение для чтения свойств объекта. Если значение, которое я читаю, является ссылочным типом (например, String[]), я могу преобразовать его в массив Object[] и выполнить цикл по строкам в массиве. String[] Workers = { "Steve",...
443 просмотров
schedule 30.04.2023

Почему String.Concat возвращает True вместо true (то же самое с false)?
Я изучаю темы бокса и распаковки из C # 5.0 в двух словах от Джозефа Альбахари и Бена Альбахари. Copyright 2012 Джозеф Альбахари и Бен Альбахари, 978-1-449-32010-2 , но мне нужно расширить свои знания, и я нашел статью MSDN: Упаковка и...
203 просмотров
schedule 01.04.2023

Преобразование строки в int, допускающий значение NULL
Если _model.SubBrand - строка, есть ли более элегантный способ преобразовать ее в int, допускающий значение NULL? То, что я делаю сейчас, кажется неуклюжим: public int? SubBrandIndex { get { return _model.SubBrand == null ?...
2139 просмотров
schedule 01.06.2023

Зачем .net (все еще) нужен бокс?
Я читал блог Эрика Липперта, особенно по темам о куче, стеке и регистрах, и, насколько я понимаю, решение о размещении переменной в куче или стеке в основном связано со «временем жизни» переменной, т.е. ' или "долгоживущий", и если что-то делается с...
250 просмотров
schedule 09.08.2022

Как получить IntStream из списка‹Integer›?
Я могу думать о двух способах: public static IntStream foo(List<Integer> list) { return list.stream().mapToInt(Integer::valueOf); } public static IntStream bar(List<Integer> list) { return list.stream().mapToInt(x -> x); }...
21195 просмотров
schedule 10.04.2023

Как происходит сравнение в приведенном ниже коде
public class Application { public static void main(String[] args) { Integer a = new Integer(10); Integer b = new Integer(10); int x = new Integer(10); int y = new Integer(10); int p = 10; int q =...
48 просмотров
schedule 10.10.2022

Упакованное значение распаковано, а затем повторно упаковано
FindBugs выдает мне предупреждение о следующей строке, где invoiceNumber — это объект Integer : text.append(String.format("%010d-", (invoiceNumber == null) ? 0 : invoiceNumber)); Предупреждение: «Упакованное значение распаковывается, а...
5400 просмотров
schedule 18.08.2022

Идея. внутренняя ошибка компилятора java возникает, когда я пытаюсь назначить int операции Stream#reduce, но когда Integer - не
Я обнаружил следующее странное поведение потоков позволяет исследовать следующий код: int summaryAge = Person.getPersons().stream() .parallel() //will return surprising result .reduce(0, (intermediateResult, p)...
3639 просмотров

Медленная привязка модели MVC при использовании типов datetime, decimal, GUID и Nullable.
В настоящее время я работаю над проблемой производительности в проекте ASP.Net при отправке данных обратно на наш сервер. Набор данных довольно большой и содержит более 1000 элементов, каждый элемент является экземпляром одной и той же модели...
539 просмотров

Как я могу повторно использовать поле, из которого я переместил значение?
У меня есть какой-то некопируемый тип и функция, которая его потребляет и (возможно) производит: type Foo = Vec<u8>; fn quux(_: Foo) -> Option<Foo> { Some(Vec::new()) } Теперь рассмотрим тип, который чем-то концептуально...
3545 просмотров