java 输入一个小写字母 转换为大写字母输出 这段代码哪错了 怎么改

import java.util.Scanner;
public class Test{
public static void main(char[] args){
System.out.println("输入一个小写字母:");
char smallletter = (new Scanner(System.in)).next();//从键盘输入一个字符
char capitalletter = (char)(smallletter - 32); //强制类型转换
System.out.println("大写字母:" + capitalletter);
}
}

.next()
方法接收的也是String类型的,不过nextLine()是以回车为标志,next()是以空格为标志
java中没有直接读入字符的方法
将你的
char smallletter
换成String smallletter
然后用smallletter.charAt(i)替代
smallletter然后用循环,i<smallletter.length()输出就可以了追问

看不明白 能把代码列出来吗

追答

import java.util.Scanner;
public class Test{
public static void main(char[] args){
System.out.println("输入一个小写字母:");
String smallletter = (new Scanner(System.in)).next();//从键盘输入一个字符
for(int i=0;i<smallletter.length();i++){
char capitalletter = (char)(smallletter.charAt(i) - 32); //强制类型转换
//直接用charAt()方法获取i位上的字符就行了
System.out.println("大写字母:" + capitalletter);
}
}
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-13
首先 。next();它是一个Sting型的。所以错误。你可以用Sting里面的方法。toUppercase来转化。java里面有太多的方法。没事可以看看JDK api文档
第2个回答  2011-09-13
import java.util.*;
public class Convert
{
public static void main(String[] args)
{
System.out.println("输入一个小写字母:");
String smallletter = (new Scanner(System.in)).next();//从键盘输入一个字符
char[] letter=smallletter.toCharArray();
char capitalletter = (char)(letter[0] - 32); //制类型转换
System.out.println("大写字母:" + capitalletter);
}
}追问

char[] letter=smallletter.toCharArray();
这句是什么意思 转为字符数组吗

第3个回答  2011-09-13
smallletter - 32字符串怎么可以做运算呢?

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网