Java字符串字符分析

时间:2014-02-14 15:17:56

标签: java string drjava

我在dr java中编写一个简单的程序来读取字符串,然后比较第一个和最后一个字符。我试着对它进行一些验证,但我的语法有问题:

1 error found:
File: /Users/Luke/Documents/University/Programming/Lab/Week 10/wordAnalysis.java  [line: 11]
Error: /Users/Luke/Documents/University/Programming/Lab/Week 10/wordAnalysis.java:11: incomparable types: char and java.lang.String

错误是关于if语句检查while循环中的空格:

import java.util.*;
public class wordAnalysis {
public static void main(String [] args) {
String word;
int charactercount;
Scanner sc = new Scanner(System.in);
System.out.println("Please type a word without spaces, (done to stop) ");
word = sc.next();

while (charactercount <=  word.length()) {
  if (word.charAt(charactercount) == " "){
    System.out.println("your word cannot contain spaces please try again.");
    wordAnalysis.main(args);
  }
}


if (word == "done"){
  System.exit(0);
}
if (word.charAt(0) == word.charAt(word.length() - 1)) {
  System.out.print("the words first and last letter are the same!");
}
else {
  System.out.println("the words first and last letters dont match, try again...");
}

wordAnalysis.main(args);

} }

1 个答案:

答案 0 :(得分:1)

这一行:

if (word.charAt(charactercount) == " "){

使用==来比较2个不同的东西,左边是char,右边是String。所以即使它们都是空间也不能平等。空格的char版本看起来像' '

还有其他问题会阻止代码工作,但那是你现在要问的问题。