Конференция Devoxx завершилась несколько дней назад. Один из участников подвел итог важному содержанию этой конференции. Он рассказал о важных изменениях в Java 7 следующим образом:
1. Поддержка коллекций
Код Java 1.Список списка = новый ArrayList();
2.list.add("элемент");
3. Строковый элемент = list.get(ноль);
4.
5.Set set = новый HashSet();
6.set.add("предмет");
7.
8. Карта карты = новая HashMap();
9.map.put("ключ", 1);
10.int значение = map.get("ключ");
Список списка = новый ArrayList();
list.add("элемент");
Строковый элемент = list.get(ноль);
Установить set = новый HashSet();
set.add("предмет");
Карта карта = новый HashMap();
map.put("ключ", один);
int value = map.get("key"); Теперь вы еще можете:
Код Java 1. Список списка = ["элемент"];
2. Строковый элемент = список[ноль];
3.
4.Установить set = {"item"};
5.
6.Карта карты = {"ключ": один};
7.int значение = карта["ключ"];
Список list = ["элемент"];
Строковый элемент = список [ноль];
Установить set = {"элемент"};
Карта карта = {"ключ": один};
значение int = карта["ключ"];
2. Автоматическое управление ресурсами
Код Java 1.BufferedReader br = новый BufferedReader (новый FileReader (путь));
2.попробуй {
3. вернуть br.readLine();
4.} наконец {
5. br.close();
6.}
BufferedReader br = новый BufferedReader (новый FileReader (путь));
пытаться {
вернуть br.readLine();
} окончательно {
бр.закрыть();
}
становится:
Код Java 1.try (BufferedReader br = new BufferedReader(new FileReader(path)) {
2. вернуть br.readLine();
3.}
4.
5. Вы можете объявить о закрытии более одного ресурса:
6.
7.попробуй(
8. InputStream in = новый FileInputStream(src);
9. OutputStream out = новый FileOutputStream(dest))
10.{
11. // код
12.}
попробуйте (BufferedReader br = новый BufferedReader (новый FileReader (путь)) {
вернуть br.readLine();
}
Вы можете объявить закрытие более одного ресурса:
пытаться (
InputStream in = новый FileInputStream(src);
OutputStream out = новый FileOutputStream(dest))
{
// код
}
3. Улучшен фрагмент типа общего примера создания (ромб).
Код Java 1.Map> анаграммы = новый HashMap>();
Карта> анаграммы = новый HashMap>();
становится:
Код Java 1.Map> анаграммы = new HashMap<>();
Map> anagrams = new HashMap<>(); 4. Значения можно подчеркнуть.
Код Java one.int one_million = one_000_000;
интервал one_million = one_000_000;
5. Строку можно использовать в переключателе.
Код Java 1.String s = ...
2.переключатель(и) {
3. падеж «quux»:
4. процессКукс(ы);
5. // провал
6.
7. случай «фу»:
8. корпус «планка»:
9. процессФуОрБар(ы);
10. перерыв;
11.
12. корпус «баз»:
13. ProcessBaz(ы);
14. // провал
15.
16.по умолчанию:
17. ProcessDefault(s);
18.перерыв;
19.}
Строка с = ...
переключатель(ы) {
случай «quux»:
процессQuux(ы);
// провал
случай «фу»:
корпус «бар»:
процессFooOrBar(s);
перерыв;
корпус «баз»:
процессБаз(ы);
// провал
по умолчанию:
процесс по умолчанию (ы);
перерыв;
}
6. Бинарные литералы
Код Java one.int двоичный = ноль b1001_1001;
intbinary = ноль b1001_1001;
7. Упрощен вызов шагов переменных параметров.
Редактор генерирует предупреждение о «небезопасной операции», когда программист намеревается использовать несократимые переменные аргументы и вызывает шаг *varargs* (переменная).