2015-04-04 62 views
0

我想将字符串转换为大写字母并返回。 但是我没有收到预期的输出。在一个简单的java程序错误

class Exam4{ 
    public static void main(String args[]) throws java.io.IOException{ 
     char ch; 
     int changes = 0; 

     System.out.println("Enter a period to stop"); 

     do{ 
      ch = (char) System.in.read(); 
      if (ch >= 'a' & ch <= 'z') { 
       ch -= 32; 
       changes++; 
       System.out.println("ch"); 
      }else if (ch >= 'A' & ch <= 'Z') { 
       ch+=32; 
       changes++; 
       System.out.println("ch"); 
      } 
     }while(ch != '.'); 

     System.out.println("changes:" + changes); 
    } 
} 
+0

你的问题不是很清楚。 同样对于将来的问题,最好将代码复制并粘贴到帖子中,格式与代码一样。 至于你的错误,如果你想打印一个变量,你没有双引号。所以只是'System.out.print(ch);' – Vahx 2015-04-04 22:47:09

回答

0

你应该说

System.out.println(ch); 

打印出ch的值,而不是

System.out.println("ch"); 

你也可以说

ch = Character.toUpperCase(ch); 

的字符转换顺便说一下,大写。

+0

真的是你的答案伙计 – Pingu 2015-04-05 11:11:34