جاوا

جلسه چهاردهم – کار با کاراکتر ها در جاوا با کلاس Character

با کلاس Character جاوا آشنا شوید

جلسه چهاردهم – کار با کاراکتر ها در جاوا با کلاس Character

کلاس Character در جاوا
به طور معمول، وقتی که میخواهیم با کاراکتر ها (حروف) در جاوا کار کنیم، از نوع داده اولیه char استفاده میکنیم. در این مقاله میخواهیم به طور کامل کلاس Character در جاوا را بررسی کنیم. با برنامه چی همراه باشید.

 

در این جلسه آموزشی سرفصل های زیر بررسی میشوند:
مثال
کاراکتر های فرار (Escape Sequences)
مثال
خروجی
متدهای کلاس کاراکتر
موضوع جلسه بعدی چیست؟
منابع بیشتر برای مطالعه

 

مثال

در ابتدا یک مثال را با یکدیگر بررسی میکنیم:

char ch = 'a';

// Unicode for uppercase Greek omega character
char uniChar = '\u039A'; 

// an array of chars
char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };

در این مثال مشاهده میکنید که در خط اول یک متغیر از نوع char (یا همون کاراکتر) تعریف کردیم که نام آن ch است. سپس در قسمت وسطی دوباره کد یک کاراکتر از نوع char و به نام uniChar تعریف کرده ایم. در قسمت سوم اما یک متغیر از نوع آرایه تعریف کردیم که میتواند کاراکتر هایی را درون خودن جای بدهد و نام آن هم charArray است.

اما با اینحال گاهی در زمان برنامه نویسی، شرایطی پیش می آید که نیاز داریم که از آبجکت ها (اشیاء) به جای داده های اولیه استفاده کنیم. برای این شرایط زبان جاوا دارای کلاس Wrapper به نام Character است که برای نوع داده اولیه char استفاده میشود.

کلاس کاراکتر دارای تعدادی متد مفید میباشد که میتوانید با استفاده از آنها کاراکتر ها را دستکاری کنید. شما میتوانید یک آبجکت از کلاس کاراکتر با استفاده از متد سازنده کلاس Character بسازید:

Character ch = new Character('a');

متد سازنده چیست؟

کامپایلر جاوا خودش نیز بصورت اتوماتیک میتواند تحت شرایط خاصی برای شما آبجکت هایی از جنس Character بسازد. به عنوان مثال اگر شما یک داده اولیه از نوع کاراکتر را به متدی پاس بدهید که نیاز به یک آبجکت دارد، کامپایلر جاوا بصورت اتوماتیک char را برای شما به Character تبدیل میکند. به این ویژگی در جاوا Autoboxing یا Unboxing گفته میشود (البته اگر برعکس این عمل اتفاق بیوفتد). میتوانید توضیحات کامل را در لیک زیر مشاهده کنید.

Autoboxing و Unboxing در جاوا چیست؟

 

مثال

// Here following primitive char 'a'
// is boxed into the Character object ch
Character ch = 'a';

// Here primitive 'x' is boxed for method test,
// return is unboxed to char 'c'
char c = test('x');

در این مثال مشاهده میکنید که یک متغیر به نام ch و از نوع کلاس Character تعریف کرده ایم و مقدار a را درون آن ریخته ایم. یعنی عمل Autoboxing در این قسمت اتفاق می افتد. در قسمت دوم هم یک متغیر از نوع داده اولیه char تعریف کردیم ولی یک آبجکت Character در آن ریخته ایم. در این قسمت عمل Unboxing اتفاق می افتد.

 

کاراکتر های فرار (Escape Sequences)

وقتی که یک کاراکتر (حرف) در کنار یک بک اسلش (\) قرار بگیرد، یک کاراکتر فرار ایجاد میشود و برای کامپایلر معنی خاصی دارد. شاید در جلسه های آموزشی تا کنون دیده باشید که کاراکتر فرار (\n) برای رفتن به خط بعد، در کنار دستور System.out.println() بسیار استفاده شده است.

در جدول زیر میتوانید همه کاراکتر های فرار جاوا را مشاهده کنید:

