java语言 回文判断_java判断回文字符串的几种方法
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判断回文字符串的几种方法相关推荐
- java 获取键盘点击_Java中获取键盘输入值的三种方法介绍
程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这 ...
- java校验码的设计_Java动态验证码单线设计的两种方法
1.java的动态验证码我这里将介绍两种方法: 一:根据java本身提供的一种验证码的写法,这种呢只限于大家了解就可以了,因为java自带的模式编写的在实际开发中是没有意义的,所以只供学习一下就可以了 ...
- java取子串_Java中获取子字符串的几种方法示例
首先假如有这样一串字符串: String s = "共 100 页, 1 2 3 4..."; 假如我想把"100"给取出来,该如何做? 方法一: 采用spli ...
- Linux shell:判断变量是否包含某个字符串的几种方法
方法一:利用grep查找 strA="long string" strB="string" result=$(echo $strA | grep "$ ...
- Java判断回文字符串的几种方法
文章目录 Java判断回文字符串的几种方法 1. 将字符串倒置后逐一比较,示例代码如下: 2. 将字符串倒置后创建新字符串直接比较,示例代码如下: 3. 使用截取字符串的方式比较,示例代码如下: 4. ...
- java无线电台RS制信号_中国MOOC_零基础学Java语言_第2周 判断_2信号报告
2 信号报告(5分) 题目内容: 无线电台的RS制信号报告是由三两个部分组成的: R(Readability) 信号可辨度即清晰度. S(Strength) 信号强度即大小. 其中R位于报告第一 ...
- python脚本判断一个数是否为素数的几种方法
质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也非合数.质数是与合数相对立的两个概念 ...
- python中判断一个数是否为素数_【转载】Python脚本判断一个数是否为素数的几种方法...
质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也非合数.质数是与合数相对立的两个概念 ...
- php判断数组的值是否为空,PHP判断数组是否为空的常用方法(五种方法)
本文介绍了PHP开发中遇到的数组问题,小编在这里给大家总结了5中方法关于php判断数组是否为空问题,需要的朋友参考下 本文介绍了PHP开发中遇到的数组问题,这里介绍了判断PHP数组为空的5种方法,有需 ...
- Linux下判断磁盘是SSD还是HDD的几种方法
文章目录 1.使用Linux相关命令 2.linux查看磁盘所在槽位 1.使用Linux相关命令 方法1: 如果是直通盘,即JBOD模式,方法则正确 如果返回1则表示磁盘可旋转,那么就是HDD了:反之 ...
最新文章
- .exe已停止工作_这几天我遇到了前所未有的问题windows10 1809 explorer.exe资源管理器频繁崩溃...
- MapReduce初级案例
- Windows7安全体验
- 云服务器怎么选系统,云服务器怎么选择操作系统
- vision画流程图的软件_产品流程图的定义,作用和画法
- HDU1864(01背包)
- 渗透测试入门9之域渗透
- python getattr_深入浅出Python模块
- win7计算机用户文件,win7系统用户文件夹改名的图文教程
- php日期控件calendar.js,轻量级的原生js日历插件calendar.js使用指南
- 在线分析丨相关性分析——RDA/CCA分析
- vue前端导出(XLSX)
- python实用30个小技巧
- 计算机网络带宽是什么意思,带宽是什么有什么意义
- Could not initialize proxy - the owning Session was closed ---Hibernate与延迟加载:
- 必看五大安全趋势 Fortinet全球威胁态势报告发布
- curl命令发送Post请求
- arcgis绘核密度分布图
- 1279: C语言:概述2(输出三角形图案)
- 虚机安装Linux网络配置的一些笔记(隔离,桥接,NAT)