StringBuffer

增加

    append(boolean b)    可以添加任意类型的数据到容器中

    insert(int offset,boolean b)  指定插入的索引值,插入对应的内容    (offset可以理解为想插入的东西在插入后的索引值为多少,也就是想插入地方右区间的索引值)

删除

    delete(int start ,int end)    根据指定的开始与结束的索引值删除对应的内容

    deleteCharAt(int index)   根据指定的索引值删除一个字符

修改

    replace(int start,int end,String str)  根据指定的开始与结束索引值替代成指定的内容

    reverse()      翻转字符串缓冲类的内容。   abc————>cba

    setCharAt(int index,char ch)  把指定索引值的字符替换指定的字符。

    subString(int start,int end)   根据指定的索引值截取子串

    ensureCapacity(int minimumCapacity)   指定StringBuffer内部的字符数组长度的。

查看

    indexOf(String str,int fromIndex)   查找指定字符串第一次出现的索引值,并且指定开始查找的位置

    capacity()   查看当前字符数组的长度

    charAt(int index)   根据指定的索引值查找字符

    lastIndexOf(String str)  查找指定字符最后一次出现的索引值

    length() 存储的字符个数

    toString()   把字符串缓冲类的内容转换成字符串返回

判断

public static void main(String[] args) {
// TODO Auto-generated method stub
//先使用StringBuffer无参的构造函数创建一个字符串缓冲类。
StringBuffer sb=new StringBuffer();
sb.append("abc");
System.out.println("字符串缓冲类的内容:"+sb);
/* 添加
sb.append(true);
sb.append(3.14f);
System.out.println("字符串缓冲类的内容:"+sb);
*/
//插入
sb.insert(2, "小明");
System.out.println("字符串缓冲类的内容:"+sb);
//删除
sb.delete(2, 4); //删除的时候也是包头不包尾的
System.out.println("字符串缓冲类的内容:"+sb);
sb.insert(2, "小明");
sb.deleteCharAt(3);
System.out.println("字符串缓冲类的内容:"+sb);
} 结果:
字符串缓冲类的内容:abc
字符串缓冲类的内容:ab小明c
字符串缓冲类的内容:abc
字符串缓冲类的内容:ab小c
public static void main(String[] args) {
// TODO Auto-generated method stub
//先使用StringBuffer无参的构造函数创建一个字符串缓冲类。
StringBuffer sb=new StringBuffer();
sb.append("abc");
System.out.println("字符串缓冲类的内容:"+sb);
/* 添加
sb.append(true);
sb.append(3.14f);
System.out.println("字符串缓冲类的内容:"+sb);
*/
//插入
sb.insert(2, "小明");
System.out.println("字符串缓冲类的内容:"+sb);
//删除
/*sb.delete(2, 4); //删除的时候也是包头不包尾的
System.out.println("字符串缓冲类的内容:"+sb);
sb.insert(2, "小明");
sb.deleteCharAt(3);
System.out.println("字符串缓冲类的内容:"+sb);
*/
//修改
sb.replace(2, 4, "陈小狗");
System.out.println("字符串缓冲类的内容:"+sb);
sb.reverse();
System.out.println("字符串缓冲类的内容:"+sb);
sb.reverse();
sb.setCharAt(3, '红');
System.out.println("字符串缓冲类的内容:"+sb);
System.out.println("字符串的内容:"+sb.substring(2, 4));
sb.ensureCapacity(20);
} 结果:
字符串缓冲类的内容:abc
字符串缓冲类的内容:ab小明c
字符串缓冲类的内容:ab陈小狗c
字符串缓冲类的内容:c狗小陈ba
字符串缓冲类的内容:ab陈红狗c
字符串的内容:陈红
public static void main(String[] args) {
// TODO Auto-generated method stub
StringBuffer sb=new StringBuffer();
sb.append("abcjavaabc");
//查找
System.out.println("索引值为:"+sb.indexOf("abc", 0));
System.out.println("索引值为:"+sb.indexOf("abc", 3));
//sb.ensureCapacity(20);
sb.append("javajava");
System.out.println("查看字符数组的长度:"+sb.capacity());
System.out.println("存储字符的个数:"+sb.length());
System.out.println("根据指定的索引值查找字符:"+sb.charAt(2));
System.out.println("转换成字符串输出:"+sb.toString());
} 结果:
索引值为:0
索引值为:7
查看字符数组的长度:34
存储字符的个数:18
根据指定的索引值查找字符:c
转换成字符串输出:abcjavaabcjavajava

StringBuffer与StringBuilder的相同处与不同处:

    相同点:

      1.两个类都是字符串缓冲类

      2.两个类的方法与实现都是一致的

    不同点:

      1.StringBuffer是线程安全的,操作效率低,StringBuilder是线程非安全的,操作效率高

      2.StringBuffer是jdk1.0出现的,StringBuilder是jdk1.5的时候出现的

