Java随笔(各种坑)

1、遍历字符串str,使用

for(char c: str.toCharArray()){
    System.out.println(c);
}

而不是

for(int i =0; i < str.length(); i++){   
    System.out.println(str.charAt(i));
}

效率会有大幅提升。
当要遍历大量字符串的时候尤其有效。

2、File创建文件夹
java.io.File类有两个创建文件夹的方法,mkdir()mkdirs(),其区别是:

mkdirs()可以建立多级文件夹, mkdir()只会建立一级的文件夹, 如下:
new File(“/tmp/one/two/three”).mkdirs();
执行后, 会建立tmp/one/two/three四级目录
new File(“/tmp/one/two/three”).mkdir();
则不会建立任何目录, 因为找不到/tmp/one/two目录, 结果返回false
copy from…

3、c to i
将char转换成int类型。我们都知道,如果将char强制转换成int,那么将得到这个字符的ascii值。
比如

char c = '1';
int i = (int) c;
System.out.println(i);

得到的值是49。
想要i得到的是1,直接
int i = c - '0';
如果不想这么粗鲁,那么可以使用Character类的静态方法
Character.getNumericValue(c)
这个函数在c是数字的时候,和前者没有任何区别;而当c是一个字母,则返回其在字母表里的序号+10;否则返回-1;

4、null instance
null instanceof x 结果是false

5、强转和乘法
(int) 0.5 * 2 的结果是多少呢?是0。会先把0.5转换成int,再进行乘法计算,这个需要注意。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值