Професионална програма
Loading...
v.krastev avatar v.krastev 54 Точки

[Programming Fundamentals] Референции на стрингове

Здравейте!

задача трета от Arrays and List Algorythms от extended модула. Направих я с мехурчето - направих и swap като на лекцията. въпросът ми е - очевидно стринговете също се предавата само стойности и трябва изрично да се уточни ref предаване, иначе метода не работеше. дотук добре, но защо когато къ отделния метод BubbleSort изпратя ка аргумент масив от стрингове, няма нужда да предавам референция? за Swap метода, където предавам само два стринга трябва референция задължително, за другия метод - където като параметър е масива - не ми иска референция към целия масив. защо?

благодаря предварително!

Тагове:
0
Programming Fundamentals 03/07/2017 18:28:32
sevgin0954 avatar sevgin0954 557 Точки

Защото масива е референтен тип а стринга също е референтен но е immutable тоест не може да се променя и когато го промениш връща нов стринг.Прочети за разликата между рефернтни и стоиностни типове

1
simeon3000 avatar simeon3000 265 Точки

И освен това,  не мисля че това Swap-ване заслужава да му отделяме цял метод :

temp = a;  a = b;  b = temp;

Нека си стои вътре в метода за сортиране, където му е мястотоsmiley

 

0