Java实现字符串倒序输出的四种方法汇总

 更新时间:2023年06月14日 15:01:33   作者:Accompany_l  
这篇文章主要介绍了Java实现字符串倒序输出的四种方法汇总,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Java字符串倒序输出方法

不是很复杂的内容,在此不做过多赘述,直接上代码^_^

/*
	 * string倒序输出 
	 * 利用String类的toCharArray(),再倒序输出数组的方法
	 * 2018-5-18 13:05:00
	 */
	private static void reverseString1(String str) {
		char[] chr = str.toCharArray();
		for (int i = chr.length-1 ; i >= 0; i--) {
			System.out.print(chr[i]);
		}
		System.out.println("\t");
	}
	/*
	 * string倒序输出 
	 * 利用String类提供的subString()方法,利用递归的办法输出倒序字符串。
	 * 2018-5-18 13:16:00
	 */
	private static void reverseString2(String str) {
		if (str.length() == 1)
			System.out.println(str);
		else {
			String subString1 = str.substring(0, str.length() - 1);
			String subString2 = str.substring(str.length() - 1);
			System.out.print(subString2);
			reverseString2(subString1);
		}
	}
	/*
	 * string倒序输出 
	 * 定义成一个StringBuffer类,用StringBuffer类中的reverse()方法直接倒序字符串。
	 * 2018-5-18 13:22:10
	 */
	private static void reverseString3(String str) {
		StringBuffer buffer = new StringBuffer(str);
		System.out.println(buffer.reverse());
	}
	/*
	 *  自己瞎写
	 *  还是利用subString()方法,只不过循环输出
	 *  2018-5-18 13:18:30
	 */
	private static void reverseStringMy(String str) {
		StringBuffer a = new StringBuffer();
		String subString2 = "";
		for (int i = str.length(); i > 0; i--) {
			subString2 = str.substring(i - 1, i);
			a.append(subString2);
		}
		System.out.print("My:" + a);
		System.out.println("\t");
	}
public static void main(String[] args) {
	        String str1 = "abc";
		System.out.println(str1.substring(2));
		String str = "holle world";
		//倒序输出的4种方式
		reverseString1(str);
		reverseString2(str);
		reverseString3(str);
		reverseStringMy(str);
	}

打印内容:

c
dlrow elloh    
dlrow elloh
dlrow elloh
My:dlrow elloh

 面试题之--如何将字符串中的每个单词的倒序输出

1、输入一句英文,将句子倒序输出,忽略最后的标点。

package shenjin;
import java.util.Scanner;
/**
 * 输入一句英文,将英文句子反转
 * 
 * @author LENOVO
 *
 */
public class ReverseEnglish {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		String str = scanner.nextLine();
		String[] reverse = str.split(" ");
		for (int i = reverse.length - 1; i >= 0; i--) {
			System.out.print(reverse[i] + " ");
		}
	}
}

2、输入一句英文,将句子倒序输出,并且将最后的标点倒序在首位。

package shenjin;
import java.util.Scanner;
/**
 * 输入一句英文,将英文句子反转,并将最后英文标点放到首位
 * @author LENOVO
 *
 */
public class ReverseEnglish2 {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		String str = scanner.nextLine();
		String str1 = str.substring(0, str.length()-1);
		String str2 = str.substring(str.length()-1, str.length());
		String[] reverse = str1.split(" ");
		System.out.print(str2);
		for (int i = reverse.length - 1; i >= 0; i--) {
			System.out.print(reverse[i] + " ");
		}
	}
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 通过Java实现文件断点续传功能

    通过Java实现文件断点续传功能

    用户上传大文件,网络差点的需要历时数小时,万一线路中断,不具备断点续传的服务器就只能从头重传,而断点续传就是,允许用户从上传断线的地方继续传送,这样大大减少了用户的烦恼。本文将用Java语言实现断点续传,需要的可以参考一下
    2022-05-05
  • eclipse修改jvm参数调优方法(2种)

    eclipse修改jvm参数调优方法(2种)

    本篇文章主要介绍了eclipse修改jvm参数调优方法(2种),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Springboot Redis设置key前缀的方法步骤

    Springboot Redis设置key前缀的方法步骤

    这篇文章主要介绍了Springboot Redis设置key前缀的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Java快速入门掌握类与对象及变量的使用

    Java快速入门掌握类与对象及变量的使用

    类和对象是两种以计算机为载体的计算机语言的合称。对象是对客观事物的抽象,类是对对象的抽象。类是一种抽象的数据类型;变量就是可以变化的量,存储在内存中—个可以拥有在某个范围内的可变存储区域
    2022-04-04
  • springboot 如何解决static调用service为null

    springboot 如何解决static调用service为null

    这篇文章主要介绍了springboot 如何解决static调用service为null的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • nacos中的配置使用@Value注解获取不到值的原因及解决方案

    nacos中的配置使用@Value注解获取不到值的原因及解决方案

    这篇文章主要介绍了nacos中的配置使用@Value注解获取不到值的原因分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • Java设计模式之建造者模式浅析示例

    Java设计模式之建造者模式浅析示例

    建造者模式,是一种对象构建模式 它可以将复杂对象的建造过程抽象出来,使这个抽象过程的不同实现方法可以构造出不同表现的对象。本文将通过示例讲解建造者模式,需要的可以参考一下
    2022-11-11
  • Eureka源码阅读Client启动入口注册续约及定时任务

    Eureka源码阅读Client启动入口注册续约及定时任务

    这篇文章主要为大家介绍了Eureka源码阅读Client启动入口注册续约及定时任务示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Spring Boot中@Conditional注解介绍

    Spring Boot中@Conditional注解介绍

    @Conditional表示仅当所有指定条件都匹配时,组件才有资格注册。该@Conditional注释可以在以下任一方式使用:作为任何@Bean方法的方法级注释、作为任何类的直接或间接注释的类型级别注释@Component,包括@Configuration类、作为元注释,目的是组成自定义构造型注释
    2022-09-09
  • JAVA十大排序算法之桶排序详解

    JAVA十大排序算法之桶排序详解

    这篇文章主要介绍了java中的桶排序,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08

最新评论