【问题标题】:How to swap two string values without using third variable如何在不使用第三个变量的情况下交换两个字符串值
【发布时间】:2019-06-15 06:40:56
【问题描述】:

在一次采访中,我遇到了一个问题——如何在不使用第三个变量的情况下交换两个字符串。下面是代码:

字符串 str1 = "你好"; 字符串 str2 = "世界";

我们必须在不使用第三个变量的情况下交换 str2 = "Hello" & str1 = "World"。

我的回答是 str1 = "World" & str2 = "Hello"。 我在这个分配中没有看到任何错误,因为如果我这样分配,我只是在交换字符串文字。但他不同意。如果字符串文字池中已经存在字符串文字,我们可以使用它来交换,所以在这种情况下,我的答案是错误的。

我从面试回来后发现解决方案有点不同,如下代码:How to swap two string variables in Java without using a third variable

我猜我的面试官期待上面链接中显示的解决方案,但不需要使用 subString 方法,因为可以使用相同的字符串文字进行交换。

我想了解,我的回答/了解有什么问题吗。

【问题讨论】:

  • 您的问题是什么?请澄清。
  • @ggorlen:我想了解一下,我的回答/了解有什么问题吗。
  • 啊,谢谢你的澄清。好的,对于初学者,我看不到您的语法可以编译。您能否提供一个可行的提案示例?

标签: string


【解决方案1】:
String str1 = "Hello";
String str2 = "World";

str1 = str1 + str2;
str2 = str1.substring(0, (str1.length() - str2.length()));
str1 = str1.substring(str2.length());

System.out.println("str1 = " + str1);
System.out.println("str2 = " + str2);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-04
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多