所以我有这段代码:
public class myClass
{
public string A { get; set; }
public string B{ get; set; }
//and so on
}
我想添加一个构造函数,它接受一个字符串输入并让该构造函数将字符串拆分为','然后使用拆分值来填充类变量
我尝试过什么
我试图用我的变量值创建一个字符串,如下所示:
public void myVoid()
{
string s = "A,B,..etc";
string[] values = s.Split(',');
foreach (string item in values)
{
Console.WriteLine(item);
Console.ReadKey();
}
}
这会在每次按键时逐个返回我的值,但这只是让我了解它。
所以要澄清一下:我想添加一个构造函数,它接受一个字符串输入并让该构造函数将字符串拆分为','然后使用拆分值来填充类变量
答案 0 :(得分:0)
一个简单的方法是:
public class myClass
{
public string A { get; set; }
public string B{ get; set; }
public myClass()
{
//default constructor
}
public myClass(string S)
{
string[] values = S.Split(',');
if (values.Length>=2)
{
this.A=values[0];
this.B=values[1];
}
}
}
但是你的目标有点模糊。例如,分裂字符串的哪个值将附加在A上,哪个附加在B?
中答案 1 :(得分:0)
这是你想要的吗?
public class myClass
{
public myClass(string input)
{
var ar = input.Split(',');
if (ar.Length >= 2)
{
A = ar[0];
B = ar[1];
}
}
public string A { get; set; }
public string B{ get; set; }
//and so on
}
使用:
var myclass = new myClass("some,thing");
答案 2 :(得分:0)
你想要这个 -
public class myClass
{
private string _a, _b;
public myClass(string args)
{
_a = args.Split(',')[0];
_b = args.Split(',')[1];
}
public string A { get { return _a; } set { _a = value; } }
public string B { get { return _b; } set { _b = value; } }
//and so on
}
答案 3 :(得分:0)
public string A { get; set; }
public string B { get; set; }
public Sample(string strSplit) {
var values = strSplit.Split(',');
A = values[0];
B = values[1];
}
Sample dd = new Sample("James,Jonathan");
更好地使用反射