> For the complete documentation index, see [llms.txt](https://programmingfundamental.gitbook.io/programmingwithjava/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://programmingfundamental.gitbook.io/programmingwithjava/obektno-orientirano-programirane-1-chast/laboratorno-uprazhnenie-2/nuzhdata-wrapper-class.md).

# Нуждата Wrapper Class

Въпреки, че има примитивни типове в java има нуждата от Wrapper Class, заради допълнителните функционалности който са реализирани в Wrapper Class.

В Wrapper Class се включват методи като:

1. valueOf() - за конвертиране на примитивни типове
2. parseInt() - за конвертиране от String&#x20;
3. toString() - за текстово представяне

Полезни свойства на Wrapper Class:

1. Те преобразуват примитивните типове данни в обекти. Обектите са необходими, ако искаме да променим аргументите, предадени в метод (защото примитивните типове се предават по стойност).
2. Класовете в пакета java.util обработват само обекти и следователно Wrapper Class помагат и в този случай.
3. Структурите от данни в рамката за събиране, като ArrayList и Vector, съхраняват само обекти (референтни типове), а не примитивни типове.
4. Необходим е обект, за да се поддържа синхронизация при многонишково програмиране

Една от основните важни характеристики, предоставени от Wrapper Class, е много полезните методи. Когато имаме стойност с плаваща запетая и искаме да намерим целочислената стойност, тогава имаме специфичен метод за това.

{% tabs %}
{% tab title="Пример" %}

```
import java.io.*;
 
class Application {
 
    public static void main(String[] args) {
 
        Float floatWrap = Float.valueOf(45.158f);
        int floatToInt = floatWrap.intValue();
        System.out.println(floatToInt);
 
        Integer five = Integer.valueOf("101", 2);
        System.out.println(five);
    }
}
```

{% endtab %}

{% tab title="Second Tab" %}

```
45
5
```

{% endtab %}
{% endtabs %}

<br>
