题目描述:
给你一个字符串 s ,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。
示例 1:
输入:s = “Hello”
输出:“hello”
示例 2:
输入:s = “here”
输出:“here”
示例 3:
输入:s = “LOVELY”
输出:“lovely”
提示:
1 <= s.length <= 100
s 由 ASCII 字符集中的可打印字符组成
class Solution { public String toLowerCase(String s) { } }
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/to-lower-case
解题思路:
遍历整个字符串,判断字符串中的每个字符是不是大写字母,如果是,将这个字符数值上加上32(注意运算后数据类型为int,要强转为char)追加到新建的StringBuilder字符串中,最后调用StringBuilder中的toString方法返回字符串。
也可以创建一个和字符串一样大小的字符数组,将字符放入数组中,最后将数组转化为字符串返回。
代码实现:
class Solution { //方法一 public String toLowerCase(String s) { StringBuilder str = new StringBuilder(); for(int i = 0; i < s.length(); i++) { if(s.charAt(i)>='A'&&s.charAt(i)<='Z'){ str.append((char)(s.charAt(i) + 32)); }else{ str.append(s.charAt(i)); } } return str.toString(); } //方法二 /*public String toLowerCase(String s) { char[] str = new char[s.length()]; for(int i = 0; i < s.length(); i++){ if(s.charAt(i)>='A' && s.charAt(i)<='Z'){ int ch = s.charAt(i) + 32; str[i] = (char)ch; }else{ str[i] = s.charAt(i); } } return new String(str); } */ }