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个房间.每个房间都有门牌号.找到内存中的内容就找门牌号,寻址什么的,虽然在听,但是脑袋里一头雾水,到现在只知道会用就行,但原理也不是那么 ...
随机推荐
- ctfshow-web入门-SSTI学习
千万要仔细,不要拼错单词 千万要仔细,不要拼错单词 千万要仔细,不要拼错单词 web 361 payload name={{[].__class__.__base__.__subclasses__() ...
- BUUCTF-[强网杯2019]随便注
强网杯2019随便注 它说随便注,它可不是随便注入的哈 首先测试闭合环境,因为有回显,所以很快即知道了是一个单引号闭合 接下来常规操作,得到列数大概为2 1';select 2; 返回了过滤信息 于是 ...
- [POI2011]MET-Meteors 解题报告
语言系统紊乱了 QAQ 这道题感觉不是很难鸭 qwq. 先只考虑一个国家,怎么做?很显然,就直接二分一下就行了.判定答案可以维护一个差分数组,然后最后对它做一个前缀和,再求一下这个国家的流行数量就好了 ...
- knock:端口敲门服务
knock:端口敲门服务 端口敲门服务,即:knockd服务.该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来"敲门",使系统开启需要访问的 ...
- ENCOURAGE研究: 病情中度活动RA获得深度缓解后有望实现停药
标签: 类风湿关节炎; TNF拮抗剂; 维持期减停 病情中度活动的RA患者在获得深度缓解后有望实现停用生物制剂 电邮发布日期: 2016年2月3日 病情中度活动的类风湿关节炎(RA)患者通过传统DMA ...
- Python连接hadoop-hive连接方法
import impala.dbapi as ipdbconn = ipdb.connect(host='IP', port= 端口, database='数据库名', auth_mechanism= ...
- Postgresql之闪回数据库示例
一.摘要 在Oracle中,若发生重大的误操作,那么我们可以使用flashback database命令来把数据库整体闪回到过去的误操作的时间点,当然前提是需要打开数据库的闪回功能. 在PG中,能否也 ...
- 理论+实战,详解Sharding Sphere-jdbc
摘要:Apache ShardingSphere 是一款分布式的数据库生态系统,它包含两大产品:ShardingSphere-Proxy和ShardingSphere-JDBC. 本文分享自华为云社区 ...
- pat乙级 1018 锤子 剪刀 布
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> int ...
- springmvc 能进入Controller,但是前端页面还是404
问题现象: 1.Controller里面的方法上已经加了注解 @ResponseBody 2.能进入controller的方法里面: 3.前端返回状态码 404: 4.控制台没有异常信息: 问题原因: ...