ورود

View Full Version : سوال: رشته ها ؟



qweewq22
جمعه 09 اردیبهشت 1390, 23:51 عصر
سلام به اساتید بزرگ
می خواستم بدونم خطی که با *** مشخص شده دقیقا چه کاری را انجام میدهد :متفکر:



String str1, str2;
str1 = "Free the bound periodicals.";
str2 = str1;
System.out.println("String1: " + str1);
System.out.println("String2: " + str2);
System.out.println("Same object? " + (str1 == str2));

***str2=new String(str1);
System.out.println("String1: " + str1);
System.out.println("String2: " + str2);
System.out.println("Same object? " + (str1 == str2));
System.out.println("Same value? " + str1.equals(str2));

alaaaa
شنبه 10 اردیبهشت 1390, 09:55 صبح
همونطور که می دونی همه چی تو جاوا reference . به همین خاطر تو سطر 3 ، str2 یه reference جدید می شه برای مقدار str1.
ولی تو سطر 7 از روی str1 یک object جدید ایجاد می شه که str2 یه reference برای اونه. در این حالت str1 و str2 دارای مقادیر یکسانی هستند ولی هر کدوم به جاهای مختلفی reference شدند. دقیقاً یه چیزی شبیه اشاره گر در C++