Функциональное программирование в [закрытом] Java

Можно сделать это как так:

IF EXIST %VAR%\NUL ECHO It's a directory

Однако это только работает на каталоги без пробелов на их имена. Когда Вы добавите кавычки вокруг переменной для обработки пробелов, она прекратит работать. Для обработки каталогов с пробелами преобразуйте имя файла для закорачивания 8,3 форматов следующим образом:

FOR %%i IN (%VAR%) DO IF EXIST %%~si\NUL ECHO It's a directory

Эти %%~si преобразовывает %%i в 8,3 имен файла. Для наблюдения всех других приемов, можно выполнить с FOR, переменные входят HELP FOR в командной строке.

(Примечание - пример, данный выше, находится в формате для работы в пакетном файле. Для получения его работа над командной строкой замените %% % в обоих местах.)

59
задан ripper234 22 June 2011 в 18:26
поделиться

6 ответов

FunctionalJava - самая известная библиотека; он использует закрытие Java ( BGGA ) для примеров:

final Array<Integer> a = array(1, 2, 3);  
final Array<Integer> b = a.map({int i => i + 42});  
arrayShow(intShow).println(b); // {43,44,45}  

EDIT

Проверьте также lambdaj .

Дальнейшее редактирование

BGGA не является обязательным. Это просто улучшает синтаксис.

44
ответ дан 7 November 2019 в 04:35
поделиться

Scala - это функциональный язык программирования, полностью совместимый с Java (работает через JVM). Он предлагает прекрасное сочетание объектно-ориентированных и функциональных методов, а также множество улучшений по сравнению с Java в отношении универсальных шаблонов и параллелизма. Некоторые даже говорят, что он может заменить Java.

29
ответ дан 7 November 2019 в 04:35
поделиться

Коллекции Google имеют приличный выбор служебных методов в стиле функционального программирования. Некоторыми интересными классами являются Iterables, Iterators, Function, Functions и т. Д.

Он также имеет несколько классов коллекций!

13
ответ дан 7 November 2019 в 04:35
поделиться

Функциональная Java - это то, на что стоит обратить внимание, и FunctionalJ - другое.

12
ответ дан 7 November 2019 в 04:35
поделиться

Jambda - еще одна FP-библиотека. Из документации :

Jambda - это попытка предоставить Мир Java (TM) с инструментами и концепциями из функционального программирования (FP).

Целей несколько:

  • Обеспечить программистов на Java выразительными конструкциями FP
  • Обеспечить мост для программистов Java в мир FP
  • Чтобы увидеть, насколько далеко Java и дженерики можно растянуть

Это документ - это попытка представить Программисты Java в мире FP, и заодно объяснить некоторые (или большинство) функций Jambda.

4
ответ дан 7 November 2019 в 04:35
поделиться

Если вам нужно решение на чистом Java, попробуйте lambdaj

http://code.google.com/p/lambdaj/

Помимо возможности определять и использовать замыкание в стиле DSL, он также позволяет управлять коллекциями функциональным образом, без явного написания замыканий или петли

7
ответ дан 7 November 2019 в 04:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: