Непроменљиви низ у Јави: Све што треба да знате



Овај чланак ће вам пружити детаљно и свеобухватно знање о непроменљивом низу у Јави, зашто је то важно?

Суочавање са непроменљивим низом у је веома важан аспект у било ком програмском језику. У овом чланку ћемо разговарати о следећим упутама:

претворити двоструко у инт

Увод у непроменљиви низ у Јави

У спремишту низова налазе се објекти низа који се кеширају због чега је низ непроменљив. Више клијената дели кеширане литералне низове. Ризици укључени у радњу једног клијента утицали би на све остале клијенте.





На пример, када клијент промени вредност низа „Тест“ у „ТЕСТ“, сви остали клијенти ће видети промењену вредност. Како је кеширање објеката низа било важно за перформансе, класа Иммутабле Стринг је избегла ризик. Такође, Стринг је завршен тако да инваријант класе Стринг неће бити угрожен. Пример Непроменљивост, Кеширање, прорачун хеш кода урађен проширењем и поништавањем понашања.

Хасхмап Кеи

Кључ ХасхМап је веома популаран, непроменљивост је веома важна како би се објект вредности могао преузети из ХасхМап-а. Хасхинг је принцип ХасхМап-а, који захтева да исти има вредност за правилно функционисање. Два различита хешкода се производе један у време уметања, а други у тренутку преузимања када се садржај мења након уметања, потенцијално губећи вредност вредности мапе на мапи.



Хасхтабле-непроменљиви низ у Јави
Непроменљива класа низа у Јави је најчешће постављана .Дискусија започиње са тим шта је Стринг, по чему се разликује од Стринга у Ц ++-у, а затим следи питање непроменљиви објекти у Јави, предности непроменљивог објекта, каква је њихова употреба и сценарији за њихову употребу.

Потреба за непроменљивим низом у Јави

Два су разлога важна да се каже зашто се класа Иммутабле Стринг прави у Јави:

1. Уопште није могуће имати један објект / литерал низа.



Позовимо се на доњи пример:

Много референтних променљивих може се упутити на „тест“. Ако неко од њих промени вредност за друге, то ће такође утицати. Да видимо како.

Низ А = 'Тест'
Низ Б = 'Тест'


Стринг А који се назива „Тест“ .тоУпперЦасе () који исти објект мења у,'ТЕСТ'тако да ће Б такође бити „ТЕСТ“ што није потребно. Испод је дијаграм који нам говори како се Стринг ствара у меморији гомиле и у литерарном спремишту Стринг.

подеси јава цласспатх виндовс 7

2. Низ се широко користио као параметар за многе Јава класе. На пример, када отворимо мрежну везу, можемо као низ проследити име хоста и број порта, а за отварање везе са базом података УРЛ базе података можемо проследити као низ.


Непроменљиви низ могао би довести до озбиљних безбедносних претњи. На пример, неко може приступити датотеци којој има приступ, а затим променити име имена датотеке да би добио приступ другој датотеци. У случају непроменљивости, не треба бринути због ових претњи.

Непроменљиви низ такође може безбедно да дели нити, што је важно за вишенитно програмирање. Непроменљива инстанца низа је заштићена нитима у Јави, тако да нема потребе за спољном синхронизацијом операције Стринг да би се избегли проблеми са синхронизацијом у Јави. Још једна важна ствар коју треба приметити је цурење меморије узроковано Субстринг-ом, што није питање везано за нит, већ нешто о чему треба бити свестан.

Овим смо дошли до краја овог чланка „Непроменљиви низ у Јави“. Ц. извините Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250.000 задовољних ученика раширених широм света. Едурекин курс за обуку и сертификацију Јава Ј2ЕЕ и СОА дизајниран је за студенте и професионалце који желе да буду Јава програмер.

Имате питање за нас? Молимо вас да га спомињете у одељку за коментаре овог блога и јавићемо вам се што је пре могуће.