通过万岁!!!
- 题目:给你一个ip地址,然后把里面的".“都换成”[.]"。
- 思路:直接用string的replace方法啊,然后直接return,这真的是我做过最简单的简单题了。当然,还有其他的方式,就是遍历这个字符串,然后new 一个StringBulider,我去看了一下源码,源码好像是用的StringBuffer。这里附带一下这两者的区别吧,
- String、StringBuffer、StringBuilder区别和使用场景
- 内存上:String是由final修饰的,是不可变的,意味着每次操作String都会产生一个新的String对象。StringBuffer和StringBuilder都是在原对象上操作。
- 安全上:StringBuffer是线程安全的,而StringBuilder是线程不安全的。因为StringBuffer方法都是synchronized修饰的,程序员不需要额外的加synchronized。在多线程、共享变量的时候保证结果正确性即为安全。
- 性能上:StringBuilder>StringBuffer>String。
- 因此优先使用StringBuilder,多线程使用共享变量的时候使用StringBuffer。
- String、StringBuffer、StringBuilder区别和使用场景
- 技巧:String
java代码
class Solution {
public String defangIPaddr(String address) {
return address.replace(".", "[.]");
}
}
java代码——StringBuilder
class Solution {
public String defangIPaddr(String address) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < address.length(); i++) {
if (address.charAt(i) == '.') {
sb.append("[.]");
} else {
sb.append(address.charAt(i));
}
}
return sb.toString();
}
}
- 总结:题目是真的简单,希望大家能够掌握一些常用函数。其实日积月累就可以了。