Java笔记系列(基于马士兵的课堂)(4)-常用类

11 篇文章 0 订阅
9 篇文章 0 订阅

常用类(j2se提供的常用类)

基础:字符串相关类(String,StringBuffer),基本数据类型包装,math,file,枚举类。

String类:不可变的字符序列。




构造方法:空串构造方法,字节数组(传入字节)构建字符串(在讲一个构造字符串改变成另外一种字符串时往往会用到),字节数组的一部分,特定的字符编码将字节数组改变成为这个字节数组的字符串。(其他String类中的方法见API)

注意斜体方法(都标注了deprecated已经废弃的,不再推荐使用了)

String中的引用,不见得是new出来的,系统在对于data区中的对象有一个优化,相同的引用指向data中的同一个对象,如果是String s=new String(””)此时两个对象位于堆内存中,内容相同,直接不相等,但由于String类里,重写了equals,可以用equals判断,内容是否相等。

String构造方法中可以用多个字符(char[]c={‘a’,’b’}构建字符数组)


String a= new String (c,2,2);(String 常量字符串)

String。Split方法,与StringvalueOf方法见java语法自学

StringBuffer类(buffer缓冲区)

可变的字符序列,与String相区别

不可变的字符串在加的时候,分配了一块新的内存,相当于两个因子的总和,再复制两个银子的内容,最后从占内存中分配变量指向。(效率不高,String是不可变的字符串)

StringBuffer类里是可变的字符串,已出现的字符串可以改变,不会消失。




String类要删减字符,需要截需要字符串,在内存中分配多个内存,并取一块大内存,将这些字符串一一复制。

而StringBuffer类可以直接删减某个字符,相对于String类更加便捷。

Append可以不断地调用,输出结果是StringBUffer类,可以一直增加。


StringBuffer与String类的重大区别就在于两者的内存模型不同。

基础类型包装类:

Integr,Bollean,Character…

每一个类型里都有作为常量最的大值,最小值,在内存中占据多大的空间(可以用对象调用输出),可以参考,来看其是否超出。

其中有toHexString(转化为十六进制字符串)同toBinaryString,toOctalString

可以观察字符的内部结构。

valueOf()将一个包装类对象转换成基础数据类型,用longvalue,将一个基础数据类型,转化为包装类,Long a=newLong(b),b就转化为一个包装类型的Long。

在强制转换的过程中若要舍去小数位一定是小数位被截掉,而不是四舍五入,四舍五入还要用到math里的round方法。

Math与file

数学方法,math类大多静态,大多返回值为double。

abs绝对值,sqrt平方根,exp(自然指数),random返回0.0到1.0间的随机数,toDgree()弧度转化为角度,toRandians()角度转化为弧度。E是一个静态常量

File


Java.io.file 类代表文件名(而不是文件,若要访问文件内容要用io),或者访问路径

Fileliset列出所有子目录到一个数组中,separator(常量)分隔符,在windows下是反斜杠,在linux下是正斜杠,实现了跨平台。

其他见API文档。计算机在存储时间时,都是用一个long类型的变量,存储迄今为止走过的毫秒数,这样所有计算机的时间达到统一(这种方法效率比较高,这样效率高,如果存年月日变量较多)。

当文件在某个包中,文件的上层路径实际上是包的上层路径,而非这个包,因为此时可以认为这个包和这个文件的整体的名字才是这个文件的名字。


File类是一些文件的属性(大小),文件的路径,文件的名字。

枚举类型(enum):

用enum关键字可以定义一个枚举类型,这是一种类型并非一种变量,相当于定义了一种类,若用这种类型定义一种变量,这种变量只能取这种类型中的,不能区别的。

Public enum Mycolor(bulue,red,green)

Mycolor m=Mycolor.red;从而定义一种有限制的变量。

写项目的时候将用到枚举类型,限定变异类型,可以防止取别的值使程序紊乱且找不到。

总结:

String(正侧表达式),基础类型包装类,Math(主要用random取随机数),File(递归与io相关),枚举类型。

注意查询Api文档。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值