LeetCode(String) 1108. Defanging an IP Address
1.问题
Given a valid (IPv4) IP address, return a defanged version of that IP address.
A defanged IP address replaces every period “.” with “[.]”.
给定一个有效的 (IPv4) IP 地址,返回该 IP 地址的 defanged 版本。 损坏的 IP 地址会替换每个句点“.”和 ”[.]”
Example 1:
Input: address = “1.1.1.1”
Output: “1[.]1[.]1[.]1”
Example 2:
Input: address = “255.100.50.0”
Output: “255[.]100[.]50[.]0”
2.解题思路
方法1:
使用字符串的的替换方法:字符串.replace(String oldChar, String newChar)
方法2和方法3:
1.新建一个StringBuilder的字符串可变的对象str
2.将address拆成字符串
3.如果字符串的==“.”,str中添加”[.]“
4.如果字符串的不等”.“,str中添加元素”
5.返回字符串转换成String
3.代码实现
方法1:
class Solution {
public String defangIPaddr(String address) {
return address.replace(".","[.]");
//使用字符串的的替换方法:字符串.replace(String oldChar, String newChar)
}
}
方法2:
class Solution {
public String defangIPaddr(String address) {
StringBuilder str = new StringBuilder();//1.新建一个StringBuilder的字符串可变的对象str
for (int i = 0; i < address.length(); i++){
//2.将address拆成字符串
if (address.charAt(i) == '.'){
//3.如果字符串的==".",str中添加"[.]"
str.append("[.]");
} else {
str.append(address.charAt(i));//4.如果字符串的不等".",str中添加元素"
}
}
return str.toString();//5.返回字符串转换成String
}
}
方法3:
class Solution {
public String defangIPaddr(String address) {
StringBuilder temp = new StringBuilder();
//String 对象的 toCharArray() 方法将字符串转换为字符数组
char[] c = address.toCharArray();
for(int i= 0;i<c.length;i++){
if(c[i] !='.'){
temp.append(c[i]);
}else{
temp.append("[.]");
}
}
return temp.toString();
}
}
class Solution {
public String defangIPaddr(String address) {
StringBuilder temp = new StringBuilder();
//String 对象的 toCharArray() 方法将字符串转换为字符数组
for (char c : address.toCharArray()) {
if (c != '.') temp.append(c);
else temp.append("[.]");
}
return sb.toString();
}
}
还没有评论,来说两句吧...