$ javac ConcatShapes.java && javap -c -p ConcatShapes (method one) public static java.lang.String one(java.lang.String, int); Code: 0: aload_0 1: iload_1 2: invokedynamic #7, 0 // InvokeDynamic #0:makeConcatWithConstants:(Ljava/lang/String;I)Ljava/lang/String; 7: areturn $ javac -XDstringConcat=inline ConcatShapes.java && javap -c -p ConcatShapes (method one) public static java.lang.String one(java.lang.String, int); Code: 0: new #7 // class java/lang/StringBuilder 3: dup 4: invokespecial #9 // Method java/lang/StringBuilder."":()V 7: ldc #10 // String user= 9: invokevirtual #12 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 12: aload_0 13: invokevirtual #12 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 16: ldc #16 // String n= 18: invokevirtual #12 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 21: iload_1 22: invokevirtual #18 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; 25: invokevirtual #21 // Method java/lang/StringBuilder.toString:()Ljava/lang/String; 28: areturn