1、前端请求后端时候,除了url中params里面+,&,>,<等会转义之外,如果是post请求中也会出现转义字符的问题。
post请求:
body:
{
"limit":100,
"order":"name:desc;id:asc",
"where":"code==风险投资&age!=32&month<5"
}
后端通过
@Requestbody Entity entity接收,这个时候上面body体中的&会转义成'&';
所以解决办法之一:
前端传输的时候直接用转义之后的特殊字符。
image.png
所以上面body体可以修改为:
body:
{
"limit":100,
"order":"name:desc;id:asc",
"where":"code==风险投资&age!=32&month<5"
}
2、java split()使用“.” “\” "|" "*" "+"要转义
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String string=in.nextLine();
//要使用"."分割,必须使用\\转义:如:split("\\.");
//regex为\\\\,因为在java中\\表示一个\,而regex中\\也表示\,所以当\\\\解析成regex的时候为\\。
String[] strs=string.split("\\\\");
for(String s:strs){
System.out.println(s);
}
}
}
3、git push to origin/feature was rejected
解决:
在terminal 中
git pull,
git pull origin feature,
git pull origin feature --allow-unrelated-histories
4、java中 &&和&,||和|的区别
&&:短路与。只需要判断一边为假,总体就为假,不用判断另外一边;
&:与。需要判断两边都为假;
||:短路或。只需要判断一边为真,总体就为真,不用判断另外一边;
|:或。需要两边判断都为假,总体才为假。
5、java中List<Integer>类型remove()方法的注意点
remove()
方法有两个接口,一个是remove(Object o)
,还有一个是remove(int index)
。先看一个list
List<Integer> testList = new ArrayList<>();
testList.add(1);
testList.add(5);
testList.add(3);
testList.add(4);
如果我们想要删除这个list
中元素5,得到{1,3,4},如果在不知道5这个元素索引的情况下,我们删除它。
- 错误做法:
testList.remove(5);
这样调用的是remove(int index)
方法,会造成IndexOutOfBoundsException
异常。即便不越界,我们删除的也不是我们想要删除的那个元素。
- 正确做法:
testList.remove(new Integer(5));
这样删除的才是我们想要删除的元素5。
网友评论