zoukankan      html  css  js  c++  java
  • 字符串

    一、字符串

    字符串对象一旦被初始化就不会被改变。

    string s="abc";

    string s1="abc";

    字符串常量被放在字符串常量池中,所以s和s1的地址是相同的,都指向字符串常量池中的“abc”。

    但是:

    string s="abc";

    String s1=new String("abc");

    上述语句中,s和s1却不相等,因为s1指向的是堆地址。

    s.equals(s1)是相同的,因为字符串的equals方法比较的是字符串内容是否相同。

    字节数组转成字符串:

    byte [] a={97,65,66,67};

    String s=new String(a);

    将字符数组转成字符串:

    char[] ch={'a','b','c','d'};

    String s=new String(ch);

    将字符串变成字符数组:

    char [] ch=s.toCharArray();

    将字符串变成字节数组:

    byte []=s.getBytes();

    字符串对象的比较不能用<等符号,而要用compareTo()方法。

    stringBuffer是字符串缓冲区,用于存储数据的容器。

    特点:

    1.长度可变

    2.用于存储不同数据类型

    在jdk1.5之后,出现了和StringBuffer功能一模一样的对象StringBuilder,不同之处为:

                StringBuffer是线程同步的,通常用于多线程。

                而StringBuilder是线程不同步的,其效率高,经常用于单线程。

     StringBuffer和StringBuilder都是存放字符串的容器,在Java中处理大量数据的时候,一般都优先考虑使用容器。

  • 相关阅读:
    [Effective JavaScript 笔记]第54条:将undefined看做“没有值”
    [Effective JavaScript 笔记]第53条:保持一致的约定
    UDP打洞原理介绍
    Uboot启动分析之Start.S
    MMU
    linux_shell
    SSH2配置
    线程同步
    C#线程基础
    客户端服务器通讯常用的一种方法——Marshal类
  • 原文地址:https://www.cnblogs.com/jsddj/p/7638148.html
Copyright © 2011-2022 走看看