Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.bench;
- import org.openjdk.jmh.annotations.*;
- import java.util.Arrays;
- import java.util.concurrent.TimeUnit;
- import java.util.stream.Collectors;
- @BenchmarkMode(Mode.AverageTime)
- @OutputTimeUnit(TimeUnit.MILLISECONDS)
- @State(Scope.Benchmark)
- @Warmup(iterations = 1)
- @Measurement(iterations = 3)
- @Fork(value = 3)
- public class Benchmark {
- private String test = "";
- private String word = "4999";
- @Setup
- public void setup() {
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 0; i < 100000; i++) {
- stringBuilder.append(i);
- stringBuilder.append(" ");
- test = stringBuilder.toString();
- }
- }
- @org.openjdk.jmh.annotations.Benchmark
- public void streamToMap() {
- Arrays.stream(test.split("\\s+"))
- .collect(Collectors.groupingBy(e -> e, Collectors.counting()));
- }
- @org.openjdk.jmh.annotations.Benchmark
- public void stringHashCodes() {
- Arrays.stream(test.split("\\s+")).mapToInt(String::hashCode).sum();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement