在 Java 中递归地反转字符串
递归是重复调用函数本身直到中断条件满足标准的过程。它允许用户从自身调用函数本身。以下是使函数递归必须满足的一些条件:
下面是在 Java 中使用递归反转字符串的代码块。
import java.util.Scanner;
public class StringReverseUsingRecursion {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter any String :");
String str = scanner.nextLine();
System.out.println("The reverse of the String is : " + recursiveReverse(str));
}
static String recursiveReverse(String input) {
if ((input == null) || (input.length() <= 1))
return input;
else {
return recursiveReverse(input.substring(1)) + input.charAt(0);
}
}
}
在上面的代码块中,该类包含一个静态方法和 main
方法。recursiveReverse()
方法是静态递归函数,它使用递归来反转字符串。它接受一个输入参数并返回一个字符串值。
在 main
方法中,使用 new 关键字实例化 Scanner 类。Scanner 类的构造函数以 Input Stream 为参数,从输入源扫描后产生输入字符串。
它还转换默认字符集(即 UTF-8 标准集)中的字节流。如果无法将数据转换为默认字符集,构造函数将抛出 IllegalArgumentException
。
System 是一个类 java.lang
包,它代表标准输入流实例方法和变量。In
是打开并准备提供输入数据的输入流的实例变量。
此流使用键盘输入或用户指定的其他输入源。
nextLine()
函数返回当前行,不包括末尾的行分隔符。因此,这将在 str
变量中存储用户定义的输入行。String 稍后传递给静态递归方法。
静态 recursiveReverse()
方法中的终止条件是检查输入是否为空或小于 1,然后返回输入字符串本身。
如果条件不满足,它会再次调用函数本身,但使用不包括第零个字符的子字符串。substring()
函数创建实际字符串的子字符串,并再次将较小的流传递给相同的方法。
因此它被迭代调用,最后,开始返回字符作为响应。
输出:
Enter any String :
Hello
The reverse of the String is : olleH.
相关文章
在 Java 中获取文件大小
发布时间:2023/05/01 浏览次数:139 分类:Java
-
Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。
Java 中的文件分隔符
发布时间:2023/05/01 浏览次数:108 分类:Java
-
本篇文章介绍了 Java 中的文件分隔符。Java 中的文件分隔符 文件分隔符是用来分隔目录的字符; 例如,Unix 使用 /,Windows 使用 \ 作为文件分隔符。
Java 中的文件过滤器
发布时间:2023/05/01 浏览次数:193 分类:Java
-
本篇文章介绍如何在 Java 中使用 FileFilter。FileFilter 用于过滤具有特定扩展名的文件。 Java内置包IO和Apache Commons IO为FileFilter提供了类和接口来进行文件过滤操作。
Java 获取 ISO 8601 格式的当前时间戳
发布时间:2023/05/01 浏览次数:132 分类:Java
-
本篇文章介绍了 ISO 8601 日期格式、其重要性及其在 Java 中的使用。 它还列出了一些优点来强调为什么应该使用 ISO 格式来表示日期。
在 Java 中获取数组的子集
发布时间:2023/05/01 浏览次数:142 分类:Java
-
本篇文章介绍了几种在 Java 中获取数组子集的方法。使用 Arrays.copyOf() 方法获取数组的子集 使用 Arrays.copyOfRange() 方法获取数组的子集
用 Java 填充二维数组
发布时间:2023/05/01 浏览次数:110 分类:Java
-
二维数组是基于表结构的,即行和列,填充二维数组不能通过简单的添加到数组操作来完成。 本篇文章介绍如何在 Java 中填充二维数组。
计算 Java 数组中的重复元素
发布时间:2023/05/01 浏览次数:202 分类:Java
-
本篇文章介绍Java计算数组中重复元素的方法。计算 Java 数组中的重复元素。我们可以创建一个程序来计算数组中的重复元素。 该数组可以是未排序的,也可以是已排序的。
Java 中 List 和 Arraylist 的区别
发布时间:2023/05/01 浏览次数:90 分类:Java
-
表示为单个单元的一组单个对象称为集合。 在 Java 中,Collection 是一个具有多个已定义接口和类的框架,用于将一组对象表示为一个单元。 它允许我们操纵