jjzjj

ToString

全部标签

java - 对象如何隐式调用 toString 方法?

如果我正在打印类的一个对象,那么即使我没有编写toString()方法,它也会打印toString()方法实现,那么什么是实现,它是如何在内部调用toString()的? 最佳答案 您没有显式调用toString(),但隐式调用:参见:System.out.println(foo);//fooisanonprimitivevariableSystem是一个类,有一个static字段out,类型PrintStream.所以你调用println(Object)PrintStream的方法。它是这样实现的:publicvoidprintl

java - 有没有办法漂亮地打印 X509Certificate?

我有一个网页,其中显示了与服务器一起使用的SSL证书的详细信息。我认为toString()可能没问题,但它看起来像这样:[0]Version:3SerialNumber:117262955582477610212812061435665386300IssuerDN:CN=localhostStartDate:WedJun1315:15:05EST2012FinalDate:TueJun0815:15:05EST2032SubjectDN:CN=localhostPublicKey:DSAPublicKeyy:6ef96c2ace616280c5453dda2[TRUNCATEDBYME

Java 9 整数到字符串转换

我刚刚读到有关Java9特性的信息https://bugs.openjdk.java.net/browse/JDK-8085796说使用StringBuilder的“慢速”字符串连接将得到改进。所以我的问题是,通过以下方式将int转换为String是否还有任何缺点?inti=16;Strings=""+i;或者使用Integer.toString(i)或String.valueOf(i)将int转换为String有什么优缺点?编辑:由于我的问题过于基于个人意见(抱歉),所以我更改了它。我对不同铸件的正面或负面感兴趣。每个人都应该自己决定使用哪一个。 最佳答案

java - Java 中的 getClass 是如何工作的

这是JavaDoc说:publicfinalClassgetClass()ReturnstheruntimeclassofthisObject.ThereturnedClassobjectistheobjectthatislockedbystaticsynchronizedmethodsoftherepresentedclass.TheactualresulttypeisClasswhere|X|istheerasureofthestatictypeoftheexpressiononwhichgetClassiscalled.Forexample,nocastisrequiredint

java - Java 中的 toPlainString() 和 toString() 有什么区别?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭7年前。Improvethisquestion请告诉我这两种方法之间的区别。提前致谢。

java - 在 toString 实现中捕获通用异常 - 不好的做法?

我有一个域模型类,它有一个toString实现,如下所示:publicStringtoString(){try{returngetX()+"\n"getY()+"\n"getZ();//etc.}catch(Exceptione){thrownewRuntimeException(e);}}getX()、getY()和getZ()方法不是简单的getter,它们可以在后台执行查找,通常是查找预定义键值对的静态映射。他们中的一些人在他们的签名中有throwsSomeCheckedException。我的印象是,这是不好的做法和“代码味道”。toString()甚至需要这个检查这一事实对我

java - 为什么这个 toString() 方法会导致 StackOverFlowError?

这个问题在这里已经有了答案:CirculardependencyinJavaconstructors(5个答案)关闭4年前。我从this了解到和this回答,您的代码可能进入无限循环导致stackOverFlowError的可能情况,但我不明白如何在此处复制相同的情况,publicclassA{privateBb=newB();@OverridepublicStringtoString(){return"b"+b;}}publicclassB{privateAa=newA();@OverridepublicStringtoString(){return"";}}publicclassS

c# - OO 设计建议 - toString

所以我得到了Address类:classAddress{privateStringstreetAddress;privateintnumber;privateStringpostalCode;privateCitycity;privateStatestate;privateCountrycountry;}我想让它的可读版本显示在网格列中。什么是最好和简洁的实现方式?toString类Address中的方法(我个人不喜欢这种方法,因为“toString”与地址没有直接关系)类ReadableAddressFormatterReadableAddressFormatter(地址addres

java - 创建 lambda 表达式的字符串表示形式

这个问题在这里已经有了答案:Isitpossibletoretrievelambdaexpressionatruntime(2个答案)关闭8年前。出于调试目的,我正在尝试在Java8中创建lambda表达式的字符串表示形式(特别是Predicate,尽管它对其他lambda表达式也很有趣)。我的想法类似于这个:publicclassWhatever{privatestaticStringpredicateToString(Predicatepredicate){Stringrepresentation=...//domagicreturnrepresentation;}publicst

java - 在 Java 8 中通过方法引用调用 toString

我错过了什么?为什么我必须在下面使用Object::toString而不是Integer::toString?它与泛型的类型删除有什么关系吗?Arrays.asList(1,2,3).stream().map(Integer::toString).forEach(System.out::println);//Won'tcompileArrays.asList(1,2,3).stream().map(Object::toString).forEach(System.out::println);//Compilesandrunsfine 最佳答案