کاراکتر فرار (Escape Sequence) توضیحات
\t  در هر نقطه از متن نوشته شود، یک فاصله به اندازه Tab ایجاد میکند.
\b در هر نقطه از متن نوشته شود، مانند یک backSpace عمل میکند.
\n در هر نقطه از متن نوشته شود، ادامه متن را به خط بعدی منتقل میکند.
\r در هر نقطه از متن نوشته شود، یک Carriage Return برگردانده میشود.
\f در هر نقطه از متن نوشته شود، یک فرم خبرخوان را درون متن ایجاد میکند.
\’ یک علامت نقل قول تکی را درون نوشته ایجاد میکند.
\” یک علامت نقل قول دوتایی را درون نوشته ایجاد میکند.
\\ یک کاراکتر بک اسلش را درون متن ایجاد میکند.

 

وقتی یک کاراکتر فرار در یک دستور Print نوشته میشود، کامپایلر بصورت خودکار یکی از عمل هایی که در جدول بالا نوشته شده است را اجرا میکند.

 

مثال

به عنوان یک نکته باید بدانید که اگر میخواهید یک نقل قول را درون یک رشته استفاده کنید و چاپ بشود، باید از کاراکتر فرار \” استفاده کنید.

public class Test {

   public static void main(String args[]) {
      System.out.println("She said \"Hello!\" to me.");
   }
}

در این مثال مشاهده میکنید که درون دستور println، از کاراکتر های فرار، برای استفاده از علامت نقل قول درون رشته استفاده شده است. نتیجه آن را هم میتوانید در خروجی مشاهده کنید.

این کدها خروجی زیر را تولید میکنند.

 

خروجی

She said "Hello!" to me.

 

متدهای کلاس Character

در جدول زیر میتوانید یک لیست از مهمترین متدهایی که در کلاس Character جاوا وجود دارند را مشاهده کنید و نحوه استفاده و کارایی آنها را یاد بگیرید.

ردیف متد و توضیحات
۱ متد isLetter
مشخص میکند که آیا آرگومان ورودی یک حرف است یا خیر.
۲ متد isDigit
مشخص میکند که آیا آرگومان داده شده یک عدد است یا خیر.
۳ متد isWhiteSpace
مشخص میکند که آیا آرگومان داده شده یک فاصله خالی است یا خیر.
۴ متد isUpperCase
مشخص میکند که آیا آرگومان داده شده از حروف بزرگ است یا خیر.
۵ متد isLowerCase
مشخص میکند که آیا آرگومان داده شده از حروف کوچک است یا خیر.
۶ متد toUpperCase
آرگومان های ورودی را به حروف بزرگ تبدیل میکند.
۷ متد toLowerCase
همه آرگومان های ورودی را به حروف کوچک تبدیل میکند.
۸ متد toString
یک آرگومان را دریافت میکند و یک آبجکت را که حاوی همان آرگومان ورودی است، برمیگرداند.

در این جلسه درباره کلاس Character جاوا مطالبی را یاد گرفتیم و چندین مثال را نیز بررسی کردیم. اگر نکته ای باقی مانده یا سوالی در ذهن شما وجود دارد، میتوانید با نوشتن آن در قسمت نظرات (همین پایین)، این مقاله آموزشی را کامل تر کنید.

 

موضوع جلسه بعدی چیست؟

در جلسه بعدی از دوره آموزش جاوا، درباره کلاس String در این زبان برنامه نویسی مطالبی را یاد خواهید گرفت. نحوه تعریف و استفاده از کلاس String و همچنین تعدادی از مهمترین متد های این کلاس را میتوانید در جلسه بعدی مشاهده کنید.

 

منابع بیشتر برای مطالعه

در صورت تمایل از لینک های زیر برای یادگیری و مطالعه بیشتر درباره کلاس Character استفاده کنید:

 

برچسب ها

خانقلی علی

به برنامه نویسی و مخصوصا برنامه نویسی اندروید علاقه بسیار زیادی دارم. همه تلاشم هم اینه که با "برنامه چی" بتونم برنامه نویسی رو برای همه خیلی راحت کنم. به وبسایت ما خوش اومدین! 😉

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نوشته های مشابه

دکمه بازگشت به بالا
بستن
بستن