File tree Expand file tree Collapse file tree 1 file changed +44
-0
lines changed
src/commonMain/kotlin/microBenchmarks Expand file tree Collapse file tree 1 file changed +44
-0
lines changed Original file line number Diff line number Diff line change @@ -143,4 +143,48 @@ class StringBenchmark {
143143 }
144144 return sum
145145 }
146+
147+ @Benchmark
148+ fun stringBuilderCompareWithInterpolation (): Int {
149+ var sum = 0
150+ var i = 0
151+ var j = 0
152+ while (i < BENCHMARK_SIZE ) {
153+ val add1 = stringsInterpolation[j]
154+ j = (j + 1 ) and 15
155+ val add2 = stringsInterpolation[j]
156+ j = (j + 1 ) and 15
157+ val add3 = stringsInterpolation[j]
158+ j = (j + 1 ) and 15
159+ val builder = StringBuilder (add1)
160+ builder.append(add2)
161+ builder.append(add3)
162+ val string = builder.toString()
163+ sum + = string.length
164+ i++
165+ }
166+ return sum
167+ }
168+
169+ @Benchmark
170+ fun stringPlusCompareWithInterpolation (): Int {
171+ var sum = 0
172+ var i = 0
173+ var j = 0
174+ while (i < BENCHMARK_SIZE ) {
175+ val add1 = stringsInterpolation[j]
176+ j = (j + 1 ) and 15
177+ val add2 = stringsInterpolation[j]
178+ j = (j + 1 ) and 15
179+ val add3 = stringsInterpolation[j]
180+ j = (j + 1 ) and 15
181+ var string = add1
182+ string = string.plus(add2)
183+ string = string.plus(add3)
184+ sum + = string.length
185+ i++
186+ }
187+ return sum
188+ }
189+
146190}
You can’t perform that action at this time.
0 commit comments