char 与 string 互转 byte与string互转 list<string>与string[]互转 char与byte互转
class Program
{
static void Main(string[] args)
{
//string类型到数组 char[]数组
string str1 = "123";
string str2 = "abc";
string str3 = "表示表示";
char[] ch1= str1.ToCharArray();
char[] ch2 = str2.ToCharArray();
char[] ch3 = str3.ToCharArray();
//char[]数组到string类型
foreach(var x in ch3)
Console.WriteLine(x);//表 示 表 示
char[]ca1=new char[]{'1','表','中'};
string cs = new string(ca1);
Console.WriteLine(cs);//1表中
//string类型到数组 byte[]数组
byte[] by1 = Encoding.UTF8.GetBytes(str1);
byte[] by2 = Encoding.UTF8.GetBytes(str2);
byte[] by3 = Encoding.UTF8.GetBytes(str3);
foreach(var xx in by3)
Console.Write(xx + " ");//232 161 168 231 164 186 232 161 168 231 164 186 utf-8中字符占3字节
// byte[]数组到string类型
byte[] ba1 = new byte[] { 11,22,33};
// string bs = new string(ba1);//编译报错 无byte数组构造函数
string bs = Encoding.Default.GetString(ba1);//系统默认编码
Console.WriteLine(bs);//输出 ..! byte->ascll码的char->string
//char和byte char占两字节 可存汉字 byte为一字节 在C#中大小为[1,255]之中 否则编译报错
char c1='表';
// byte b1 = "1";//编译出错
// byte b2 = -1;//编译出错
byte b3 = 0;
byte b4 = 255;
// byte b5 = 256;//编译出错
Console.WriteLine("\n"+b4);//255
Console.WriteLine("\n" + c1);//表
//char 和 byte转换时 char->byte会转成数字 byte->char会转成ascll字符 下面的结果是在 日文系统下的输出结果 怎么算的未知 先搁着
char c2 = (char)b4;
Console.WriteLine(c2);//c2=255输出 y
byte b6 = (byte)c1;
Console.WriteLine(b6);//104
//string 数组到list<string>
string[]sa1=new string[]{"aaa","bbb","333"};
List<string> ls1 = new List<string>(sa1);
Console.WriteLine(ls1.Count);//结果为 3
//list<string>到 数组string
List<string> ls2 = new List<string>();
ls2.AddRange(new string[]{"123","234","345"});
string[] sa2 = ls2.ToArray();
Console.WriteLine(sa2.Length);//结果为 3
Console.Read();
}
}
补充: string str = "1234";
char[]cs= str.ToArray();//将str看成一个char的集合 类似List<string>ls=new List<string>{new string{"123","abc","vvv"}}; ls.toArray()
foreach (var item in cs)
{
Console.Write(item);//1,2,3,4,
}
string cv = "11223344567";
string[] nstr= cv.Split(str.ToArray());
Console.WriteLine("new array length:" + nstr.Length);//9 【1】【2】【3】【4】【1】【2】【3】【4】【567】
foreach (var items in nstr)
{
Console.Write(items);//输出567
}
Console.Read();
char 与 string 互转 byte与string互转 list<string>与string[]互转 char与byte互转的更多相关文章
- java中String是对象还是类?详解java中的String
有很多人搞不懂对象和类的定义.比如说java中String到底是对象还是类呢? 有人说String 既可以说是类,也可以说是对象. 其实他这么说也没问题, 类和对象其实都是一个抽象的概念. 我们可以把 ...
- Java String类相关知识梳理(含字符串常量池(String Pool)知识)
目录 1. String类是什么 1.1 定义 1.2 类结构 1.3 所在的包 2. String类的底层数据结构 3. 关于 intern() 方法(重点) 3.1 作用 3.2 字符串常量池(S ...
- go语言byte类型报错cannot use "c" (type string) as type byte in assignment
练习Go修改字符串的时候遇到这个问题:cannot use "c" (type string) as type byte in assignment,代码如下: package m ...
- android switch(String)错误:Cannot switch on a value of type String for source level below 1.7
switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型只有JDK版本1.7以上才可以支持String 设置如下可解决问题:(若没有JDK1.7版,可下载一下安装)菜 ...
- python string写入二进制文件——直接wb形式open file,再write string即可
4 down vote accepted You misunderstood what \xhh does in Python strings. Using \x notation in Python ...
- c++中string类型用下标初始化后str.size()为0 输出string值为空
你的string list是个默认构造函数,这样就没有为list分配空间,自然list[i]就会报出超出string范围的错误,可以简单更改为string list(6, '\0'),事先为list指 ...
- string转数组, 数组转ist, list转数组, 数组转string
private string OrderBonds(string bonds) { string[] lists = bonds.Split(','); List<string> newL ...
- String str = new String("abc"),这段代码一共生成了几个String对象?为什么?
String str = new String("abc")创建了俩个对象,首先为创建一个String对象"abc",然后在调用String类的构造方法时 pu ...
- ByteBuffer: 当由一个byte[]来生成一个固定不变的ByteBuffer时,使用ByteBuffer.wrap(byte[]);
StringBuilder sb = new StringBuilder(1024); //向sb中写入900个左右的随机字符内容 for(int j=1; j< 50;j++) { sb.ap ...
- 对bit、byte、TByte、Char、string、进制的认识
在学校老师就教1byte = 8bit,一个Byte在内存中占8个房间.每个房间都有门牌号.找到内存中的内容就找门牌号,寻址什么的,虽然在听,但是脑袋里一头雾水,到现在只知道会用就行,但原理也不是那么 ...
随机推荐
- element-UI button按钮颜色回显(一)
按钮: <el-button id="manyou" @click="Ismovement" type="primary" >漫 ...
- [Ynoi2016] 掉进兔子洞
\(\text{Solution}\) 莫队配合 \(\text{bitset}\) 发现答案困难的部分在于同一个数在三个区间出现次数的最小值 考虑强行拆开看,用莫队处理出每个区间每个数的出现次数,这 ...
- 【USACO 2021 January Contest, Platinum】Problem 1. Sum of Distances
\(\text{Solution}\) 一个性质:两个 \(K\) 元组有边相连当且仅当每个点在对应的图中到 \(1\) 有奇偶性相同的路径 那么我们就可以预处理每个图中的点到 \(1\) 的奇偶最短 ...
- PostgreSQL 绑定变量浅析
今天我们要探讨的是 custom执行计划和通用执行计划.这一技术在 Oracle中被称为绑定变量窥视.但 Postgresql中并没有这样的定义,更严格地说,Postgresql叫做custom执行计 ...
- 脚本之美│VBS 入门交互实战
目录 什么是 VBS 第一个 VBS 脚本 msgbox 语法 中文乱码 弹窗交互功能 表白恶搞 什么是 VBS VBS 是一种 Windows 脚本语言,全称是 Microsoft Visual B ...
- java学习日记20230227-dos原理
DOS原理 磁盘操作系统 dis operating system md c:\\temp 创建文件夹 rd c:\\jyltemp 移除文件夹 相对路径和绝对路径 相对路径:从当前目录开始定位形 ...
- 179. 最大数 (Medium)
问题描述 179. 最大数 (Medium) 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数. 注意: 输出结果可能非常大,所以你需要返回一个字符串而不是整数 ...
- go on
人生当中总是有你能力不及的范围,但是如果在你能力所及的范畴内你尽到了自己全部的努力,那你还有什么可以遗憾的呢?
- Python 20个常用库
Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的.用过它之后你就不会再想用别的 ...
- 难搞的electron之安装
做了几个electron项目,感觉最难搞的地方竟然是安装!这怎么能忍!经过几天试错,把自己能够顺利安装的流程记录下来,仅供参考. 使用框架为quasar+vue+quasar_electron qua ...