Мало того, что это ужасная идея, это даже не хорошая реализация ужасной идеи! Старый трюк пошел:
a^=b;
b^=a;
a^=b;
У этого не будет проблем с переполнением / переполнением, и он действительно очень запутает ваших коллег. Я имею в виду, если вы собираетесь запутать, неэффективный код ... идти до конца!
Кстати, я бы обычно говорил с java, если вы думаете, что вы могли бы получить какую-то выгоду в производительности от выполнения чего-то чуть менее очевидным способом, никогда не делайте этого. Во-первых, вы, вероятно, ошибаетесь, и ваше решение не быстрее. Во-вторых, java уже достаточно быстр, и это, вероятно, не имеет значения. В-третьих, java со временем улучшит «очевидные» способы и сделает их быстрее, используя компилятор времени выполнения. Это не улучшит ваш хак и может даже сделать его медленнее.
Если вы мне не верите, возможно, вы все еще считаете, что вам следует использовать string Builder каждый раз, когда вы объединяете две строки ...