Java判断回文字符串_java将字符串反转输出

Java判断回文字符串_java将字符串反转输出java判断回文字符串几种简单的实现:1.将字符串倒置后逐一比较,实现如下:publicclassHuiWenTest{/***@SERLIN*/publicstaticvoidmain(String[]args){Stringstr=””;System.out.println(“请输入一个字符串”);Scannerin

大家好,又见面了,我是你们的朋友全栈君。java判断回文字符串几种简单的实现:


1.将字符串倒置后逐一比较,实现如下:

 public class HuiWenTest {
	/**
	 * @SERLIN
	 */
	public static void main(String[] args) {
		String str = "";
		System.out.println("请输入一个字符串");
		Scanner input = new Scanner(System.in);
		str = input.next();

		StringBuffer sb = new StringBuffer(str);
		sb.reverse();// 将Str中的字符串倒置

		int count = 0;
		for (int i = 0; i < str.length(); i++) {
			if (str.charAt(i) == sb.charAt(i)) {
				count++;
			}
		}
		if (count == str.length()) {
			
			System.out.println("此字符串是一个回文字符串");
		} else {
			System.out.println("此字符串不是一个回文字符串");
		}
	}
}

2.将字符串倒置后创建新字符串直接比较,实现如下:

public class HuiWenTest2 {
	/**
	 * @SERLIN
	 */
	public static void main(String[] args) {
		System.out.println("请输入一个字符串");
		Scanner input = new Scanner(System.in);
		String str = input.next();
		StringBuilder sb=new StringBuilder(str);
		sb.reverse();//将str倒置的方法
		String newStr=new String(sb);
		if(str.equals(newStr)){
			System.out.println(str+"是回文字符串");
		}else{
			System.out.println(str+"不是回文字符串");
		}
	}
}

3.使用截取字符串的方式比较,实现如下:

public class HuiWenTest3 {
	/**
	 * @SERLIN
	 */
	public static void main(String[] args) {
		System.out.println("请输入一个字符串");
		Scanner input = new Scanner(System.in);
		String str = input.next();
		int count = 0;
		for (int i = 0; i < str.length() / 2; i++) {
		if ((str.substring(i, i + 1)).equals(str.substring(str.length() - 1- i, str.length() - i))) {
				count++;
			}
		}
		if (count == str.length() / 2) {
			System.out.println("是回文字符串");
		}else{
			System.out.println("不是回文字符串");
		}
	}
}

4.判断回文数字(判断纯数字),实现如下

public class HuiWenNum {
	/**
	 * @SERLIN
	 */
	public static void main(String[] args) {
		int n;
		System.out.println("请输入一个整数:"); 
		// 如果结果为回文数,跳出循环
		while (true) {
			Scanner InpuNum = new Scanner(System.in);
			n = InpuNum.nextInt();
			if (isHuiWen(n)) {
				System.out.println(n + "是回文数!");
				break;
			} else {
				System.out.println(n + "不是回文数!");
			}
		}
	}


	// 判断的数字是否是回文数
	public static boolean isHuiWen(int n) {
		int m = reverse(n);
		if (m == n) {
			return true;
		} else {
			return false;
		}
	}


	// 将输入的数字进行倒置,以便进行判断是否是回文数
	public static int reverse(int n) {
		int temp = 0;// 临时变量
		int j = 0;// 倒置后的数字
		temp = n;// 将输入的数字赋值给临时变量
		while (temp != 0) {
			j = j * 10 + temp % 10;
			temp /= 10;
		}
		return j;
	}
}


当然,还能先将数字转为字符串再判断,方法同上面的字符串判断一样.

除了上面的方法,当然还有其他很多,比如使用递归等.
也可以自己实现倒序字符串方法,如果大家有更好,更高效的方法希望能贴出来,大家一起学习!

  
微笑
微笑
微笑

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135043.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jvm垃圾回收算法有哪些_jvm垃圾回收过程

    jvm垃圾回收算法有哪些_jvm垃圾回收过程JVM垃圾回收算法两个概念:新生代:存放生命周期较短的对象的区域。老年代:存放生命周期较长的对象的区域。相同点:都在Java堆上1.标记–清除算法执行步骤:标记:遍历内存区域,对需要回收的对象打上标记。清除:再次遍历内存,对已经标记过的内存进行回收。图解:缺点:效率问题;遍历了两次内存空间(第一次标记,第二次清除)。空间问题:容易产生大量内存碎片,当再需要一块比…

    2022年9月11日
    0
  • pycharm2021.12.4最近激活码【中文破解版】

    (pycharm2021.12.4最近激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html41MD9IQHZL-eyJsaWNlbnNlSW…

    2022年3月30日
    41
  • mysql基础知识笔记

    mysql基础知识笔记

    2022年2月21日
    49
  • mongodb进阶一之高级查询「建议收藏」

    mongodb进阶一之高级查询

    2022年1月26日
    47
  • JAVA的HelloWorld代码编写

    JAVA的HelloWorld代码编写第一步:新建一个文本文档第二步:打开代码输入代码(注意大小写,Java对大小写很敏感)第三步:更改后缀为.java(这样这个文档就会成为一个原文件)第四步:按住shift键,鼠标右键单击,点击“在此处打开Powershell”第五步:在Powershell窗口里输入JavacHelloworld.java,会出现一个class文档第六步:在Powershell窗口里输入JavacHelloworld会输出HelloWorld…

    2022年5月8日
    451
  • linux之epoll

    1.epoll简介epoll 是Linux内核中的一种可扩展IO事件处理机制,最早在Linux2.5.44内核中引入,可被用于代替POSIXselect和poll系统调用,并

    2021年12月28日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号