首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何重写List<MyClass>的ToString()?

如何重写List<MyClass>的ToString()?

提问于 2018-01-29 15:35:34
回答 2关注 0查看 274

我有一个类MyClass:

代码语言:txt
AI代码解释
复制
class MyClass
{
    public string Property1 { get; set; }
    public int Property2 { get; set; }
    /* ... */
    public override string ToString()
    {
        return Property1.ToString() + "-" + Property2.ToString();
    }
}

如下所示:

代码语言:txt
AI代码解释
复制
var list = new List<MyClass>
            {
                new MyClass { Property1 = "A", Property2 = 1 },
                new MyClass { Property1 = "Z", Property2 = 2 },
            };

Console.WriteLine(list.ToString());   /* prints: A-1,Z-2 */

回答 2

小羊驼

发布于 2018-01-30 01:19:41

我用的是ToDelimitedString可扩展方法:

代码语言:txt
AI代码解释
复制
// if you've already overridden ToString in your MyClass object...
Console.WriteLine(list.ToDelimitedString());
// if you don't have a custom ToString method in your MyClass object...
Console.WriteLine(list.ToDelimitedString(x => x.Property1 + "-" + x.Property2));

// ...

public static class MyExtensionMethods
{
    public static string ToDelimitedString<T>(this IEnumerable<T> source)
    {
        return source.ToDelimitedString(x => x.ToString(),
            CultureInfo.CurrentCulture.TextInfo.ListSeparator);
    }

    public static string ToDelimitedString<T>(
        this IEnumerable<T> source, Func<T, string> converter)
    {
        return source.ToDelimitedString(converter,
            CultureInfo.CurrentCulture.TextInfo.ListSeparator);
    }

    public static string ToDelimitedString<T>(
        this IEnumerable<T> source, string separator)
    {
        return source.ToDelimitedString(x => x.ToString(), separator);
    }

    public static string ToDelimitedString<T>(this IEnumerable<T> source,
        Func<T, string> converter, string separator)
    {
        return string.Join(separator, source.Select(converter).ToArray());
    }
}

lllspeed

发布于 2018-01-29 23:39:26

需要写自己的类:

代码语言:txt
AI代码解释
复制
public class MyTypeList : List<MyClass>
{
    public override string ToString()
    {
        return ...
    }
}

编辑后添加:

代码语言:txt
AI代码解释
复制
public static string ExtendedToString(this List<MyClass> list)
{
     return ....
} 

代码语言:txt
AI代码解释
复制
List<MyClass> myClassList = new List<MyClass>
string output = myClassList.ExtendedToString();
和开发者交流更多问题细节吧,去 写回答
相关文章
重写toString()方法
System.out.println("test:\t\t\t"+test);//blogTest.Test@2a139a55
用户7886150
2020/12/07
1.5K0
tostring方法怎么用_重写toString方法
  本文将介绍toString()方法,toString()方法返回反映这个对象的字符串
