Fork me on GitHub

java学习--java.lang包中常用的类

  java.lang包中的类是不需要import

  基本数据类型的包装类

  

  包装类的使用相差不大,使用方法则以Integer为例

   属性:

    MAX_VALUE最大值
    MIN_VALUE最小值

    

   构造方法:
  Integer t1 = new Integer(123);int构造成Integer
  Integer t2 = new Integer("1234");将数字字符串构造成Integer
  Integer t3 = 12345;

   包装类与其对应的基本数据类型的区别是,包装类型所占用的内存比基本类型所占用的内存大。包装类型是一个对象,有方法可以用。基本类型转换为包装类型的过程叫装箱,反之叫拆箱。

   

   常用方法:
  ● Integer.parseInt("")将字符串转换成数字
  Integer.paserInt("",2)按照指定的进制将字符串转换成数字
  
  ● Integer.toString(83);将数字转换成字符串
  Integer.toString(83,2);将数字转换成指定进制的字符串
  

  Integer.toBinaryString(-127);将数字转换成二进制的字符串
  Integer.toOctalString(83);将数字转换成八进制的字符串
  Integer.toHexString(255);将数字转换成十六进制的字符串

  ps: Integer,paserInt(arg1,arg2)Integer.toString(arg1,arg2)返回的结果一个是10进制,一个是指定进制,因为16进制只用数字是无法表示的。

    二进制都是用补码的形式表示的

    原码:十进制直接转换成的二进制
    补码:正数的补码和原码相同

    负数的补码=对应正数的原码的反码+1

 

  Object

  object类是除自己本身之外,所有类的父类(类层次结构的根类)

  equals(Object obj)判断两个对象是否"相等"

  hashCode()获得对象的哈希码
  toString()获得对象的字符串形式

  ps:object类的equals方法要区分String类的equals方法

 

  System系统类

  System.out.println()控制台输出语句

  System.err.println()控制台错误输出语句(红色)

  System.exit(0);正常退出程序
  System.currentTimeMillis()获得系统的当前时间,单位毫秒*(返回的数值是从1970.1.1  0:0:0日到当前日期的毫秒数)

   System.arraycopy(src,index,dest,index2,length);数组拷贝方法

  //参数1:要拷贝的原数组
  //参数2:开始拷贝的下标位置
  //参数3:存放数据的目标数组
  //参数4:目标数组中开始存放数据的下标
  //参数5:要拷贝的数据个数

  String/StringBuffer/StringBuilder

  String

  String是一个常量,一旦定义就不可以更改
  本质上String是一个char数组

   ps:String不是基本数据类型

  常用构造方法
  String()创建一个空的字符串
  String(byte[]);使用默认的字符集将字节数组转换成字符串
  String(byte[],"GBK");使用指定的字符集将字节数组转换成字符串
  String(byte[],start,length);将字节数组中从start下标开始,到lenght个字节转换成字符串
  String(byte[], start,length, "GBK")
  String(char[])将字符数组转换成字符串
  String(char[],start,length)将字符数组的一部分转换成字符串

   

  常用的方法
  getBytes();使用默认的字符集将字符串转换成字节数组
  getBytes("GBK");使用指定的字符集将字符串转换成字节数组
  toCharArray();将字符串转换成字符数组
  length()字符串的长度[字符的个数]
  concat(String)拼接字符串,相当于+
  contains(String)判断字符串中是否包含参数字符串
  endsWith(String)是否以指定的字符串结尾
  startWith(String)是否以指定的字符串开头
  equals(String)比较值是否相等
  equalsIgnoreCase(String)比较值是否相等,忽略大小写
  indexOf(String)判断子字符串第一次出现的下标位置,如果是-1表示没有出现
  lastIndexOf(String)判断子字符串最后一次出现的下标位置,如果是-1表示没有出现
  matches(String)判断字符串是否匹配正则表达式
  replace(old,new)使用新字符串替换子字符串
  split(String)根据指定的标记切割字符串
  substring(start)从指定的位置开始截取字符串
  substring(start,end)从指定位置开始到指定位置结束截取字符串
  trim()去掉字符串首尾的空格
  toLowerCase();转换成小写
  toUpperCase();转换成大写
  valueOf(数据)将数据转换成字符串类型

 

  PS:
  字符集:字符有哪一些数字组成的规则
  ISO-8859系列 只能处理半角字符,不能处理中文
  GBK/GB2312/GB18030简体中文字符集
  Big5 繁体中文字符集
  UTF-8 基于Unicode编码的字符集

  

  StringBuilder长度可变字符串,线程不安全

  StringBuffer长度可变字符串,是线程安全的,

  性能比StringBuilder要差一些

  ps:不需要线程安全,且数据多的情况下使用StringBuilder考虑数据安全的情况下使用StingBuffer,数据少的时候,用String

posted @   Banana_Fish  阅读(400)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
点击右上角即可分享
微信分享提示