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;

}

}

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

除了上面的方法,当然还有其他很多,比如使用递归等.

也可以自己实现倒序字符串方法,如果大家有更好,更高效的方法希望能贴出来,大家一起学习!

java语言 回文判断_java判断回文字符串的几种方法相关推荐

  1. java 获取键盘点击_Java中获取键盘输入值的三种方法介绍

    程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这 ...

  2. java校验码的设计_Java动态验证码单线设计的两种方法

    1.java的动态验证码我这里将介绍两种方法: 一:根据java本身提供的一种验证码的写法,这种呢只限于大家了解就可以了,因为java自带的模式编写的在实际开发中是没有意义的,所以只供学习一下就可以了 ...

  3. java取子串_Java中获取子字符串的几种方法示例

    首先假如有这样一串字符串: String s = "共 100 页, 1 2 3 4..."; 假如我想把"100"给取出来,该如何做? 方法一: 采用spli ...

  4. Linux shell:判断变量是否包含某个字符串的几种方法

    方法一:利用grep查找 strA="long string" strB="string" result=$(echo $strA | grep "$ ...

  5. Java判断回文字符串的几种方法

    文章目录 Java判断回文字符串的几种方法 1. 将字符串倒置后逐一比较,示例代码如下: 2. 将字符串倒置后创建新字符串直接比较,示例代码如下: 3. 使用截取字符串的方式比较,示例代码如下: 4. ...

  6. java无线电台RS制信号_中国MOOC_零基础学Java语言_第2周 判断_2信号报告

    2 信号报告(5分) 题目内容: 无线电台的RS制信号报告是由三两个部分组成的: R(Readability) 信号可辨度即清晰度. S(Strength)    信号强度即大小. 其中R位于报告第一 ...

  7. python脚本判断一个数是否为素数的几种方法

    质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也非合数.质数是与合数相对立的两个概念 ...

  8. python中判断一个数是否为素数_【转载】Python脚本判断一个数是否为素数的几种方法...

    质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也非合数.质数是与合数相对立的两个概念 ...

  9. php判断数组的值是否为空,PHP判断数组是否为空的常用方法(五种方法)

    本文介绍了PHP开发中遇到的数组问题,小编在这里给大家总结了5中方法关于php判断数组是否为空问题,需要的朋友参考下 本文介绍了PHP开发中遇到的数组问题,这里介绍了判断PHP数组为空的5种方法,有需 ...

  10. Linux下判断磁盘是SSD还是HDD的几种方法

    文章目录 1.使用Linux相关命令 2.linux查看磁盘所在槽位 1.使用Linux相关命令 方法1: 如果是直通盘,即JBOD模式,方法则正确 如果返回1则表示磁盘可旋转,那么就是HDD了:反之 ...

最新文章

  1. .exe已停止工作_这几天我遇到了前所未有的问题windows10 1809 explorer.exe资源管理器频繁崩溃...
  2. MapReduce初级案例
  3. Windows7安全体验
  4. 云服务器怎么选系统,云服务器怎么选择操作系统
  5. vision画流程图的软件_产品流程图的定义,作用和画法
  6. HDU1864(01背包)
  7. 渗透测试入门9之域渗透
  8. python getattr_深入浅出Python模块
  9. win7计算机用户文件,win7系统用户文件夹改名的图文教程
  10. php日期控件calendar.js,轻量级的原生js日历插件calendar.js使用指南
  11. 在线分析丨相关性分析——RDA/CCA分析
  12. vue前端导出(XLSX)
  13. python实用30个小技巧
  14. 计算机网络带宽是什么意思,带宽是什么有什么意义
  15. Could not initialize proxy - the owning Session was closed ---Hibernate与延迟加载:
  16. 必看五大安全趋势 Fortinet全球威胁态势报告发布
  17. curl命令发送Post请求
  18. arcgis绘核密度分布图
  19. 1279: C语言:概述2(输出三角形图案)
  20. 虚机安装Linux网络配置的一些笔记(隔离,桥接,NAT)

热门文章

  1. 6.4数组作为函数参数
  2. 【C 语言】结构体 ( 结构体 数组 作为函数参数 | 数组 在 栈内存创建 )
  3. SSM框架学习(1)CRM项目初期设计
  4. C# VS2012下的3D显示(一)
  5. 科技之开局量子计算机,科技之开局直播造火箭
  6. 关于直播技术的一些知识
  7. 智能表单之mongoDB的使用
  8. 快时尚行业线上零售数据分析报告
  9. 初三同学的选择——上职高是否可行?
  10. java转换中文乱码_java中文乱码解决之道(四)-----java编码转换过程