کلاس های بسته بندی (Wrapper Classes)
کلاس بسته بندی (Wrapper Class) یعنی نسخه شیء از نوع های ساده. مثلا به جای int از Integer استفاده می کنیم. چرا؟ چون خیلی جاها فقط شیء می پذیرند، مثل لیست ها. پس با رَپِرها، نوع ساده را «جعبه» می کنیم و شیء می گیریم.
کی به رَپِر نیاز داریم؟
مثلا آرایه لیست فقط شیء می گیرد، نه نوع ساده. بنابراین باید از رَپِر استفاده کنیم.
ArrayList<int> myNumbers = new ArrayList<int>();
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
نکته: متناظرها این ها هستند: byte→Byte، short→Short، int→Integer، long→Long، float→Float، double→Double، boolean→Boolean، char→Character.
ساخت شیء رَپِر و چاپ مقدار
حالا چند شیء بساز و چاپ کن. شیء یعنی چیزی با متد و ویژگی.
public class Main {
public static void main(String[] args) {
Integer myInt = 5;
Double myDouble = 5.99;
Character myChar = 'A';
System.out.println(myInt);
System.out.println(myDouble);
System.out.println(myChar);
}
}
گرفتن مقدارِ داخل جعبه
چون شیء داریم، متد هم داریم. با intValue و بقیه، مقدارِ ساده را بگیر.
public class Main {
public static void main(String[] args) {
Integer myInt = 5;
Double myDouble = 5.99;
Character myChar = 'A';
System.out.println(myInt.intValue());
System.out.println(myDouble.doubleValue());
System.out.println(myChar.charValue());
}
}
تبدیل به رشته با toString()
می خواهی متن بسازی؟ با toString شیء را رشته کن، بعد length بگیر.
public class Main {
public static void main(String[] args) {
Integer myInt = 100;
String myString = myInt.toString();
System.out.println(myString.length());
}
}
سه گام تمرینی
- یک ArrayList از
Integerبساز و عدد اضافه کن. - با ایتراتور پیمایش کن و چاپ کن.
- با
toString()یک مقدار را رشته کن و length بگیر.
جمع بندی سریع
- کلاس های بسته بندی جاوا نسخه شیء انواع ساده اند.
- برای مجموعه ها، رَپِر لازم است.
- متدهای intValue و دوستان، مقدار ساده می دهند.
- toString برای ساخت رشته عالی است.