Skip to content

Instantly share code, notes, and snippets.

@keefmarshall
Created December 5, 2013 18:22
Show Gist options
  • Save keefmarshall/7810570 to your computer and use it in GitHub Desktop.
Save keefmarshall/7810570 to your computer and use it in GitHub Desktop.
Lambda expressions demo - difference between Java 7 and Java 8
MapFileParser parser = new MapFileParser(filename);
parser.readMapFile(new MapProcessor() {
@Override
public void process(Map<String, String> map)
{
database.add(map);
}
});
MapFileParser parser = new MapFileParser(filename);
parser.readMapFile( (map) -> { database.add(map); } );
public void readMapFile(MapProcessor processor) throws IOException
{
try (BufferedReader reader = new BufferedReader(new FileReader(filename)))
{
String line = reader.readLine();
while (line != null)
{
Map<String, String> map = parseLineIntoMap(line);
processor.process(map);
line = reader.readLine();
}
}
}
public void readMapFile(final Consumer<Map<String, String>> processor) throws IOException
{
try (BufferedReader reader = new BufferedReader(new FileReader(filename)))
{
String line = reader.readLine();
while (line != null)
{
Map<String, String> map = parseLineIntoMap(line);
processor.accept(map);
line = reader.readLine();
}
}
}
public interface MapProcessor
{
void process(Map<String, String> map);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment