racer.cs
来自「C#高级编程第6版随书源代码 值得下载」· CS 代码 · 共 81 行
CS
81 行
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Wrox.ProCSharp.LINQ
{
[Serializable]
public class Racer : IComparable<Racer>, IFormattable, IEquatable<Racer>
{
public string FirstName {get; set;}
public string LastName {get; set;}
public int Wins {get; set;}
public string Country {get; set;}
public int Starts {get; set;}
public string[] Cars { get; set; }
public int[] Years { get; set; }
public override string ToString()
{
return String.Format("{0} {1}", FirstName, LastName);
}
public int CompareTo(Racer other)
{
return this.LastName.CompareTo(other.LastName);
}
public string ToString(string format)
{
return ToString(format, null);
}
public string ToString(string format, IFormatProvider formatProvider)
{
switch (format)
{
case null:
case "N":
return ToString();
case "F":
return FirstName;
case "L":
return LastName;
case "C":
return Country;
case "S":
return Starts.ToString();
case "W":
return Wins.ToString();
case "A":
return String.Format("{0} {1}, {2}; starts: {3}, wins: {4}",
FirstName, LastName, Country, Starts, Wins);
default:
throw new FormatException(String.Format(
"Format {0} not supported", format));
}
}
public override bool Equals(object obj)
{
return this.Equals(obj);
}
#region IEquatable<Racer> Members
public bool Equals(Racer other)
{
return this.FirstName == other.FirstName && this.LastName == other.LastName;
}
public override int GetHashCode()
{
return LastName.GetHashCode();
}
#endregion
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?