全栈程序员站长
2022/09/20
1.1K0
Eclipse重写toString()出现错误,求怎么解决?
其实是Java9和eclipse有bug冲突,但是不知道,怎么解决?先自己手写吧,以后解决了,再分享!
黑泽君
2018/10/11
1.1K0
重写bean类的toString()方法为JSON格式|idea设置toString()方法为JSON格式模板|idea设置toString()的模板
有好多人会用idea将bean类重写toString()的方法,但是好多人其实还不知道其实toString()是可以自己自定义模板的,可以自定义生成你想要的格式,然后一键生成。
小小鱼儿小小林
2020/06/24
4.2K0
重写bean类的toString()方法为JSON格式|idea设置toString()方法为JSON格式模板|idea设置toString()的模板
Java之面向对象例子(三) 多态,重写,重载,equals()方法和toString()方法的重写
重写(继承关系) 子类得成员方法和父类的成员方法,方法名,参数类型,参数个数完全相同,这就是子类的方法重写了父类的方法。 重载 在一个类里有两个方法,方法名是完全一样的,参数类型或参数个数不同。 例子: //父类 public class Pet { public void eat(){ System.out.println("pet eat"); } public void eat(String a){ //重载,同一个类,方法名相同,参数类型或个数不同
二十三年蝉
2018/02/28
1.5K0
Java之面向对象例子(三) 多态,重写,重载,equals()方法和toString()方法的重写
Java 对象如何安全的 toString
如果我们的对象为空对象的时候,我们再使用 toString() 方法,我们将会得到空对象的异常。
HoneyMoose
2022/06/09
9400
Java 对象如何安全的 toString
toString如何转json
试想一个问题:如果我们已知Java对象的toString格式,想要获取其json格式或者其Java对象,该如何做呢?
luoxn28
2020/10/09
7.1K1
__main__.MyClass instance at XXX的含义
关键字class加上类名用来创建一个类。之后缩进的代码块是这个类的内部。在这里,我们用pass语句,表示一个空的代码块。
狼啸风云
2019/11/28
5470
ToString数据如何反序列化
不知道小伙伴们有没有这样的困扰,平常开发中写单测,要mock一个复杂的对象,并且也知道了该对象的toString格式数据(比如从日志中获取),但是该怎么构建这个对象呢?
luoxn28
2020/03/11
2K0
C#反射与特性(五):类型成员操作
前面三篇中,介绍了反射的基本内容和信息对象,反射主要作用于构造函数、属性、字段、方法、事件等类型成员对象;第四篇介绍了类型的实例化和事件操作。
痴者工良
2021/04/26
1.1K0
Groovy 简单的`@ToString`注解
从Groovy 1.8开始,我们可以使用@ToString注释来轻松创建toString()方法。 我们只需要在类定义中添加注释,我们就可以获得类的属性的格式良好的输出。
白石
2019/09/09
1.6K0
valueOf与toString
valueOf和toString是Object.prototype上的方法,在Js几乎所有的对象都会继承自Object,同样由于包装对象的原因,几乎所有的数据类型都能够调用这两个方法,无法调用的有例如null、undefined以及Object.create(null)创建的对象等,通常我们一般不会主动调用这两个方法,而在代码执行的过程中这两个方法会经常被偷偷的调用,而且在不同的情况下会有选择的进行调用。
WindRunnerMax
2020/10/30
1.1K0
Java中的 toString 方法
1. Object 类中定义有 public String toString() 方法,其返回值是 String 类型,描述当前对象的有关信息;
前朝楚水
2018/07/26
1.2K0
如何重写object虚方法
在 C# 中 Object 是所有类的基类,所有的结构和类都直接或间接的派生自它。前面这段话可以说所有的 C# 开发人员都知道,但是我相信其中有一部分程序员并不清楚甚至不知道我们常用的 ToString 、 Equals 和 GetHashCode 虚方法都来自于 Object 类,并且我们可以对它们进行重写。重写这三个虚方法可以说在项目开发中经常用到,只不过大部分开发人员并未留意这三个虚方法可以重写,而是自己写方法来实现。 下面我就来具体讲解一下它们三个应该怎么重写。在这里我需要说明的是本篇文章会大量涉及到设计规范和设计要求,代码只是作为辅助理解的形式出现,因此文章中的所有代码将会以代码段的形式出现。
喵叔
2020/09/08
8200
谁在关心toString的性能?
谁在关心toString的性能?没有人!除非当你有大量的数据在批量处理,使用toString产生了许多日志。然后,你去调查为何如此之慢,才意识到大部分的toString方法使用的是introspection,它其实是可以被优化的。
哲洛不闹
2018/09/19
9900
谁在关心toString的性能?
【JavaSE专栏37】Java常用类 Object 解析,万物皆对象
本文讲解了 Java 中常用类 Object 的语法、使用说明和应用场景,并给出了样例代码。
Designer 小郑
2023/08/02
1590
【JavaSE专栏37】Java常用类 Object 解析,万物皆对象
java中的toString方法
对于我这种用惯了C++的人来说,突然见到有人写java程序的时候竟然将整数和String类型的变量使用+连接到一起,感到非常奇怪,追究了下原因。 原来所有的java对象都有toString()方法,而某些时候这个方法会自动被调用的。 1 class toString_test 2 { 3 public static void main(String[] args) 4 { 5 int year=2015; 6 int month=9; 7
用户1215536
2018/02/05
1.4K0
java中的toString方法
js中的valueOf与toString
所有对象继承了两个转换方法: 第一个是toString(),它的作用是返回一个反映这个对象的字符串 第二个是valueOf(),它的作用是返回它相应的原始值 一般来说,对象到字符串的转换经过了如下步骤: 1.如果对象具有toString()方法,则调用这个方法。如果它返回一个原始值,js将这个值转换成字符串,并返还这个字符串结果。 2.如果对象没有toString()方法,或者这个方法并不返回一个原始值,那么js将调用valueOf()方法。 3.否则,js无法从toString()或者valueOf()获
windseek
2018/05/15
1.3K0
toString和遍历
ha_lydms
2023/08/10
1700
toString和遍历
集合的toString()方法源码解析
代码: Collection c = new ArrayList(); c.add("hello"); c.add("world"); c.add("java");
黑泽君
2018/10/12
7140

相似问题

重写ActiveRecord属性的方法?

2243

如何在Java中创建一个新的List?

2746

salesforce能在Lead 的list view中设置权限让不同的user看不同的List吗?

085

initializer_list构造函数的问题?

076

条件渲染<view wx:if"{{list}}"> list是数组,怎么判断条数为0?

2841
相关问答用户
腾讯云TDP | TDP会员擅长3个领域
平安资管 | 架构师擅长4个领域
擅长3个领域
擅长5个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档