【Java每日编程小练习 2021-01-18】输入一个整数 n,并判断该数字是否是“回文数“

本文介绍了如何使用Java判断一个整数是否为回文数,包括题目重述、分析及四种不同的实现思路,涉及字符串倒序遍历和比较方法。
摘要由CSDN通过智能技术生成

1 题目重述

题目描述:输入一个整数 n,并判断是否是"回文数";
回文数:正向读数与反向读数都一致的数字
例如:

  • 输入:12321
  • 返回:1 代表是回文数
  • 输入:9527
  • 返回:0 代表不是回文数

2 题目分析

2.1 题目梳理

题目中的关键词:输入,整数n,判断,回文数

今天的题目也是输入一个整数,我们就不多加叙述了。今天的重点在于如何判断回文数上。首先我们要明确回文数的概念,回文数就是指从左边开始读数和从右边开始读数,读到的数完全相同。那么我们的问题就变成了如何正序读数和倒叙读数。

对于这一问题,我们可以将整形转换为字符串类型,通过字符串的倒序遍历来实现倒叙读数。

最后,将原数字与倒叙读数的数字进行比较。

2.2 实现思路

2.2.1 输入

采用 Scanner 类的 nextInt() 方法,获取一个整数n。

2.2.2 倒叙读数

将整形转换成字符型,采用String类的volueOf()方法将整型转换成字符型。
采用for循环进行读数,注意,此时我们需要倒序遍历,所以定义i=len-1,通过i–来进行倒序遍历的实现。

2.2.3 判断是否为回文数

这里有四种思路供大家参考。

思路1:采用String类的equals()方法,进行字符串的比较
值得注意的是:String类的equals()方法返回值为Boolean类型,可直接在 if 的表达式中使用。

思路2:采用String类的compareTo()方法,进行字符串的比较
值得注意的是:String类的compareTo()方法返回值为int类型,不能直接在 if 的表达式中使用,需要在 if 的表达式中与0进行比较。

思路3:采用三目运算符进行比较
采用此方法的优点:减少if(){…}else{…}判断语句的使用

思路4:采用Integer类的parseInt()方法将字符串转换为整型,采用==进行比较。

3 代码实现

3.1 方式1:

		// 1 获取一个整数n
		Scanner input = new Scanner(System.in);
		System.out.println("请输入数字:");
		int n = input.nextInt();

		// 2 倒序读数
		// 2.1 将待判断的数字转换成字符串
		// 整型 => 字符串
		String strN = String.valueOf(n);
		// strNum为倒序遍历后的字符串,默认为null
		String strNum = "";

		// 2.2 倒序遍历字符串中的每个字符,从而将输入的数字倒序
		// 2.2.1 判断字符串长度
		int len = strN.length();
		for (int i = len - 1; i >= 0; i--) {
   
			// 2.2.2 倒序取出字符串中的每一个字符
			strNum += strN.charAt(i);
		}
		// 2.2.3 将倒序遍历后的字符串输出
		System.out.println(strNum)
  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值