A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 何伟超 金牌黑马   /  2014-2-23 16:00  /  1908 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 何伟超 于 2014-2-23 16:39 编辑

题:编写程序,从键盘接收一个字符串,对字符串中的字母进行大小写互转(大写字母转成小写,小写字母转成大写)。
代码:
public class Demo
{
        public static void mian(String[] agrs) throws IOException
        {
                BufferedReader bufr =
                                new BufferedReader(new InputStreamReader(System.in));
               
                String line = null;
               
                while((line=bufr.readLine())!=null)
                {
                        if("over".equals(line))
                                break;
                        //所求代码块
                        
                }
                bufr.close();
        }

}

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

5 个回复

倒序浏览
回复 使用道具 举报

帅哥看看这个怎么样
public class Test5
{
        public static void main(String[] agrs) throws IOException
        {
                BufferedReader bufr =
                                new BufferedReader(new InputStreamReader(System.in));
               
                String line = null;
               
                while((line=bufr.readLine())!=null)
                {
                        if("over".equals(line))
                                break;
                       
                        for(int i = 0; i < line.length(); i++)
                        {
                                if(Character.isLowerCase(line.charAt(i)))
                                {
                                        System.out.print(Character.toTitleCase(line.charAt(i)));
                                }
                                else
                                {
                                        System.out.print(Character.toLowerCase(line.charAt(i)));
                                }
                        }
                       
                }
                bufr.close();
        }
}
回复 使用道具 举报
我虽然有一些C/C++基础,但由于我刚刚学java,只能写一些java代码,请您指教:
char a[]= str.toCharArray();
int n=a.length;
for(int i=0;i<n;i++)
{
        if(a[i]>='a'&&a[i]<='z')  
                a[i]-=32;   
        else if(a[i]>='A'&& a[i]<='Z')
                a[i]+=32;   
}

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
这个题目中能用异或来实现吗?怎么实现?
回复 使用道具 举报
zengming13 发表于 2014-2-24 08:56
我说老大,你这样转,确实可以,但你转一个打印一个,貌似没什么实用性吧
再说,这题考查的不是大小写转 ...

没有,那是不小心多加了。你看看谁不是加分了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马