Java小白入门200例21之字符串反转

Posted 编程界明世隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例21之字符串反转相关的知识,希望对你有一定的参考价值。

作者简介

作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!

引言

很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  20.反转数字
►下一篇  22.计算数字的幂

方案1

用charAt 取的每一个字符,然后连在前面。

package demo.demo21;

public class Test1 {

	public static void main(String[] args) {
		String res = new Test1().reverse("abcdefg");
		System.out.println("旋转后的字符串为:"+res);
	}

	public static String reverse(String s) {
		int length = s.length();
		String reverse = "";
		//用charAt 取的每一个字符,然后连在前面。
		for (int i = 0; i < length; i++){
			reverse = s.charAt(i) + reverse;
		}
		return reverse;
	}
}

运行结果:

方案2

取字符数组的每一个字符,然后连在前面。

package demo.demo21;

public class Test2 {

	public static void main(String[] args) {
		String res = new Test2().reverse("abcdefg");
		System.out.println("旋转后的字符串为:"+res);
	}

	public static String reverse(String s) {
		char[] chars = s.toCharArray();
		String reverse = "";
		//取字符数组的每一个字符,然后连在前面。
		for (int i = 0; i < chars.length; i++){
			reverse = chars[i] + reverse;
		}
		return reverse;
	}
}

方案3

用 StringBuffer 的 reverse 方法。

package demo.demo21;

public class Test3 {

	public static void main(String[] args) {
		String res = new Test3().reverse("abcdefg");
		System.out.println("旋转后的字符串为:"+res);
	}

	public static String reverse(String s) {
		String reverse = new StringBuffer(s).reverse().toString();
		return reverse;
	}
}

方案4

利用 Stack 入栈、出栈来处理。

package demo.demo21;

import java.util.Stack;

public class Test4 {

	public static void main(String[] args) {
		String res = new Test4().reverse("abcdefg");
		System.out.println("旋转后的字符串为:" + res);
	}

	public static String reverse(String s) {
		// 转成字符数组
		char[] str = s.toCharArray();
		Stack<Character> stack = new Stack<Character>();
		//入栈
		for (int i = 0; i < str.length; i++)
			stack.push(str[i]);

		String reversed = "";
		//出栈,并连接起来
		for (int i = 0; i < str.length; i++)
			reversed += stack.pop();

		return reversed;
	}
}

小结

这节总结了“字符串反转”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。

评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  20.反转数字
►下一篇  22.计算数字的幂

热门专栏推荐

1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java

另外

为了帮助更多小白从零进阶Java工程师,从CSDN官方那边搞来了一套 《Java 工程师学习成长知识图谱》,尺寸 870mm x 560mm,展开后有一张办公桌大小,也可以折叠成一本书的尺寸,原件129元现价 29 元先到先得,有兴趣的小伙伴可以了解一下

以上是关于Java小白入门200例21之字符串反转的主要内容,如果未能解决你的问题,请参考以下文章

Java小白入门200例35之分割字符串

Java小白入门200例40之Java字符串比较

Java小白入门200例37之Java截取字符串

Java小白入门200例39之Java字符串拼接(连接)

Java小白入门200例38之Java字符串的替换

Java小白入门200例33之删除字符串中的空格