C#中对象的输出
假设有个Costmer类如下:
class Costmer
{
public string Id { get; set; }
public string City { get; set; }
public string Country { get; set; }
public string Region { get; set; }
public string Sales { get; set; } public Costmer(string id,string city,string country,string region,string sales)//构造函数
{
Id = id;
City = city;
Country = country;
Region = region;
Sales = sales;
}
public override string ToString()//重写ToString()方法,以便于输出
{
return "ID:" + Id + " City:" + City + " Country:" + Country + " Region:" + Region + " Sales:" + Sales;
}
}
创建两个 Costmer 类的实例,然后分别输出:
Costmer c = new Costmer("", "乐山", "中国", "四川", "");
Costmer d = new Costmer("", "成都", "中国", "四川", "");
Console.WriteLine(c);
Console.WriteLine(d);
结果如下:

我们也可以不完全输出类的值,只输出一部分信息,比如我们这里只输出:ID,City,Country的值:
则代码如下:
Costmer c = new Costmer("", "乐山", "中国", "四川", "");
Costmer d = new Costmer("", "成都", "中国", "四川", "");
Console.WriteLine("ID:{0} City={1} Country={2}",c.Id,c.City,c.Country);
Console.WriteLine("ID:{0} City={1} Country={2}", d.Id, d.City, d.Country);
结果:

注意:假若 Costmer 类中没有对 ToString()方法进行重写,则输出结果为:

但是当有多个对象的时候,我们需要将这些对象放在集合中,然后再输出,为此,我们需要创建一个泛型集合
创建一个Costmer类的泛型集合,并向集合中添加 对象
List<Costmer> costmers = new List<Costmer>();
costmers.Add(new Costmer("","乐山","中国","四川",""));
costmers.Add(new Costmer("","成都","中国","四川",""));
costmers.Add(new Costmer("", "重庆", "中国", "重庆", ""));
输出对象的值:
for (int i = ; i < costmers.Count; i++)
{
Console.WriteLine(costmers[i]);
}
结果:

同理也可以只输出对象一部分的值: 在"."后加入对象需要输出的属性值即可
for (int i = ; i < costmers.Count; i++)
{
Console.WriteLine(costmers[i].City);
}
使用Linq输出对象:
var queryResults = from n in costmers where n.Region == "四川" select n; //注意 是两个=号,这是不是赋值,是判断
foreach (var item in queryResults)
{
Console.WriteLine(item.ToString());
}
结果:

C#中对象的输出的更多相关文章
- js中对象的输出顺序
前言:最近用for-in时,看到说for-in不能保证遍历的对象顺序,对此有些疑问,于是便研究了下,本文做简要说明. 现象 let obj = { a: 'a', b: 'b', 1: 1, 2: 2 ...
- .net中对象序列化技术浅谈
.net中对象序列化技术浅谈 2009-03-11 阅读2756评论2 序列化是将对象状态转换为可保持或传输的格式的过程.与序列化相对的是反序列化,它将流转换为对象.这两个过程结合起来,可以轻松地存储 ...
- Java中对象的深复制和浅复制详解
1.浅复制与深复制概念 ⑴浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象.换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象. ⑵ ...
- java 对list中对象按属性排序
实体对象类 --略 排序类----实现Comparator接口,重写compare方法 package com.tang.list; import java.util.Comparator; publ ...
- ASP.NET Core Web API下事件驱动型架构的实现(二):事件处理器中对象生命周期的管理
在上文中,我介绍了事件驱动型架构的一种简单的实现,并演示了一个完整的事件派发.订阅和处理的流程.这种实现太简单了,百十行代码就展示了一个基本工作原理.然而,要将这样的解决方案运用到实际生产环境,还有很 ...
- freemarker获取封装类中对象的属性
freemarker获取封装类中对象的属性 1.设计思路 (1)封装学生类 (2)创建数据模型 (3)新建student.ftl (4)运行Junit测试文件,生成HTML文件 2.封装学生类 Stu ...
- freemarker获取封装类中对象的属性(六)
freemarker获取封装类中对象的属性 1.设计思路 (1)封装学生类 (2)创建数据模型 (3)新建student.ftl (4)运行Junit测试文件,生成HTML文件 2.封装学生类 Stu ...
- JVM中对象的回收过程
当我们的程序开启运行之后就,就会在我们的java堆中不断的产生新的对象,而这是需要占用我们的存储空间的,因为创建一个新的对象需要分配对应的内存空间,显然我的内存空间是固定有限的,所以我们需要对没有 ...
- js中对象转化成字符串、数字或布尔值的转化规则
js中对象可以转化成 字符串.数字.布尔值 一.对象转化成字符串: 规则: 1.如果对象有toString方法,则调用该方法,并返回相应的结果:(代码通常会执行到这,因为在所有对象中都有toStrin ...
随机推荐
- hdu 5131 Song Jiang's rank list
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5131 Song Jiang's rank list Description <Shui Hu Z ...
- Go返回参数命名
Go语言中可以为返回值定义名称.代码实例: package main import "fmt" func add1(a int, b int) int { return a + b ...
- 2.Modelsim打开时出现的Error
Modelsim之error “unable to check out a viewer license necessary for use of the modelsim graph.Vsim is ...
- Linux内核内存管理
<Linux内核设计与实现>读书笔记(十二)- 内存管理 内核的内存使用不像用户空间那样随意,内核的内存出现错误时也只有靠自己来解决(用户空间的内存错误可以抛给内核来解决). 所有内核 ...
- 谈谈C#中的 Dispose 和 Finalize
主要有一下几点需要知道: 1. Dispose需要实现IDisposable接口. Finalize就是c#中的析构方法,方法名以~开始. 2. Dispose由开发人员代码调用,而Finalize由 ...
- USB硬件远程共享解决iphone已停用
悲剧的在iphone拆过电池之后,再开机显示iphone已停用,请在23000000分钟后再试一次 算算这得45年了,可以留给孙子用了... 网上除了刷机和有同步过的电脑貌似没有别的办法了 因是旧系统 ...
- Android -- Webview自适应屏幕
第一种 WebSett ...
- 1、android orm之greendao
前提:最近写android项目,android自带数据库api有点复杂,于是偷懒用了greendao.greendao好处自己查,这里不赘述,但是零基础的的我用起来还是费了3天的功夫,取之于网络,特在 ...
- 【BZOJ】【3210】花神的浇花集会
曼哈顿距离与切比雪夫距离 QAQ蒟蒻并不知道切比雪夫距离是什么……并不会做这道题…… 去膜拜了PoPoQQQ大爷的题解: 题目大意:给定平面上的n个点,求一个点到这n个点的切比雪夫距离之和最小 与31 ...
- SQL SERVER 导出到Oracle 问题与技巧
工具: 使用SQL SERVER自带的导入, 导出工具 技巧: 一. 使用Oracle Provider for OLE DB(强制推荐) 1. 速度快 2. 要安装Oracle驱动(Oracle ...