StringBuffer概述及使用

1. StringBuffer

1.1 StringBuffer概述

	为了解决String字符串操作导致的内存冗余,提高效率,Java中提供了StringBuffer和StringBuilder来操作字符串,并且提供了很多方法,便于程序员开发。
	StringBuffer和StringBuilder中都有char类型可变长数组作为字符串的保存空间。使用到的方法类型和ArrayList类似。
	
	StringBuffer 线程安全,效率较低
	StringBuilder 线程不安全,效率较高

1.2 StringBuffer构造方法

构造方法 Constructor
	StringBuffer();
		创建一个未存储任何字符串信息的空StringBuffer空间,底层初始化一个16个字符
		char类型数组
	StringBuffer(String str);
		根据提供的String类型字符串创建对应的StringBuffer空间,底层char类型数组的容
		量会根据str.length + 16决定,并且保存对应的str

1.3 添加方法

append(Everything)
	在StringBuffer和StringBuilder对象中,添加另外的数据,并且当做字符串处理。
insert(int index, Everything)
	在StringBuffer和StringBuilder对象中,在指定的下标位置,添加其他内容,并且当做
	字符串处理

1.4 查看方法

String toString();	
	将底层的char类型数组保存的字符内容转换成对应的String类型字符串返回
int length();
	返回底层char类型数组中有多少有效元素。
String substring(int begin);
	从指定位置开始获取到char类型数组有效元素末尾对应的字符串,截取操作,
String substring(int begin, int end);
	从指定位置begin开始到end结束,获取对应的字符串,要头不要尾
int indexOf(String str);
	指定元素字符串所在下标位置
int lastIndexOf(String str);
	指定元素字符串最后一次所在下标位置

1.5 修改方法

replace(int start, int end, String str);
	从指定位置start开始,到end结束,start <= n < end, 使用str替换
setCharAt(int index, char ch);
	使用ch替换指定下标index对应的字符

1.6 删除和反序

delete(int start, int end);
	删除指定范围以内的字符 start <= n < end
deleteCharAt(int index);
	删除指定下标的字符
reverse();
	逆序

2. Math数学类

Java中一些数学方法

public static double abs(double a);
	返回值为绝对值
public static double ceil(double a);
	向上取整
public static double floor(double a);
	向下取整
public static double round(double a);
	四舍五入
public static double random();
	随机数 0.0 <= n < 1.0

2.1 方法使用

package com.qfedu.b_math;

/*
 * Math工具类方法
 */
public class Demo1 {
	public static void main(String[] args) {
		// 绝对值
		System.out.println(Math.abs(1.5));
		System.out.println(Math.abs(-1.5));
		System.out.println(Math.abs(5));
		System.out.println(Math.abs(-5));
	
		System.out.println("--------------------------------");
		
		// 向上取整
		System.out.println(Math.ceil(1.5));
		System.out.println(Math.ceil(1.1));
		System.out.println(Math.ceil(-1.9));
		System.out.println(Math.ceil(-2.9));
		
		System.out.println("--------------------------------");
		
		// 向下取整
		System.out.println(Math.floor(10.5));
		System.out.println(Math.floor(10.1));
		System.out.println(Math.floor(-10.5));
		System.out.println(Math.floor(-10.1));
		
		System.out.println("--------------------------------");
		
		// 四舍五入
		System.out.println(Math.round(3.5)); // 4
		System.out.println(Math.round(3.4)); // 3
		System.out.println(Math.round(-2.5)); // -2
		System.out.println(Math.round(-2.4)); // -2
		System.out.println(Math.round(-2.6)); // -3
	}
}
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值