如何交换两个字符串?

时间:2015-06-07 17:35:06

标签: arrays vb.net swap xor

我有两个变量,我想切换,这是字符串。 它们包含第一个第二个名称。

我想使用least possible amount of lines切换它们,这就是为什么我还没有创建第三个变量。

我尝试使用xor swap,但错误消息显示James Adams无法转换为long类型。

整数只有xor,如果是这样,我如何有效地交换变量 ?谢谢,任何想法赞赏。如果有帮助,我会添加代码。

Plutonix 建议使用names = names.OrderBy(Function(o) o).ToArray()。谢谢。任何人都可以解释它是如何做的,因为我以前没见过这个吗?

For counter1 = 0 to 5
   For counter2 = counter1 + 1 to 5
       If names(counter1) >                      names(counter2) then

           names = names.OrderBy(Function(o) o).ToArray()
       End if 
   Next 
Next

请原谅格式问题或责怪Apple。

1 个答案:

答案 0 :(得分:0)

“xor swap技巧”是在整数类型上定义的。字符串不是整数类型,而是这种类型的序列。

http://graphics.stanford.edu/~seander/bithacks.html#SwappingValuesXOR

请考虑使用临时变量。