JavaSE(五)

本文详细介绍了Java中的Arrays工具类,包括排序和二分查找方法。此外,讲解了String类的多种方法,如构造、比较、截取、转换等。还讨论了Integer类的特性,如最大值、最小值以及转换方法。最后,提到了日期处理中的SimpleDateFormat类和System.currentTimeMillis()。这些内容对于理解和操作Java基本类型及常用工具类至关重要。
摘要由CSDN通过智能技术生成

JavaSE(五)

一、常用Arrays工具类

  1. 排序
Arrays.sort(arr)
  1. 寻找某元素的下标(二分法)
//找5在数组中的下标,没有则返回-1
Arrays.binarySearch(arr,5)

二、String相关常用的方法

  1. 构造方法1
byte[] bytes = {97,98,99};
String s1 = new String(bytes);
//String(字节数组,数组元素下标的起始位置,长度)
String s2 = new String(bytes,1,2);//bc

char[] chars = {'我','是','中','国','人'};
String s4 = new String(chars);
//String(char数组,起始下标,长度)
String s5 = new String(chars,2,3)//中国人
  1. .charAt()
char c = "中国人".charAt(1)//国
  1. compareTo()
//比较第一个不一样的字符,能看出来谁打谁小
int result = "abc".compareTo("abc");//0
int result2 = "abcd".compareTo("abce");//-1
int result3 = "abce".compareTo("abcd");//1
  1. contains()
//判断前面的字符串是否包含后面的字符串
"HelloWorld".contains("Hello");//true
  1. endsWith()和startsWith
//判断字符串是否以某个字符串开始
"HelloWorld".startsWith("Hello");//true
//判断字符串是否以某个字符串结尾
"HelloWorld".endsWith("World");//true
  1. equalsIgnoreCase()
//忽略大小写
"ABC".equalsIgnoreCase("abc");//true
  1. getBytes()
//将字符串转换成字节数组
"abcdef".getBytes();//['a','b','c','d','e','f']
  1. indexOf()和lastIndexOf()
//判断某个字符串在当前字符串中第一次出现处的索引
"HelloWorld".indexOf("ello");//1
//判断某个字符串在当前字符串中最后一次出现处的索引
"java.java".lastIndexOf("java");//5
  1. isEmpty()
//判断某个字符串是否为空
"".isEmpty();//true
  1. .length()
//字符串的长度
"abc".length();//3
  1. replace
//替换指定字符串
"name=zhangshan&password=123".replace("=",":")//name:zhangsan&password:123
  1. .split()
//拆分字符串
"1990-10-11".split("=");//["1999","10","11"]
  1. substring()
//截取字符串
"helloworld".substring(3);//loworld
//不包含5
"helloworld".substring(3,5);//lo
  1. toCharArray()
//将字符串转成一个char数组
"我是中国人".toCharArray();//['我','是','中','国','人']
  1. toLowerCase()和toUpperCase()
//将字符串转换成小写
"ABc".toLowerCase();//abc
//将字符串转换成大写
"abC".toLowerCase();//ABC
  1. trim()
//去除前后空白
"   helloworld   ".trim();//helloworld
  1. valueOf();
//将内容转成字符串 
int i = 1223;
String.valueOf(i);//"1223"
//会调用对象的toString方法
String.valueOf(new Student());
  1. StringBuffer 线程安全的
//创建一个容量为16的byte[]数组(字符串缓冲区)
StringBuffer stringBuffer  = new StringBuffer();
//追加字符串,
stringBuffer.append("a");
stringBuffer.append("b");
stringBuffer.append("123");
//如果数组满了,会自动扩容
stringBuffer.append("c");
System.out.println(stringBuffer);//ab123c
//Stirng底层也是byte[]数组,但是final修饰不可变,不会被释放
//最好给定初始化容量,减少数组扩容次数
StringBuffer stringBuffer  = new StringBuffer(100);
  1. StringBuilder 非线程安全的

三、Integer

  1. 通过包装类常量,来获取最大值和最小值
Integer.MAX_VALUE;//2147483647
Integer.MIN_VALUE;//-2147483647
  1. ==不会触发自动拆箱机制,只有运算的时候会自动拆箱
  2. java为了提高程序效率,把[-128到127]之间的所有的包装对象提前创建好,放在了方法区“整数型常量池”中
  3. inValue()手动拆箱
  4. parseInt
//将string转成int
Ingeter.parseInt("123");
  1. 进制转换方法
//转二进制
Integer.toBinaryString(3);//11
//转十六进制
Integer.toHexString(17);//11
//转八进制
Integer.toOctalString(9);//11
  1. Sting、int和Integer互相转换Sting、int和Integer互相转换

四、日期常用方法

  1. SimpleDateFormat类
//创建一个日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

//将日期对象转换成符合格式的字符串对象
sdf.format(new Date());

//将符合格式的字符串对象转换成日期对象
sdf.parse("2008-08-08 08:08:08 888")
  1. System.currentTimeMillis()
//获取自1970年1月1日 00:00:00 000到当前系统时间的总毫秒数
long nowTimeMillis = System.currenTimeMillis();

3.Date()有参构造

//参数是自1970年1月1日 00:00:00 000以来的毫秒数
new Date(1);
//获取昨天此时此刻的时间
new Date(System.cuurentTimeMillis()-1000*60*60*24);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值