0709. To Lower Case - kumaeki/LeetCode GitHub Wiki
Given a string s, return the string after replacing every uppercase letter with the same lowercase letter.
Example 1:
Input: s = "Hello"
Output: "hello"
Example 2:
Input: s = "here"
Output: "here"
Example 3:
Input: s = "LOVELY"
Output: "lovely"
Constraints:
- 1 <= s.length <= 100
- s consists of printable ASCII characters.
# 解法1
用map来保存映射关系.
class Solution {
public static Map<Character, Character> map = new HashMap<Character, Character>();
static {
map.put('A','a');
map.put('B','b');
map.put('C','c');
map.put('D','d');
map.put('E','e');
map.put('F','f');
map.put('G','g');
map.put('H','h');
map.put('I','i');
map.put('J','g');
map.put('K','k');
map.put('L','l');
map.put('M','m');
map.put('N','n');
map.put('O','o');
map.put('P','p');
map.put('Q','q');
map.put('R','r');
map.put('S','s');
map.put('T','t');
map.put('U','u');
map.put('V','v');
map.put('W','w');
map.put('X','x');
map.put('Y','y');
map.put('Z','z');
}
public String toLowerCase(String s) {
char[] arr = s.toCharArray();
for(int i = 0, len = arr.length; i < len; i++)
if(map.containsKey(arr[i]))
arr[i] = map.get(arr[i]);
return new String(arr);
}
}
解法2
不用map, 而是计算.
class Solution {
public String toLowerCase(String s) {
char[] arr = s.toCharArray();
int gap = 'A' - 'a';
for(int i = 0, len = arr.length; i < len; i++){
if('A' <= arr[i] && arr[i] <= 'Z')
arr[i] = (char)(arr[i] - gap);
}
return new String(arr);
}
}