Q:假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
A:
暂时没有想到什么太好的方法,就先放上一个比较常规的思路的解法。
1 public class RemoveSubString {
2 public static void main(String [] args)
3 {
4 String str=new String("6sabcsssfsfs33");
5 char [] arr=str.toCharArray();
6 StringBuffer sb=new StringBuffer();
7 for(int i=0;i<arr.length;i++)
8 {
9 if(arr[i]!='a'&&arr[i]!='b'&&arr[i]!='3')
10 {
11 sb.append(arr[i]);
12 }
13 }
14 str=sb.toString();
15 System.out.println(str);
16 }
17 }
需要遍历一次字符串的长度,时间复杂度为O(n)。
Q: MVC模式的优点和缺点
A:
优点:
1. 分散关注点
2. 松散耦合
3. 逻辑复用
4. 标准定义
缺点:
1. 性能较低
2. 级联修改问题,特别是对于自上而下的逻辑实现