java判断回文字符代码,判断是否为回文字符串java

求用java判断一个4位回文数代码

public static boolean check(int k){

创新互联公司专注于湾里企业网站建设,自适应网站建设,成都做商城网站。湾里网站建设公司,为湾里等地区提供建站服务。全流程按需网站设计,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务

String str = ""+k;

int strLen = str.length();

int point = strLen;

int oldLen = 0,newLen = 0;

char first = 'a',end = 'a';

oldLen = (strLen+1)/2;

if (str == "")

{

System.out.println("数值为空");

return false;

}

if(str.length() !=4){

System.out.println("不是四位数");

return false;

}

for (int i=0;ioldLen;i++)

{

first = str.charAt(i);

end = str.charAt(point-1);

point--;

if (first == end)

{

newLen++;

}

}

if (oldLen == newLen)

{

return true;

}else {

return false;

}

}

public static void main(String[] args) {

for(int k = 1000;k9999;k++){

boolean is = check(k);

if (is)

{

System.out.println(k+"是回文数");

}else {

// System.out.println(k+"不是回文数");

}

}

}

1001是回文数

1111是回文数

1221是回文数

1331是回文数

1441是回文数

1551是回文数

1661是回文数

1771是回文数

1881是回文数

1991是回文数

2002是回文数

2112是回文数

2222是回文数

2332是回文数

2442是回文数

2552是回文数

2662是回文数

2772是回文数

2882是回文数

2992是回文数

3003是回文数

3113是回文数

3223是回文数

3333是回文数

3443是回文数

3553是回文数

3663是回文数

3773是回文数

3883是回文数

3993是回文数

4004是回文数

4114是回文数

4224是回文数

4334是回文数

4444是回文数

4554是回文数

4664是回文数

4774是回文数

4884是回文数

4994是回文数

5005是回文数

5115是回文数

5225是回文数

5335是回文数

5445是回文数

5555是回文数

5665是回文数

5775是回文数

5885是回文数

5995是回文数

6006是回文数

6116是回文数

6226是回文数

6336是回文数

6446是回文数

6556是回文数

6666是回文数

6776是回文数

6886是回文数

6996是回文数

7007是回文数

7117是回文数

7227是回文数

7337是回文数

7447是回文数

7557是回文数

7667是回文数

7777是回文数

7887是回文数

7997是回文数

8008是回文数

8118是回文数

8228是回文数

8338是回文数

8448是回文数

8558是回文数

8668是回文数

8778是回文数

8888是回文数

8998是回文数

9009是回文数

9119是回文数

9229是回文数

9339是回文数

9449是回文数

9559是回文数

9669是回文数

9779是回文数

9889是回文数

哪不懂在问我吧

java判断输入一段字符串是不是回文

import java.util.Scanner;

public class A {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println("请输入一个字符串:");

String str = scanner.next();

boolean isloop = isLoop(str);

if (isloop) {

System.out.println(str + "是回文字符");

} else {

System.out.println(str + "不是回文字符");

}

}

public static boolean isLoop(String str) {

for (int i = 0, j = str.length() - 1; i  str.length() / 2; i++, j--) {

if (str.charAt(i) != str.charAt(j)) {

return false;

}

}

return true;

}

}

【java】编写程序,要求判断从键盘输入的字符串是否为回文

对于回文这个问题,我们一般的解决方法是用递归

package com.axjy.yzn;

public class Recursive {

public static void main(String[] args) {

System.out.println("Is abcba a Palindrome?"+isPalindrome("abcdcba"));

}

public static boolean isPalindrome(String s){

if(s.length()=1){

return true;

}else if(s.charAt(0) != s.charAt(s.length()-1)){

return false;

}

return isPalindrome(s.substring(1,s.length()-1));

}

}

java 的一段监测回文代码

这段代码是判断输入的字符串是不是回文。

所谓回文,是指诸如:abcba这样的字符串,也就是说第一个字母也最后一个字母相同,第二个字母与倒数第二个字母相同,以些类推。

这段代码的关键是下面这几句:

while (j = (i / 2) -1 word.charAt(j) == word.charAt(i - j - 1))

j++;

这个就是从字符串的第一个字母开始逐一判断是否满足回文的要求,如果所有的都满足,那么,这个循环结束时,j = (i/2),这样就可以用下面的条件语句来判断是否为回文了。

下面是这段代码的注释,希望能帮到你~!

import java.util.Scanner;

public class PalindromeV1 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);//接受从控制台的输入

System.out.println("输入一个字符串: ");

String word = sc.next();//将用户输入的字符串保存到word中

int i = word.length();//获取输入的字符串的长度,保存到i中

int j = 0;//初始化变量j

//从字符串的第一个字母开始逐一判断是否满足回文的要求,如果所有的都满足,那么,这个循环结束时,j = (i/2)

while (j = (i / 2) - 1 word.charAt(j) == word.charAt(i - j - 1))

j++;

//判断是否为回文

if (j == i / 2)

System.out.println("输入字符串是回文.");

else

System.out.println("输入字符串不是回文.");

}

}

JAVA正话反说判断“回文”,字符串的比较问题,贴代码:

这个问题,你可以逆向思考

现在出现的现象是无论输入什么,最终都会是回文,那也就是说,当执行

if(str1.equals(str2)){

System.out.println("是回文");}

else{

System.out.println("不是回文");}

一定都是执行的第一个打印语句

也就是说str1.equals(str2)一定返回true

也就是说这equals两个比较对象一定是相等,换句话说这个两个对象其实指的是一个对象,只是不同的引用名而已

也就是说str1和str2都是指的一个StringBuffer对象

也就是说reverse()方法是直接返回了本对象

查看源码证实:

/**

* @since   JDK1.0.2

*/

@Override

public synchronized StringBuffer reverse() {

toStringCache = null;

super.reverse();

return this;

}

可以看到最终返回this,也就是返回的是本对象,也就证实了刚的想法

所以综上所诉,现在再来看一下整个代码的执行过程

创建了一个StringBuffer对象str1,里面包装的字符串是"上海自来水

"

打印对象str1,所以此时打印的是:上海自来水

给对象str1调用reverse()方法,此时并没有新创建一个StringBuffer,而是直接修改了str1里面的包装字符串,改为"水来自海上",并返回了str1对象给str2

所以str1和str2其实都指的是一个StringBuffer(里面包含的都是"水来自海上")

此时打印str2,当然显示的是"水来自海上",其实若这是你再打印哈str1就明白了,因为这个是str1也打印出来的是"水来自海上"

个人建议写法

因为你只是需要做一个回文的功能,因此可以只是把StringBuffer的reverse方法作为一个工具即可,所以建议如下写法

String str1 = "上海自来水";

System.out.println("原来的话为:"+str1);

String str2=new StringBuffer(str1).reverse().toString();

System.out.println("正话反说为:"+str2);

if(str1.equals(str2)){

System.out.println("是回文");}

else{

System.out.println("不是回文");}

java编程判断是否回文

看你的要求真麻烦

给你一个简单的不行联系我

import java.util.Scanner;

public class test{

public static void main(String []dafd){

int num=(new Scanner(System.in)).nextInt();

String s=num.toString();

boolean b=true;

for(int i=0;is.length/2;i++){

if(s.charAt(i)!=s.charAt(s.length-i-1)){

b=false;

break;

}

}

System.out.pirntln(num+(b?"是":"不是")+"回文数");

}

}


本文名称:java判断回文字符代码,判断是否为回文字符串java
URL标题:http://pwwzsj.com/article/hsheje.html