zoukankan      html  css  js  c++  java
  • string字符串的常用方法

    string

    • 不可变性:不管对字符串做什么操作,都会在内存中产生一块新的实例。
    • 字符串常量的“驻留池”。
    • 可以将一个字符串看作是char类型的只读数组。
    • GC(Garbage Collection):每隔一段时间,会扫描整个内存,若发现有的空间没有被指向,则立即把它销毁。

    string的常用方法和示例

    • 静态方法
    isNullOrEmpty():判断此字符串是否为null或者为Empty。null没有分配空间,Empty是分配了空间
                string s = "";
                if (string.isnullorempty(s))
                {
                    console.writeline("是");
                }
                else
                {
                    console.writeline("不是");
                }
                //输出:是 
    
    Join():在字符串之间加入特定字符
                string res1 = string.Join("|", "金1", "金2", "金3");
                Console.WriteLine(res1);
                //输出:金1|金2|金3
    
    • 普通方法
    将字符串转为char数组
                string str = "abcdefg";
                char[] chs = str.ToCharArray();
                foreach (char item in chs)
                {
                    Console.WriteLine(item);
                }
                //输出:
                //a
                //b
                //c
                //d
                //e
                //f
                //g
                
    char数组转为字符串
                chs[2] = 'z';
                str = new string(chs);
                Console.WriteLine(str);
                //输出:abzdefg
    
    转大写
                string str = "abcDEE";
                Console.WriteLine(str.ToUpper());
                //输出:ABCDEE
                
    转小写
                Console.WriteLine(str.ToLower());
                //输出:abcdee
                
    == 比较的值, Equals 比较的是引用;
    在string中均比较值
    
    忽略大小写比较是否相等
                string s1 = "aBc";
                string s2 = "AbC";
                if (s1.Equals(s2, StringComparison.OrdinalIgnoreCase))
                {
                    Console.WriteLine("相等");
                }
                else
                {
                    Console.WriteLine("不相等");
                }
                //输出:相等
    
    找某个字符在字符串中的位置
                string str = "abdsads";
                int index0 = str.IndexOf("a");
                int index1 = str.IndexOf("a", index0 + 1);
                int index2 = str.LastIndexOf("a");
                Console.WriteLine(index0);
                //输出:0
                Console.WriteLine(index1);
                //输出:4
                Console.WriteLine(index2);
                //输出:4
    
    从指定的位置开始往后面截取字符串
                string str = "abcd,efg";
                string strNew = str.Substring(1);
                string strNew1 = str.Substring(1, 2);
                Console.WriteLine(strNew);
                //输出:bcd,efg
                Console.WriteLine(strNew1);
                //输出:bc
                int index = str.IndexOf(",");
                string strNew2 = str.Substring(index + 1);
                Console.WriteLine(strNew2);
                //输出:efg
    
    部分字符剔除
                string str = "a  _b  ,, c, MM";
                string[] strNew = str.Split(new char[] { ' ', '_', ',' }, StringSplitOptions.RemoveEmptyEntries);
                foreach (string item in strNew)
                {
                    Console.WriteLine(item);
                }
                //输出:
                //a
                //b
                //c
                //MM
                
    字符串转char类型数组 ToCharArray();
    字符串转string类型数组 Split();
    
    
    去除空白字符 Trim() TrimEnd() TrimStart()
                string s = "  ,,_ 占 ,_,  山  _,,  ";
                //去除前面和后面,中间不去除
                Console.WriteLine(s.Trim());
                //输出:,,_ 占 ,_,  山  _,,
    
                string[] names = { "金1", "金2", "金3" };
                string res = string.Empty;
                for (int i = 0; i < names.Length - 1; i++)
                {
                    res += names[i] + "|";
                }
                Console.WriteLine(res + names[names.Length - 1]);
                //输出:金1|金2|金3
    判断contents中是否包含敏感词            
                Console.WriteLine("请输入你要回复的内容");
                string contents = Console.ReadLine();
                if (contents.Contains("0"))
                {
                    contents = contents.Replace("0", "*");
                }
                Console.WriteLine(contents);
                //输入:123001;输出:123**1
    
  • 相关阅读:
    [转载]HAO123的迷思——谈谈SEO
    [转]软件版本命名规范
    [转载]万能讲话稿
    世界各国(地区)货币名称及其进位制
    [转载]SDK相关概念
    MeteoInfoJava解析与绘图教程(六)
    MeteoInfoJava解析与绘图教程(七)_图层添加站点名称或区域名称
    测试工具备查
    背景样式
    38年一遇的双七夕,今天你怎样过情人节?
  • 原文地址:https://www.cnblogs.com/ChaoJieLiu/p/11908523.html
Copyright © 2011-2022 走看看