Java 字符对交换程序
在本文中,我们将学习如何在 Java 字符串 中交换字符对。我们首先使用一个简单的方法将字符串转换为字符数组,以便直接交换字符。然后,我们将探索一种 面向对象的方法,其中交换逻辑被封装在单独的方法中。这两种方法都突出了关键的 Java 概念,例如字符串操作和方法封装。
问题陈述
编写一个 Java 程序来交换一对字符。下面是相同的演示:
输入
Input string: Java program
输出
The string after swapping is: Javg proaram
字符串中基本字符交换的步骤
以下是字符串中基本字符交换的步骤:
- 开始
- 声明一个值为 "Java program" 的字符串 input_string。
- 将字符串转换为名为 character 的字符数组。
- 确定要交换的字符位置(从末尾算起第 3 个和第 7 个)。
- 使用临时变量 temp 交换字符。
- 将字符数组转换回字符串。
- 显示交换后的新字符串。
- 结束。
Java 字符对交换程序
在这里,我们将所有操作绑定在主函数下:
public class SwapCharacter {
public static void main(String args[]) {
String input_string = "Java program";
System.out.println("The string is defined as: " + input_string);
int i = 3, j = input_string.length() - 4;
char character[] = input_string.toCharArray();
char temp = character[i];
character[i] = character[j];
character[j] = temp;
String result = new String(character);
System.out.println("\nThe string after swapping is: " + result);
}
}
输出
The string is defined as: Java program The string after swapping is: Javg proaram
代码解释
在这个例子中,程序首先定义一个值为 "Java program" 的字符串 input_string。 toCharArray() 方法 用于将此字符串转换为字符数组,从而可以操作单个字符。程序使用数组索引确定要交换的字符位置——从末尾算起第 3 个和第 7 个。临时变量 temp 在交换过程中保存一个字符。交换后,使用 new String(character) 构造函数将字符数组转换回字符串。最后,打印修改后的字符串。此示例使其简单明了,重点放在基本字符串操作上。
使用面向对象方法交换字符对的步骤
以下是使用面向对象方法交换字符对的步骤:
- 开始
- 定义一个静态方法 swap(),它接受一个字符串和两个位置,并返回一个修改后的字符数组。
- 在swap() 方法中将字符串转换为字符数组。
- 使用临时变量交换给定位置的字符。
- 从方法返回修改后的字符数组。
- 声明一个值为 Java program 的字符串 input_string。
- 使用 input_string 和要交换的字符位置调用 swap() 方法。
- 打印 swap() 方法返回的修改后的字符数组。
- 结束程序。
使用面向对象方法的 Java 字符对交换程序
在这里,我们将操作封装在函数中,展示了面向对象编程:
public class SwapCharacter {
static char[] swap(String input_string, int i, int j) {
char character[] = input_string.toCharArray();
char temp = character[i];
character[i] = character[j];
character[j] = temp;
return character;
}
public static void main(String args[]) {
String input_string = "Java program";
System.out.println("The string is defined as: " + input_string);
System.out.println("\nThe string after swapping is: ");
System.out.println(swap(input_string, 3, input_string.length() - 4));
}
}
输出
The string is defined as: Java program The string after swapping is: Javg proaram
代码解释
在这个例子中,程序遵循面向对象原则,在静态方法 swap() 中使用 封装 交换逻辑。此方法将输入字符串和要交换的字符位置作为参数。在 swap() 内部,字符串被转换为字符数组以方便字符操作。使用临时变量 temp 交换指定位置的字符,并返回修改后的字符数组。主方法使用字符串 "Java program" 和指定的索引调用 swap()。修改后的字符数组直接在主方法中打印。这种方法使代码可重用且模块化,尽管它仍然不涉及任何循环。静态方法的使用演示了在 Java 中面向对象编程原则的基本应用。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP