java 细节

replaceAll是采用正则表达式进行文本的替换,替换所有满足条件的substring。

replace是采用文本本身的内容进行匹配替换,也是所有满足条件的substring。

 

 

java 一维数组进行clone后得到一个新数组。而二维数组clone后得到的只是一个指向原数组的指针???谁知道是怎么一回事。。。。

        如下图所示,二维数组B是从A clone而来。

        clone过程:B = {A[0],A[1],A[2],A[2]}。结果造成了A与B指向了同一块内存区域。

int[][] A = new int[4][4];
A[0][1] = 4;
A[0][2] = 5;

int[][] B = A.clone();

System.out.println(A[1]);
System.out.println(B[1]);

         如果是一维数组,那么就是重新开辟空间了,而不是存指针。

 


//这三个方法反映的都是java这个进程的内存情况,跟操作系统的内存根本没有关系。
//maxMemory()这个方法返回的是java虚拟机(这个进程)能构从操作系统那里挖到的最大的内存,以字节为单位
//totalMemory()这个方法返回的是java虚拟机现在已经从操作系统那里挖过来的内存大小,也就是java虚拟机这个进程当时所占用的所有内存
		
Runtime rt = Runtime.getRuntime();
long free = rt.freeMemory();
long total = rt.totalMemory();
long max = rt.maxMemory();

System.out.println("空闲内存:"+free/1024/1024 + "MB");
System.out.println("总的内存:"+total/1024/1024 + "MB");
System.out.println("最大内存:"+1.0*max/1024/1024 + "MB");
System.out.printf("剩余内存: %.4f\n",1.0*free/total);

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值