مقالات تخصصی برنامه نویسی اندروید

اموزش برنامه نویسی اندروید

مقالات تخصصی برنامه نویسی اندروید

اموزش برنامه نویسی اندروید

۳ مطلب با موضوع «متغیرها» ثبت شده است

  • ۰
  • ۰

 ارسال کردن پارامتر به متُد، کاری بسیار راحت است، اما کمی مفهوم پیچیده‌ای دارد. در حالت کلی به سه شکل می‌توان به متُد‌ها پارامتر‌هایی را ارسال کرد که عبارت هستند از Call By Value، Call By Pointer، Call By Reference.

 

نکته‌ای که وجود دارد این است که بسیاری از برنامه نویسان جاوا معتقدند که جاوا Call By Value است و عده‌ای دیگر نیز معتقد‌ند که جاوا Call By Reference است. اینکه جاوا را چه می‌نامند اصلا اهمیتی ندارد، بلکه مهم این است که شما رفتار جاوا را بدانید که در هر وضعیت چگونه عمل می‌کند.

  • ۰
  • ۰

 

شما می توانید رشته هایی از متن را در داخل array ها قرار دهید. این کار درست به روش اعداد صحیح انجام می شود:

String[ ] aryString = new String[5] ;

 

aryString[0] = "This";

aryString[1] = "is";

aryString[2] = "a";

aryString[3] = "string";

aryString[4] = "array";

 

کد بالا یک رشته array را با 5 موقعیت تنظیم می کند. سپس متن به هر موقعیت در array اختصاص داده می شود.

در اینجا یک loop را مشاهده می کنید که در همه ی موقعیت های array قرار گرفته و هر چیزی را که در موقعیت ها وجود دارد، چاپ می کند:

int i;

for ( i=0; i < aryString.length; i++ ) {

System.out.println( aryString[i] );

}

 

هنگامی که مقدار متغیری بع نام I کمتر از طول array به نام aryString باشد، loop به چرخش خود ادامه می دهد.وقتی که برنامه ی بالا اجرا می شود، پنجره ی Output به شکل زیر خواهد بود:

 

شما می توانید یک مرتب سازی روی رشته ی array ها اجرا کنید، درست مانند کاری که می توانید با اعداد صحیح انجام دهید. اما مزتب سازی یک ترتیب صعودی براساس حروف الفبا می باشد، به این معنا که aa قبل از ab قرار می گیرد. به هرحال جاوا برای مقایسه ی یک حرف در رشته ی شما با یک رشته ی دیگر از کاراکترهای یونیکد (Unicode) استفاده می کند. این به این معناست که حروف بزرگ قبل از حروف کوچک قرار می گیرند. کد زیر را امتحان کنید:

 وقتی که برنامه اجرا می شود، پنجره ی Output تصویر زیر را نمایش خواهد داد:

 گرچه ما array را مرتب کرده ایم، اما لغت This در ابتدا قرار می گیرد. اگر یک مرتب سازی الفبایی باشد، انتظار دارید که لغت a در ابتدا قرار بگیرد. این اتفاق می افتد اگر تمام حروف کوچک باشند. در کد برنامه نویسی خود T بزرگ از لغت This را به t کوچک تغییر دهید. اکنون برنامه را مجددا اجرا کنید.

 

همانطور که مشاهده می کنید، لغت this اکنون در پایین قرار دارد.
 

  • vahid hasani
  • ۰
  • ۰

آموزش آرایه ها در جاوا

 

یک Array چیست؟

تاکنون با متغیرهایی کار کردید که فقط یک مقدار را در خود حفظ می کنند. متغیرهای صحیح که تنظیم کرده اید، فقط یک عدد را حفظ می کنند و متغیرهای رشته نیز فقط یک رشته از متن را در خود دارند. یک array (ردیف) روشی برای حفظ بیشتر از یک مقدار در یک زمان می باشد که در واقع شبیه لیستی از آیتم ها می باشد. یک array را می توان به عنوان ستون هایی در یک صفحه ی گسترده در نظر گرفت. شما می توانید یک صفحه ی گسترئه تنها با یک ستون و یا تعداد زیادی ستون داشته باشید. داده ای که در یک ردیف مجزا حفظ می شود می تواند مشابه تصویر زیر باشد:

 

مانند یک صفحه ی گسترده، array ها برای هر ردیف دارای یک موقعیت عددی می باشند. این موقعیت ها در یک array از شروع شده و متداولا افزایش می یابند. هر موقعیت نیز در یک array می تواند یک مقدار در خود حفظ کند. در تصویر بالا موقعیت 0 دارای مقدار 10 و موقعیت 1 دارای 14، موقیت 2 دارای مقدار 36 و غیره می باشد.

