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;
	}
}


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

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

  
微笑
微笑
微笑

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【笔记】EFCore & SQLite 拼音汉字互换

    【笔记】EFCore & SQLite 拼音汉字互换1vs2019新建.netcoreconsole项目,NuGet添加包Microsoft.EntityFrameworkCore//efcoreMicrosoft.EntityFrameworkCore.Design//在nugetMicrosoft.EntityFrameworkCore.Tools//控制台中管理数据迁移Microsoft.EntityFrameworkCore.Sqlite//sqliteM.

  • TLSF算法分析

    TLSF算法分析注:本文的大部分内容摘录自论文《TLSF:aNewDynamicMemoryAllocatorforReal-TimeSystems》,可以通过“科学上网”访问如下链接阅读原文:http://www.gii.upv.es/tlsf/files/ecrts04_tlsf.pdf。什么是TLSFTLSF是TwoLevelSegregatedFitmemoryal

  • oracle 错误01017,ORA-01017:用户名密码出错 故障实例

    oracle 错误01017,ORA-01017:用户名密码出错 故障实例sysdba登录ORA-01017:用户名密码出错故障排查实例早上接到一个朋友的急call,说是数据库的sys登录不了系统叻。普通用户连接可以登录,只要是assysdba就提示ORA-01017:用户名密码出错。很显然这是一个典型的sysdba登录的问题。首先要他查看了sqlnet文件。SQLNET.AUTHENTICATION_SERVICES=(NONE)启动密码文件验证了,接着查看…

  • Xray使用「建议收藏」

    Xray使用「建议收藏」安装过程本文省略,想看安装请看这个——>《Xray安装与使用》20200806,下班前五分钟安装好了,在windows上安装的,后执行了扫描一个url的命令。.\xray_windows_amd64.exewebscan–urlhttp://example.com/–html-outputxray-testphp.html扫了个知道有SQL注入的地址,确实可以扫出来,整了txt和html的报告,都还行。20200807,测试开代理被动扫描。先修改了config.yam

  • 手机修改ntp服务器地址,修改手机ntp服务器ip地址[通俗易懂]

    手机修改ntp服务器地址,修改手机ntp服务器ip地址[通俗易懂]修改手机ntp服务器ip地址内容精选换一换本文介绍使用云手机服务时需要了解的基本概念。云手机是一台包含原生安卓操作系统,具有虚拟手机功能的云服务器,简单来说,云手机=云服务器+AndroidOS。您可以远程实时控制云手机,实现安卓APP的云端运行;也可以基于云手机的基础算力,高效搭建应用,如云游戏、移动办公、直播互娱等场景。服务器是用来提供云手机的物理服务器。云手机目前以服务器您可以直接修改虚…

  • react根据json配置创建表单_关于web页的叙述不正确

    react根据json配置创建表单_关于web页的叙述不正确我是一个新手,MVC3和剃刀和我需要结合/加载的WebGrid一旦数据从AJAX后返回的帮助。任何帮助将真正理解(项目截止日期即将到来之际);)我的情况是这样的:我有两个级联的下拉列表。第一个列表包含从数据库中的区域。一旦一个区域中,选择它填充第二个下拉用的设备的清单。一旦设备被选中,我需要填充的WebGrid有建筑物清单。我有级联下拉菜单正常工作Index.cshtml:@u…

发表回复

您的电子邮箱地址不会被公开。

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