日期:2014-05-20  浏览次数:20798 次

求高手指点这个程序哪里错了
import java.util.Scanner;
class CharExchange 
{
public static void main(String[] args) 
{
System.out.print("请输入一个小写字母:");
Scanner sc=new Scanner(System.in);
char ch=sc.nextLine();
char temp =char(ch-32);
System.out.print("与其相对应的大写字母为:"+temp);
}
}


------解决方案--------------------
import java.util.Scanner;
class CharExchange
{
public static void main(String[] args)
{
System.out.print("请输入一个小写字母:");
Scanner sc=new Scanner(System.in);

char ch=sc.nextLine();//sc.nextLine()返回的是字符串类型,不能直接赋给char类型
char temp =char(ch-32);
System.out.print("与其相对应的大写字母为:"+temp);
}
}
------解决方案--------------------
Java code

import java.util.Scanner;
class CharExchange  
{
    public static void main(String[] args)  
    {
        System.out.print("请输入一个小写字母:");
        Scanner sc=new Scanner(System.in);
        
        //sc.nextLine()返回的是字符串类型,不能直接赋给char类型
        //调用String的toCharArray()方法,将字符串分成单个字符分别存放在字符数组ch中
        char [] ch=sc.nextLine().toCharArray();
        //这边需要强制类型转换int为char,另外ch[0]中存放的就是输入的第一个字符
        char temp =(char)(ch[0]-32);
        System.out.print("与其相对应的大写字母为:"+temp);
    }
}