برای برقراری یک array از اعداد، مشابه تصویر بالا، باید به جاوا اعلام کنید که چه نوع داده ای قرار است وارد array شود ( اعداد صحیح، رشته ها، مقادیر Boolean و غیره). سپس لازم است که اعلام کنید که array دارای چند موقعین می باشد:

int[ ] aryNums;

 

تنها تفاوت بین برقراری یک متغیر عدد صحیح طبیعی و یک array یک جفت کروشه ای است که بعد از نوع داده قرار می گیرد. کروشه ها برای اعلام به جاوا در مورد این که شما قصد برقراری یک array را دارید، کافی هستند. نام array مربوط به تصویر بالا aryNums می باشد. درست مانند متغیرهای طبیعی، می توانید آنها را هر چیزی که می خواهید نام گذاری کنید ( با همان استثنائاتی که قبلا ذکر کردیم.)

 

اما این مورد فقط به جاوا می گوید که شما قصد تنظیم یک array عدد صحیح را دارید. این برنامه تعداد موقعیت هایی را که array باید حفظ کند، اعلام نمی کند. برای انجام این کار باید یک array object جدید تنظیم کنید:

aryNums = new int[6];

 

شما با نام array شروع کرده اید که با علامت تساوی دنبال می شود. پس از علامت تساوی به لغت کلیدی new و سپس مجددا نوع داده ی خود، نیاز دارید.پس از نوع داده یک جفت کروشه قرار می گیرد. بین کروشه ها نیاز به اندازه ی array دارید. اندازه در واقع تعداد موقعیت هایی است که array باید حفظ کند.

 

اگر تمایل دارید، می توانید همه ی آنها را روی یک قرار دهید:

int[ ] aryNums = new int[6];

 

بنابراین ما به جاوا اعلام می کنیم که یک array را با 6 موقعیت در آن تنظیم کند. پس از اجرای این خط، جاوا مقادیر پیش فرض را برای array اختصاص خواهد داد. از آنجایی که ما یک array مقدار صحیح تنظیم کرده ایم، مقادیر پیش فرض برای همه ی 6 موقعیت 0 خواهد بود.

 

برای اینکه در یک array مقادیر را به موقعیت های مختلف اختصاص دهید، این کار را به یک روش طبیعی انجام می دهید:

aryNums[0] = 10;

 

در اینجا مقدار 10 به موقعیت 0 در یک array به نام aryNums اختصاص داده می شود. مجددا کروشه ها برای اشاره به هر موقعیت استفاده می شوند. اگر بخواهید مقدار 14 را به یک array با موقعیت 1 اختصاص دهید، کد مربوط مانند زیر خواهید بود: aryNums[1] = 14;

 

و کد مربوط به مقدار 36 برای موقعیت 2 مانند زیر خواهد بود:

aryNums[2] = 36;

 

فراموش نکنید که از آنجایی که array ها از 0 شروع می شوند، سومین موقعیت در یک array دارای عدد شاخص 2 می باشد.

 

اگر بدانید که چه مقادیری قرار است در یک array قرار گیرند، می توانید آنها را مانند زیر تنظیم کنید:

int[ ] aryNums = { 1, 2, 3, 4 };

 

این متود در حال تنظیم یک array با استفاده از کروشه ها بعد از علامت تساوی، می باشد.در بین کروشه ها مقادیری را تایپ می کنید که array خواهد گرفت. اولین مقدار در موقعیت 0 و دومین مقدار در موقعیت 1 و غیره خواهد بود. توجه داشته باشید که هنوز پس از int نیاز به کروشه دارید، اما نیازی به لغت کلیدی new یا تکرار نوع داده و یا کروشه ها ندارید. اما این فقط مربوط می شود به نوع داده های مقادیر int، رشته و مقادیر char. به عبارت دیگر نیاز به لغت کلیدی new دارید. بنابراین می توانید این کار را انجام دهید:

 

String[ ] aryStrings = {"Autumn", "Spring", "Summer", "Winter" };

 

اما این کار را نمی توانید انجام دهید:

boolean[ ] aryBools = {false, true, false, true};

 

برای تنظیم یک boolean array هنوز نیاز به لغت کلیدی new دارید:

boolean[ ] aryBools = new boolean[ ] {false, true, false, true};

 

برای به دست آوردن مقادیر مربوط به array، نام array را تایپ کنید که با موقعیت array در یک کروشه دنبال می شود. مانند زیر:

System.out.println( aryNums[2] );

کد بالا هر مقداری که در ردیفی با موقعت 2 در یک array به نام aryNums باشد را چاپ می کند
 

  • vahid hasani