如何从类返回字符串
本文关键字:返回 字符串 | 更新日期: 2023-09-27 18:32:23
我是 c# 的新手,我一直在玩它,但卡在从方法返回一些有用的东西时遇到了困难。任何帮助都会很棒。
我现在有这个:
在Form1.cs
:
Animal NewAnimal = new Animal("Jack", "Ramp");
在Animal.cs
:
public Animal(string Fname, string Lname)
{
if (Fname == "Jack" | Lname == "Ramp")
{
string FullName;
FullName = Fname + " " + Lname;
//return FullName; <--- This is what i tried but didn't work--->
}
}
//return FullName; <--- And Also tried this it didn't work --->
也许从我尝试过的那些我做错了什么?如何将全名返回到 Form1.cs 并将其显示在标签中?
你想要这样的东西:
public class Animal
{
public Animal(string fName, string lName)
{
this.FName = fName;
this.LName = lName;
}
public string FName {get;set;}
public string LName {get;set;}
public string FullName
{
get
{
return String.Format("{0} {1}", FName,LName);
}
}
}
在你的鞋子里,我会回顾一下在 C# 中指定类型的基础知识。
类型是字段、属性、方法和一些定义数据和行为的其他构造的用户定义(即您是用户)集合。
如果是您的特定情况,则需要考虑您正在实现的行为。
- 将字符串馈送到新
Animal
- 从
Animal
获取该字符串
请考虑以下代码:
public class Animal {
public string FullName { get; }
public Animal(string firstName, string lastName) {
this.FullName = firstName + " " + lastName;
}
}
然后,您可以检索实例化Animal
的名称。
var animal = new Animal("Bob", "Smith");
// ... later
if (animal.FullName.Equals("Jack Ramp", StringComparison.CurrentCulture));
textBox.Text = animal.FullName;
如果这让你有点迷茫,我建议在Microsoft类型概述。本文中有相当多的信息,但都是关于 C# 类型系统的重要信息。
您正在尝试从构造函数返回一个值...
请改为定义方法。
public string FullName(string Fname, string Lname)
{
if (Fname == "Jack" || Lname == "Ramp")
{
return Fname + " " + Lname;
}
return "";
}
您拥有的方法称为Constructor
。当您想要创建对象的新实例时,将调用它。尽管它在定义中没有返回类型,但它"返回"了对象的新实例(尽管您无法真正控制它)。
您期望的是具有另一个将返回值的公共方法或属性。
public class Animal
{
public string Fullname {get; set;}
public Animal(string Fname, string Lname)
{
if (Fname == "Jack" || Lname == "Ramp")
{
FullName = Fname + " " + Lname;
}
}
然后使用以下命令:
Animal NewAnimal = new Animal("Jack", "Ramp");
var firstName = NewAnimal.FullName;
Yaur的答案会起作用,但为了更接近你似乎要求的内容,我会这样做(注意:这是Yaur代码的修改)
public class Animal
{
public Animal(string fName, string lName)
{
this.FName = fName;
this.LName = lName;
}
public string FName {get;set;}
public string LName {get;set;}
public override string ToString()
{
return String.Format("{0} {1}", FName,LName);
}
}
你不能从构造函数返回一些东西。 您可以声明属性或公共字段,如下所示
class Animal {
public:
string FullName;
.....
}
然后,您可以通过NewAnimal.FullName
访问FullName
。