交换两个字符串位置的Java程序
1 说明
在此程序中,我们需要交换两个字符串而不使用第三个变量。
Str1: Good Str2: morning
交换两个字符串通常需要一个临时的第三个变量。实现此目的的一种方法是将给定的两个字符串连接成第一个字符串。
Str1Str1 = Str1 + Str2= Goodmorning
使用子字符串(0,length(string1)-(string2))提取字符串2,即在我们的情况下,它将是substring(0,(11-4))。它将为字符串2分配好字符串,该字符串以绿色突出显示。
Str2 = Goodmorning
使用子字符串(length(string2))提取字符串1,即我们需要从length(string2)直到字符串结尾提取字符串。在我们的例子中,它将是substring(4)。它将为字符串1分配字符串morning,该字符串以绿色突出显示。
Str1 = Goodmorning
2 算法思路
- 步骤1:开始
- 步骤2:定义 Strings str1 = "Good ", str2 = "morning " 进行交换
- 步骤3:在交换之前打印“字符串” str1,str2
- 步骤4: str1 = str1 + str2
- 步骤5:使用子串函数从indexes 0提取str1到length (str1) - (str2),并将其存储在str2中。
- 步骤6:使用子字符串函数从索引长度(str2)提取str1直到结束,并将其存储在str1中。
- 第7步:打印“Strings after swapping ” str1,str2。
- 步骤8:结束
3 程序实现
/**
* 一点教程网: http://www.yiidian.com
*/
public class SwapStrings
{
public static void main(String[] args) {
String str1 = "Good ", str2 = "morning ";
System.out.println("Strings before swapping: " + str1 + " " + str2);
//Concatenate both the string str1 and str2 and store it in str1
str1 = str1 + str2;
//Extract str2 from updated str1
str2 = str1.substring(0, (str1.length() - str2.length()));
//Extract str1 from updated str1
str1 = str1.substring(str2.length());
System.out.println("Strings after swapping: " + str1 + " " + str2);
}
}
以上代码输出结果为:
Strings before swapping: Good morning
Strings after swapping: morning Good
热门文章
优秀文章