推荐使用:StringBuilder,因为操作效率高。

System类   系统类    主要用于获取系统的属性数据

System类常用的方法:

    arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

import java.util.*;
public class Demo1 {
/*
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。
* */
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] srcArr= {10,12,14,16,19};
//把srcArr数组的元素拷贝到destArr数组中
int[] destArr=new int[4];
System.arraycopy(srcArr, 1, destArr, 0, 4);
System.out.println("目标数组的元素:"+Arrays.toString(destArr));
} } 结果:
目标数组的元素:[12, 14, 16, 19]

    currentTimeMillis()    获取当前系统时间       重点

System.out.println("当前的系统时间是:"+System.currentTimeMillis());

结果:
当前的系统时间是:1549623586306

    exit(int status)      退出jvm    如果参数是0表示正常退出jvm,非0表示异常退出jvm  0或者非0的数据都可以退出jvm,对于用户而言没有任何区别    一般

public static void main(String[] args) {
// TODO Auto-generated method stub
int[] srcArr= {10,12,14,16,19};
//把srcArr数组的元素拷贝到destArr数组中
int[] destArr=new int[4];
System.arraycopy(srcArr, 1, destArr, 0, 4);
System.exit(0); //jvm退出... 0或者非0的数据都可以退出jvm。对于用户而言没有任何区别
System.out.println("目标数组的元素:"+Arrays.toString(destArr));
System.out.println("当前的系统时间是:"+System.currentTimeMillis()); } 结果:

(编程习惯:try块中一般传0,catch中一般传非0,其实传什么也可以达到效果)

Java学习笔记(13)的更多相关文章

  1. java学习笔记(13) —— google GSON 实现json转化方法

    1.配置struts.xml <action name="getGsonAction" class="com.test.action.json.GetGsonAct ...

  2. Java学习笔记-13.创建窗口和程序片

    1.init()方法:程序片第一次被创建,初次运行初始化程序片时调用. start()方法:每当程序片进入web浏览器中,并且允许程序片启动他的常规操作时调用(特殊的程序片被stop()关闭):同样在 ...

  3. Java学习笔记13(面向对象六:super)

    在创建子类对象时,父类的构造方法会先执行,因为子类中所有构造方法的第一行有默认的隐式super();语句 注意:父类构造方法第一行也有隐式的super(); 所有类都有一个"祖宗类" ...

  4. Java学习笔记13(equals()方法;toString()方法)

    equals()方法: equals方法是Object类中的方法:Object是所有类的祖宗,所以所有类都有equals()方法: boolean equals(Object obj); equals ...

  5. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  6. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  7. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  8. 20145330第十周《Java学习笔记》

    20145330第十周<Java学习笔记> 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就 ...

  9. 20145330第九周《Java学习笔记》

    20145330第九周<Java学习笔记> 第十六章 整合数据库 JDBC入门 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JD ...

  10. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

随机推荐

  1. 今天安装了arch,感觉不错,这速度可以

    虽然没有想想中的那么那么快,不过已经可以了 总结一下遇到的问题以及i自己安装的软件 1.u盘硬盘不能自动挂载 安装gvfs 2.不能读写挂载 安装ntfs-3g 3.时间不对 照wiki上的说 #ln ...

  2. 448D - Codeforces

    D. Multiplication Table time limit per test 1 second memory limit per test 256 megabytes Bizon the C ...

  3. FC4-i386-SRPMS

    [重点] http://archives.fedoraproject.org/pub/archive/fedora/linux/core/6/ http://archives.fedoraprojec ...

  4. 【Educationcal Codeforces Round 21】

    这场edu我原本以为能清真一点…… 后来发现不仅是七题 还有各种奇奇怪怪的骚操作…… A. 随便枚举 #include<bits/stdc++.h> using namespace std ...

  5. Python的web服务器

    1.浏览器请求动态页面过程 2.WSGI Python Web Server Gateway Interface (或简称 WSGI,读作“wizgy”). WSGI允许开发者将选择web框架和web ...

  6. js-xlsx操作excel表格

    1导入与导出功能实现 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  7. Mui自定义时间格式:

    Mui自定义时间格式: (function($) { $.init(); $(document).on('tap','.btn',function(){ var obj = getFormJson($ ...

  8. Python调用shell

    今天学习了Python通过子进程调用shell,感觉教程上讲的过于繁复,有一些根本没用的功能,比如重定向输入输出,这个shell本身就支持,没有必要用Python的api.决定自己总结下. 其实总的来 ...

  9. MySQL关键字大全

    转载自:https://blog.csdn.net/benxiaohai888/article/details/77803090 在使用MySQL的时候,一般尽量避免用关键字作为表名,如使用关键字做表 ...

  10. hdu 4198:Quick out of the Harbour解题报告

    Quick out of the Harbour Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java ...