package cn.bjsxt.stringbuilder;
/**
* String 不可变字符序列
* StringBuilder StringBuffer都是是可变字符序列
* 区别在于StringBuilder(线程不安全,效率高) StringBuffer是(线程安全,效率低)
* @author Administrator
*
*/
public class Test01 { public static void main(String[] args) {
StringBuilder sb = new StringBuilder();//字符数组长度默认16,因为父类构造方法设置的是16
StringBuilder sb1 = new StringBuilder();//字符数组长度默认32
StringBuilder sb2 = new StringBuilder("abcd");//字符长度="abcd"+字符数组长度默认16=20个字符
// 因为父类里面方法重写是16+字符串长度
sb2.append("efg");//在字符创后边添加字符串
sb2.append(true);//还可以添加布尔值
System.out.println(sb2); sb2.append(false).append().append(1.0);//因为 这个方法 return this 所以可以一直调用
System.out.println(sb2); System.out.println("######################"); StringBuilder gh = new StringBuilder("a");//长度"a"+16=17的字符 为什么下面循环20次却可以呢?建新数组替换老数组扩容
//扩容大小(17+1)*2 老数组 没人引用 会被 垃圾回收
//循环里面调用append() 循环添加字符 //看append()源码发现
for(int i=;i<;i++){
gh.append(i);
}
System.out.println(gh);
}
 package cn.bjsxt.stringbuilder;
/**
* StringBuilder 线程不安全 效率快
* StringBuffer 唯一的区别 就是 线程安全 效率慢
* 因为加了 synchronized同步的 锁 每次都要等待
* @author Administrator
*
*/
public class Test02 {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder("abcdefghigklmnopqrstuvwxyz");
//删除 3 4 不包含5
sb.delete(, );//[3,5)
System.out.println(sb);//abcfghigklmnopqrstuvwxyz
//翻转
sb.reverse();
System.out.println(sb);//zyxwvutsrqponmlkgihgfcba StringBuffer sb2 = new StringBuffer();
}
}

常用类一一字符串相关类一一StringBuilder,StringBuffer。的更多相关文章

  1. Java基础之Java常用类--Object类,字符串相关类,包装类,日期相关类,数字相关类

    Java是一种面向对象的语言,也就是将万事万物可以描述为对象,特点如下: 1.面向对象是常见的一种思考习惯,符合人们的思考习惯.2.面向对象的出现,将复杂的事情简单化.3.面向对象的出现,将之前过程中 ...

  2. 常用类一一字符串相关类一一String类 字符串的使用

    Java字符串就是Unicode字符序列,例如“Java”就是4个Unicode字符J,a,v,a组成的. Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义的类String,每个 ...

  3. day15--Java常用类之日期相关类

    Java常用类 3.日期相关类 3.1Date类 在标准Java类库中包含一个Date类,它的对象表示一个特定的瞬间,精确到毫秒.在网上商城下单时,在对报销单进行审核时,都需要获取当前的时间,通过Da ...

  4. java常用类详细介绍及总结:字符串相关类、日期时间API、比较器接口、System、Math、BigInteger与BigDecimal

    一.字符串相关的类 1.String及常用方法 1.1 String的特性 String:字符串,使用一对""引起来表示. String声明为final的,不可被继承 String ...

  5. 常用linux 命令 -字符串相关

    参考网络文章,个人工作总结 题记:一般对字符串的操作有以下几种:求长度,截取字符串,拼接字符串,找字符串中某个字符的索引 1 expr 命令 1.1 定义 man 手册 Print the value ...

  6. 零基础学Java第四节(字符串相关类)

    本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...

  7. Android字符串相关类 - CharSequence

    Class Overview CharSequence定义为public interface.该接口用于表示一个有序字符的集合,并在其中定义里了处理字符的方法. 已知的常用间接子类有String, S ...

  8. Math类和Random类(数学公式相关类)

    Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. 常用方法: 1.static 数值类型 abs(数值类型 a)      返回 double 值的绝对值. 2.sta ...

  9. C#工具类之字符串扩展类

    /// <summary> /// 字典串帮忙类 /// </summary> public static class StringHelper { /// <summa ...

随机推荐

  1. 【appium】根据id定位元素

    目前没有尝试成功,等成功后补充 id=Resource Id,可以通过UIAutomatorViewer获得.如果目标设备的API Level低于18则UIAutomatorViewer不能获得对应的 ...

  2. php的zend引擎执行过程 一

    1. Zend引擎主要包含两个核心部分:编译.执行: 执行阶段主要用到的数据结构: opcode: php代码编译产生的zend虚拟机可识别的指令,php7有173个opcode,定义在 zend_v ...

  3. bzoj 3768: spoj 4660 Binary palindrome二进制回文串

    Description 给定k个长度不超过L的01串,求有多少长度为n的01串S满足: 1.该串是回文串 2.该串不存在两个不重叠的子串,在给定的k个串中. 即不存在a<=b<c<= ...

  4. appium定位方法

    1.id定位 driver.find_element_by_id("这里是resource-id") 2.name定位 (新版本的appium 1.7 已经没有这个定位方法了) d ...

  5. jquery的load()事件和ajax中load()方法的区别

    load事件 当图像加载时,改变 div 元素的文本: $("img").load(function(){ $("div").text("Image ...

  6. [转][html][jquery]

    <!-- 强行修改 CSS --> $('a').css("cssText","background:#fff !important;color:#2d6dc ...

  7. linux修改文件系统挂载的目录

    比如想把已经挂载在home目录上的硬盘挂载到data目录上, 如下操作 #df -h(查看分区情况及数据盘名称) # mkdir /data(如果没有data目录就创建,否则此步跳过) # umoun ...

  8. pandas的map函数与apply函数的区别

    import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(4,3),columns=list("ABC ...

  9. C# 控制台程序(Console Application )启动后隐藏

    背景 前段时间给项目编写了数据适配器,读取其他系统的数据后推送到MQ上,我们的系统通过订阅MQ的方式来获取.由于其他系统支持C#编程,且为了一时方便,选择了C#的控制台程序. 最近用户在使用中,总是不 ...

  10. SQL Server2016 配置管理器

    SQL Server2016 以后版本配置管理器的配置管理器不再同数据库工具集成,是单独的应用. Windows 10: 要打开 SQL Server 配置管理器,请在“起始页”中键入 SQLServ ...