2、转换成小写字母

1、题目如下:

实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。

示例 1:

输入: "Hello"
输出: "hello"
示例 2:

输入: "here"
输出: "here"
示例 3:

输入: "LOVELY"
输出: "lovely"

2、代码如下:

class Solution {
    public String toLowerCase(String str) {
        char [] chars=str.toCharArray(); 
        for(int i=0;i<chars.length;i++){
            if(chars[i]>=65&&chars[i]<=91){
                chars[i]=(char)(chars[i]+32);
            }
        }
        return String.valueOf(chars);
    }
}

public class MainClass {
    public static String stringToString(String input) {
        if (input == null) {
            return "null";
        }
        return Json.value(input).toString();
    }
    
    public static void main(String[] args) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        String line;
        while ((line = in.readLine()) != null) {
            String str = stringToString(line);
            
            String ret = new Solution().toLowerCase(str);
            
            String out = (ret);
            
            System.out.print(out);
        }
    }
}

问题思路:
使用.toCharArray()将传入的字符串转换为字符数组,写一个for循环去遍历这个字符数组,并在遍历的过程中使用ASCII码来判断当前字符是否为大写字母。众所周知,ASCII范围为[65,91]的为大写字母。若当前字母为大写字母,则通过大写字母的ASCII码+32转换为小写字母,不过为什么大写字母的ASCII码加32后为其所对应的小写字母呢,通过查询ASCII码表可知,小写字母a的ASCII码为97,而大写字母A的ASCII字母为65。则大写字母和小写字母之间的差值为97-65=32。最后需要使用(char)将ASCII转换为对应的字母。因为转换后的结果为字符数组,而该函数返回类型为String。所以需要使用String.valueOf将char []转换为String。

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,384评论 1 44
  • package cn.itcast_01;/* 字符串:就是由多个字符组成的一串数据。也可以看成是一个字符数组。 ...
    蛋炒饭_By阅读 657评论 0 0
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,282评论 0 4
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,275评论 0 13
  • 赚钱宝的火爆,其实是契合了当下的广大小白的理财需求,尤其是85后和90后,乘着互联网利好的大时代成长起来的。 --...
    大飞老师阅读 232评论 0 1