اگر بخواهیم کاراکترها را در کامپیوتر ذخیره کنیم و با آنها کار کنیم باید بتوانیم آنها را ذخیره کنیم. برای مثال برای ذخیره کاراکتر a یا * باید سازوکاری باشد که آن را به ۰و ۱ تبدیل کند. یکی از سادهترین و رایج ترین راه حلها این است که به هرکدام از کاراکترها یک عدد نسبت بدهیم و عدد متناظر آن را در حافظه کامپیوتر ذخیره کنیم. به این کار کدگذاری یا encoding می گوییم. Encoding های مختلفی در حال حاضر توسط برنامهها و برنامه نویس ها استفاده میشود.
ولی مهمترین آنها ascii, unicode میباشد که در این مطلب توضیح داده شده اند. حال میخواهیم نحوه استفاده از کاراکترهای یونیکد در جاوا را توضیح دهیم. یکی از قابلیتهایی که نوع داده char دارد این است که میتوان با آن کاراکتر های یونیکد را نمایش داد.
برای نمایش داده کاراکترهای یونیکد در جاوا فقط باید کد آن کاراکتر را بلد باشیم. البته این فقط به این معنی نیست که کاراکترهای یونیکد را داخل متغیر char نمایش میدهیم و خارج از آن نمیتوانیم این کار را انجام دهیم. ما میتوانیم در داخل کد جاوا هم از کدهای یونیکد استفاده کنیم. برای این کار باید کد یونیکد را یک عدد بین 0000 تا FFFF در مبنای هگزادسیمال وارد کنیم. کد زیر یک کاراکتر معرفی کردهایم که مقدار آن را اگر چاپ کنید مقدار پی یونانی خواهد بود:
char ch='\u03c0'; System.out.println(ch);
خروجی کد بالا مقدار π خواهد بود. همچنین خروجی کد زیر برابر با ™خواهد بود
char ch='\u2122'; System.out.println(ch);
علاوه بر نوع داده کاراکتر میتوان از این کد ها در خود بدنه کد نیز استفاده کرد. زیرا که کامپایلر این کدها را قبل از این که برنامه را کامپایل کند تفسیر می نماید. برای مثال میتوان از خط اول متد main را به این شکل نوشت:
public static void main\u0028String\u005B\u005D args\u0029{
زیرا که کدپرانتز باز ) برابر 0028 و کد براکت باز ] برابر 005B و کد براکت بسته برابر 005D و کد پرانتز بسته برابر 0029 است. دقت داشته باشید که اگر شما کد main خود را به شکل بالا بنویسید شاید از نظر ide قابل قبول نبوده و قرمز شود ولی اعتنایی نکنید و برنامه خود را اجرا کنید میبینید که برنامه به خوبی کار می کند.
بنیانگذار توسینسو و برنامه نویس
مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم.
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود