十、JavaSE进阶之API文档及常用类(String)。

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 十、JavaSE进阶之API文档及常用类(String)。,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

一、API概述

什么是API?

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

API的使用

  1. 打开API帮助文档
    在这里插入图片描述

  2. 单击显示出现目录等功能

在这里插入图片描述
3. 查看Java中的包以及包中的类

二、String类

1.概述

String是不变对象,即:字符串对象创建后,表示的字符内容不可变,若改变必定创建新对象
java对于字符串的优化:
字符串常量池,这是在堆内存中开辟的一块空间,用于保存所有使用字面量形式创建的字符串对象,当再次使用该字面量创建新的字符串时,会直接重用而不会再创建新的以达到节省内存开销的目的.

public class Text {
    public static void main(String[] args) {
            String s1="abcdef";
            String s2=new String("xy");
            String s3=s1+s2;
        System.out.println(s1+"\t"+s2+"\t"+s3);

    }
}

在这里插入图片描述

2.常用构造方法:

i.String(char[] value) 分配一个新的 String,它代表了目前包含在字符数组参数字符序列。
ii.String(char[] value, int offset, int count) 分配一个包含字符与字符数组数组参数的新 String。
iii.String(String original) 初始化新创建的对象 String所以它代表相同的字符序列的说法;换句话说,新创建的字符串是一个副本的参数字符串。
iiii.String() 初始化新创建的 String对象,它代表了一个空字符序列。

3.String类常用的方法:

(1)String substring(int start,int end) 截取当前字符串中指定范围内的字符串

        String s1 = newString("abcdef");
        String str1=s1.substring(2,5);
        System.out.println(str1);

(2)charAt(int index) 获取当前字符串中指定位置对应的字符

        String s1 = new String("abcdef");
        char c1=s1.charAt(2);
        System.out.println(c1);

(3)compareTo(String anotherString) 比较两个字符串的字典。

   		String s1 = "abcdef";
        String s2="abd";
        int a=s1.compareTo(s2);
        System.out.println(a);

(4)String toUpperCase() String toLowerCase() 将当前字符串中的英文部分转换为全大写或全小写

        String str="cvbdfe";
        System.out.println(str.toUpperCase());

        String str2="ACBDFE";
        System.out.println(str2.toLowerCase());

(5)String trim() 去除当前字符串两侧的空白字符

   String str = "  avcd  ";
   System.out.println(str.trim());

(6)int len=str.length(); 获取当前字符串的长度(字符个数)

        String str="chsujahsnmje";
        System.out.println(str.length());

(7)boolean startsWith(String str) boolean endsWith(String str) 判断字符串是否是以给定的字符串开始或结尾的

        String str="acbvgdem";
        System.out.println(str.startsWith("a"));
        System.out.println(str.endsWith("m"));

(8)equals(Object anObject)字符串相等比较,不忽略大小写

        String s1="abcd";
        String s2="abcd";
        System.out.println(s1.equals(s2));

(9)equalsIgnoreCase(String anotherString)字符串相等比较,忽略大小写

        String s1="abcd";
        String s2="ABCd";
        System.out.println(s1.equalsIgnoreCase(s2));

(10)indexOf(int ch) 取得指定字符在字符串的位置

        String s1="abcd";
        System.out.println(s1.indexOf("b"));

(11)lastIndexOf(int ch) 返回在指定字符的最后一个发生的字符串内的索引。

        String s1="abcdbdchb";
        System.out.println(s1.lastIndexOf("b"));

(12)replaceAll(String regex, String replacement)替换字符串中指定的内容

    String str="我是中国人";
    System.out.println(str.replaceAll("中国","陕西"));

(13)split(String regex) 根据指定的表达式拆分字符串

        String str="abccba";
        String[] s=str.split("c");
        System.out.println(Arrays.toString(s));

(14). valueOf,将其他类型转换成字符串

        System.out.println(String.valueOf(12));
        System.out.println(String.valueOf('v'));
        System.out.println(String.valueOf(123456L));
        System.out.println(String.valueOf(23.45F));
        System.out.println(String.valueOf(123.95));
        System.out.println(String.valueOf(true));

三、 StringBuffer 和 StringBuilder

1.StringBuffer

StringBuffer 称为字符串缓冲区,它的工作原理是:预先申请一块内存,存放字符序列,如果字符序列满了,会重新改变缓存区的大小,以容纳更多的字符序StringBuffer 是可变对象,这个是 String 最大的不同。
如果使用大量的字符串拼接时,使用StringBuffer类。(底层为初始化16个长度的byte数组)

1.常用方法:
//拼接字符串调用append();方法
        StringBuffer sbStr = new StringBuffer();
        sbStr.append("a");
        sbStr.append("b");
        System.out.println(sbStr);

2.StringBuilder

1.String的优化措施仅照顾重用性,因此频繁修改字符串会带来内存开销大,运行效率差的结果对此,java提供一个专门用于修改字符串的API
2.其内部维护一个可变的char数组,所有的修改都是在这个数组中进行的,因此开销小,性能好,并且其提供了
便于修改字符串的一系列方法,包括了增,删,改,插等基本操作

1.常用方法:
 StringBuilder builder=new StringBuilder();
        //拼接
        builder.append("为了拯救世界!");
        System.out.println(builder);
        //删除
        builder.delete(0,2);
        System.out.println(builder);
        //插入
        builder.insert(0,"我们");
        System.out.println(builder);
        //修改
        builder.replace(2,5,"改变世界");
        System.out.println(builder);
为了拯救世界!
拯救世界!
我们拯救世界!
我们改变世界界!

3. StringBuffer 和 StringBuilder区别

StringBuffer中的方法有synchronized关键字修饰表示在多线程下是安全的StringBuilder线程不安全

今天的分享就到这里啦!!~希望对大家有帮助的话多多支持下 ~

分享知识,快乐编程,欢迎攻城狮们多多交流!!!~

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/144940.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!