首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

回文数解决办法

2013-04-20 
回文数Scanner sc new Scanner(System.in)System.out.println(请输入一个数字或字符串:)String s

回文数
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数字或字符串:");
String s = sc.next();
int leng = s.length();
for(int i=0;i<=leng/2;i++)
{
if(s[i]!= s[leng-i-1])
{
System.out.println("不是回文数.");
return;
}
System.out.println("是回文数");
}


Exception in thread "main" java.lang.Error: 无法解析的编译问题:
表达式的类型必须是数组类型,但是它却解析为 String
表达式的类型必须是数组类型,但是它却解析为 String
语法错误,将“) 语句”插入到完整 BlockStatements 中
at 回文数.main(回文数.java:38)

回文数这样需要怎样改动。。
有人跟我说。把string该成数组,但改成数组后。问题1.怎么接收。2.无法判断长度
[解决办法]
看看人家写的。

public class s{
    public static void main(String[] args){
        boolean y = true;
        String str = "aaaaasaaaa";
          Scanner scan = new Scanner(System.in);    
          str = scan.nextLine();
        int b = str.length();
        int c=0;
        while(y){
            if(str.charAt(c+0) != str.charAt(b-c-1)){
                y = false;
            }
            c++;
            if(c >= b/2){
               System.out.println(str + " 是回文数");
               y = false;
            }
        }
        if(c < b/2){
            System.out.println(str + " 不是回文数");
        }
    }
}

热点排行