انتهى مؤتمر Devoxx منذ أيام قليلة، وقد لخص أحد الحضور محتويات هذا المؤتمر المهمة وتحدث عن التغييرات المهمة في Java 7 على النحو التالي:
1. دعم المجموعات
كود جافا 1.List list = new ArrayList();
2.list.add("العنصر");
3.String item = list.get(zero);
4.
5.Set set = new HashSet();
6.set.add("العنصر");
7.
8.Map Map = new HashMap();
9.map.put("key", 1);
10.int value = Map.get("key");
قائمة القائمة = قائمة ArrayList الجديدة () ؛
list.add("العنصر");
عنصر السلسلة = list.get(zero);
مجموعة المجموعة = new HashSet();
set.add("العنصر");
خريطة الخريطة = HashMap الجديدة ()؛
Map.put("key", one);
int value = Map.get("key"); لا يزال بإمكانك:
كود جافا 1.قائمة القائمة = ["العنصر"]؛
2. String item = list[zero];
3.
4.Set set = {"item"};
5.
6.خريطة الخريطة = {"مفتاح": واحد};
7.int value = Map["key"];
قائمة القائمة = ["العنصر"]؛
عنصر السلسلة = قائمة [صفر]؛
مجموعة المجموعة = {"العنصر"}؛
خريطة الخريطة = {"مفتاح": واحد}؛
قيمة int = خريطة["مفتاح"];
2. إدارة الموارد التلقائية
كود جافا 1.BufferedReader br = new BufferedReader(new FileReader(path));
2. حاول {
3.return br.readLine();
4.} أخيرا {
5.br. Close();
6.}
BufferedReader br = new BufferedReader(new FileReader(path));
يحاول {
إرجاع br.readLine();
} أخيراً {
br. Close();
}
يصبح:
كود جافا 1.try (BufferedReader br = new BufferedReader(new FileReader(path)) {
2.return br.readLine();
3.}
4.
5. يمكنك الإعلان عن إغلاق أكثر من مورد:
6.
7.حاول (
8.InputStream in = new FileInputStream(src);
9. OutputStream out = FileOutputStream الجديد (dest))
10.{
11. // الكود
12.}
حاول (BufferedReader br = new BufferedReader(new FileReader(path)) {
إرجاع br.readLine();
}
يمكنك الإعلان عن إغلاق أكثر من مورد:
يحاول (
InputStream in = new FileInputStream(src);
OutputStream out = FileOutputStream الجديد (dest))
{
// شفرة
}
3. تحسين مقتطف النوع من إنشاء المثال العام (الماس)
كود جافا 1.Map> الجناس = new HashMap>();
Map> الجناس = new HashMap>();
يصبح:
كود جافا 1.Map> الجناس = new HashMap<>();
Map> الجناس = new HashMap<>(); 4. يمكن وضع خط تحت القيم
كود جافا one.int one_million = one_000_000;
int one_million = one_000_000;
5. يمكن استخدام السلسلة في التبديل
كود جافا 1.String s = ...
2. التبديل (ق) {
3. حالة "quux":
4.processQuux(s);
5. // السقوط
6.
7. حالة "فو":
8. حالة "الشريط":
9.processFooOrBar(s);
10. استراحة؛
11.
12. قضية "باز":
13.processBaz(s);
14. // السقوط
15.
16. الافتراضي:
17.processDefault(s);
18.استراحة؛
19.}
السلسلة س =...
التبديل (المفاتيح) {
حالة "quux":
this.processQuux(s);
// السقوط
حالة "فو":
حالة "الشريط":
this.processFooOrBar(s);
استراحة؛
حالة "باز":
ProcessBaz(s);
// السقوط
تقصير:
ProcessDefault(s);
استراحة؛
}
6. الحروف الثنائية
كود جافا one.int ثنائي = صفر b1001_1001;
كثافة العمليات الثنائية = صفر b1001_1001;
7. تبسيط استدعاء خطوات المعلمة المتغيرة
يقوم المحرر بإنشاء تحذير "عملية غير آمنة" عندما ينوي المبرمج استخدام varargs غير قابل للاختزال ويستدعي خطوة *varargs* (متغيرة).