zoukankan      html  css  js  c++  java
  • 字符串.特殊引用类型

    string str="123";
    //其实在内存中开辟一个空间,创建了一个String类型的对象
    String str1=new String(new char[]={'1','2','3'});

    1.字符串可以看做成一个string数组

    char c=str[0];

    2.str,length可以表示字符串的字符个数

    3.字符串一旦被创建就不能被修改

         在创建字符串对象时,会先去字符串拘留池中寻找是否有相同的内容的对象,如果没有再去创建

         字符串在内存中存储在字符串拘留池中,当被重新赋值是,变量名指向新的对象,而当前对象会保留,一旦有对象存储相同内容是,将它指向旧的字符串。

    4.字符串对象一旦被创建,不会被GC回收

    5常用操作

    string.Empty代表一个空串"",强调不是指null;
    //判断指定字符串是否以指定的字符技术
    bool a=str.Endwith("2");
    //Equals 判断两个指定的字符串的内容是否相同
    
    //Format格式化字符串
    string s=string.Format("我爱{0},你爱{1}","",他);
    •Length
    •方法
    •IsNullOrEmpty()  静态方法,判断为null或者为””
    •ToCharArray() 将string转换为char[]
    •ToLower()  小写,必须接收返回值。(因为:字符串的不可变);
    •ToUpper()              大写
    •Equals()                   。。。。
    •IndexOf()               如果没有找到对应的数据,返回-1 
    •LastIndexOf()  如果没有找到对应的数据,返回-1
    •Substring()  //2个重载
    •Split() 
    •Join()  静态方法
    •Format  ()  静态方法
    •Replace()  Trim() 
    6.字符串连接
    直接连接时每次连接都会在内存中创建一个对象,连接效率底下
    而在System.text空间下,的StringBulider可以很好的解决连接效率问题
    StringBulider sb=new StringBuilder();
    sb.append("a");
      

    sb对象时可变的,当改变这个对象的字符串时不回去新开空间 而是直接改变

     
  • 相关阅读:
    SQL Server XML数据解析
    c# XML和实体类之间相互转换(序列化和反序列化)
    C#解析XML详解(XPath以及带命名空间NameSpace)
    Jquery实现按钮点击遮罩加载,处理完后恢复
    jquery控制div随滚动条滚动效果
    asp.net中利用Jquery+Ajax+Json实现无刷新分页(二)
    easyUI tree点击文字展开节点
    201805牛客模拟考
    策略模式
    非线程安全演变成线程安全---原子性与加锁机制
  • 原文地址:https://www.cnblogs.com/liuhao2050/p/3800091.html
Copyright © 2011-2022 走看看