String-Kompilierzeitkonstanten (Internized-Strings) und Literale können mit dem == verglichen werden, da ihnen zur Kompilierzeit die gleiche Referenz zugewiesen wird, wenn sie irgendwie gleich sind.Verzögern String-Konstanten/Literale im Code das Kompilieren erheblich?
Bedeutet das, dass das Kompilieren von Code, der aus n String-Literalen besteht, n log (n) Zeit zum Kompilieren benötigt?
Ich stelle diese Frage hier, weil jemand die Antwort bereits kennt und ich bin mir nicht sicher, ob ich einen Test schreiben kann, der den Effekt zuverlässig, reproduzierbar oder signifikant misst. Oder dass dieser Test reelle Welteinschränkungen etc. widerspiegelt.
Ich werde alle Testfälle veröffentlichen, die ich mir zwar vorstellen kann, aber ich kann sie vorschlagen, ich werde sie implementieren, sobald ich die Zeit finde .
Ich erinnere mich, dass das letzte Mal, als ich versuchte, etwa hundert kB Text in einen String zu legen, es nicht zu gut endete. Ich glaube, dass die Kompilierzeit auch von der String-Länge abhängt, aber nicht sicher über den Trend auf dem –
Warum würde Kompilierungszeit hier der Unterschied sein? Der Vergleich findet noch zur Laufzeit statt. –
Es ist nur eine gute Schätzung nichts mehr, aber ich denke, String-Literale wie "this" 'nehmen nur Platz und verbrauchen die Lese- und Schreibzeit der Festplatte, aber String-Konstanten wie' final String s = "Something"; Kompilierzeit auch und wenn zu viel mit viel Use Cases, wird es Auswirkungen auf die Kompilierzeit. –