| 21 | | Profiler output: |
| | 21 | [[Image(flamegraph_isStripEmpty.png, 100%, title="Utils#isStripEmpty, Java 8")]] |
| | 22 | Utils#isStripEmpty, Java 8 |
| | 23 | |
| | 24 | Allocations: |
| | 25 | * Utils#isStripEmpty: 112 MB |
| | 26 | * Arrays#copyOf: 57 MB |
| | 27 | * AbstractPrimitive#getKeys: 25 MB |
| | 28 | * String[]: 4 MB |
| | 29 | |
| | 30 | [[Image(flamegraph_isBlank_Java8.png, 100%, title="Utils#isBlank, Java 8")]] |
| | 31 | Utils#isBlank, Java 8 |
| | 32 | |
| | 33 | Allocations: |
| | 34 | * Arrays#copyOf: 61 MB |
| | 35 | * AbstractPrimitive#getKeys: 3.5 MB |
| | 36 | * String[]: 2.3 MB |
| | 37 | |
| | 38 | [[Image(flamegraph_isBlank_Java17.png, 100%, title="Utils#isBlank, Java 17")]] |
| | 39 | Utils#isBlank, Java 17 |
| | 40 | |
| | 41 | Allocations: |
| | 42 | * Arrays#copyOf: 21 MB |
| | 43 | * AbstractPrimitive#getKeys: 43 MB |
| | 44 | * String[]: 12 MB |
| | 45 | |
| | 46 | |
| | 47 | There is a bit of jitter, but the primary cost of AbstractPrimitive#put is from `Utils#isStripEmpty`. |