C# 为什么可以';从Car_Management.Car转换为double或int或string
我遇到了一个问题,我收到一个错误,说我无法从“double”转换为“Car\u Management.Car”。我错过了什么?以下是我迄今为止所做的代码,我必须将汽车特性添加到列表中。另外,如何将列表输出到文本文件C# 为什么可以';从Car_Management.Car转换为double或int或string,c#,variable-assignment,C#,Variable Assignment,我遇到了一个问题,我收到一个错误,说我无法从“double”转换为“Car\u Management.Car”。我错过了什么?以下是我迄今为止所做的代码,我必须将汽车特性添加到列表中。另外,如何将列表输出到文本文件 namespace Car_Management { class CarDM { public static void save(List<Car> fullList) { Car myCar = n
namespace Car_Management
{
class CarDM
{
public static void save(List<Car> fullList)
{
Car myCar = new Car();
List<Car> list = new List<Car>() {myCar.Model, myCar.Mileage, myCar.Colour, myCar.Year};
StreamWriter outputFile;
outputFile = File.CreateText("List.txt");
}
public static void load()
{
StreamReader inputFile;
inputFile = File.OpenText("List.txt");
}
}
}
免责声明:我甚至没有查看使用流读取器的加载/写入方法,因为您在那里没有实现。如果您需要序列化方面的帮助,请问另一个问题
您的问题是初始值设定项的语法错误。下面是一些可以稳定对象的有效方法。有关更多详细信息,请参阅
Car myCar = new Car(); // no initializers
Car myCar = new Car(){Model = "Bently", Mileage = 1555, Colour = "Red", Year = 2015}; // with initializer
带有列表的示例
您对列表的实例化是错误的
public static void save(List<Car> fullList)
{
Car myCar = new Car();
List<Car> list = new List<Car>() {myCar.Model, myCar.Mileage, myCar.Colour, myCar.Year};
StreamWriter outputFile;
outputFile = File.CreateText("List.txt");
}
公共静态作废保存(列表完整列表)
{
我的车=新车();
List List=new List(){myCar.Model,myCar.miliety,myCar.color,myCar.Year};
StreamWriter输出文件;
outputFile=File.CreateText(“List.txt”);
}
这里您要做的是实例化字符串、双精度字符串、字符串等的列表
您应该做的是:像这样在手之前创建汽车:
Car myCar = new Car();
myCar.Model = "Some Model";
myCar.Mileage = 0;
...
List<Car> list = new List<Car>();
list.add(myCar);
carmycar=新车();
myCar.Model=“Some Model”;
我的汽车里程=0;
...
列表=新列表();
列表。添加(myCar);
或者像你尝试的那样:
List<Car> list = new List<Car>(){myCar};
List List=newlist(){myCar};
或者,如果您想一次完成所有工作(注意:混乱且不可读的代码):
List List=new List此语法不正确:
carmycar=新车();
List List=new List(){myCar.Model,myCar.miliety,myCar.color,myCar.Year};
我不知道你想干什么。如果您试图用一辆车创建一个列表,您应该写:
Car myCar=新车(){Model=“model1”,里程数=23000,color=“green”,年份=2009};
列表=新列表();
列表。添加(myCar);
这将使代码编译。但是,还有其他问题,如未使用的参数fullList
,您正在创建一个文件“List.txt”,并且从未写入该文件。List List List=new List(){myCar.Model,myCar.miliety,myCar.color,myCar.Year}代码>-您打算做什么?您告诉它您正在尝试创建汽车
列表,但提供的是汽车
的组件,而不是实际的汽车
对象。您应该为您创建的对象指定值。例如List List=new List(){myCar.Model=“Malibu”,myCar.miliety=150,myCar.color=color.Red,myCar.Year=2015};同时开始阅读MSDN文档并理解.ToStrng()
重载
namespace Car_Management
{
class Car
{
public Car()
{
Year = 0;
Mileage = 0;
Colour = "";
Model = "";
}
//name properties
public string Model {get;set;}
public string Colour {get;set;}
public double Mileage {get;set;}
public int Year {get;set;}
//returns string consisting of model, year, mileage, colour
public string GetInfo(string sep)
{
sep = ": ";
return model + sep + colour + sep + mileage.ToString("c") + sep + year.ToString();
}
}
}
public static void save(List<Car> fullList)
{
Car myCar = new Car();
List<Car> list = new List<Car>() {myCar.Model, myCar.Mileage, myCar.Colour, myCar.Year};
StreamWriter outputFile;
outputFile = File.CreateText("List.txt");
}
Car myCar = new Car();
myCar.Model = "Some Model";
myCar.Mileage = 0;
...
List<Car> list = new List<Car>();
list.add(myCar);
List<Car> list = new List<Car>(){myCar};
List<Car> list = new List<Car(){new Car(){Model = "Some model", Mileage = 0, ... }}