小编dvi*_*vim的帖子

如何在Python中打印对象列表时应用__str__函数

那么这个交互式python控制台代码片段将告诉所有内容:

>>> class Test:
...     def __str__(self):
...         return 'asd'
...
>>> t = Test()
>>> print(t)
asd
>>> l = [Test(), Test(), Test()]
>>> print(l)
[__main__.Test instance at 0x00CBC1E8, __main__.Test instance at 0x00CBC260,
 __main__.Test instance at 0x00CBC238]
Run Code Online (Sandbox Code Playgroud)

基本上我想asd在打印列表时打印三个字符串.我也试过,pprint但它给出了相同的结果.

python printing string list object

30
推荐指数
2
解决办法
1万
查看次数

如何包装Java String.format()?

大家好,我想在我自己的Logger类中包装String.format()方法.我无法想办法如何将参数从我的方法传递给String.format().

public class Logger
{
    public static void format(String format, Object... args)
    {
         print(String.format(format, args)); // <-- this gives an error obviously.
    }

    public static void print(String s)
    {
         System.out.println(s);
    }
}
Run Code Online (Sandbox Code Playgroud)

java string format wrapper

6
推荐指数
1
解决办法
3820
查看次数

Java TreeSet contains() 给出错误结果

我正在尝试用java编写一些数学代码。我想做的是将分圆陪集放入 TreeSet 中。陪集有一个索引和一组整数。如果一个陪集具有相同的元素,则该陪集与其他陪集相等。如果集合不同,则陪集按其索引排序。

例如:

C1 = [1, 2, 4, 8]
C3 = [3, 6, 9, 12]
C9 = [3, 6, 9, 12]

C1 is less than C3
C3 is equal to C9
Run Code Online (Sandbox Code Playgroud)

足够好的数学。我选择将陪集放入 TreeSet 中,因为我不需要重复的元素,并且需要按索引对它们进行排序。

问题是即使 TreeSet.contains() 返回 false,我仍然可以在使用compareTo() 和 equals() 方法时在 TreeSet 中找到一个相等的元素。

这是程序的实际打印输出:

cosets = [C0, C1, C3, C5, C7]
cosets.contains(C9) = false
C0.compareTo(C9) = -1, C0.equals(C9) = false
C1.compareTo(C9) = -1, C1.equals(C9) = false
C3.compareTo(C9) = 0, C3.equals(C9) = true
C5.compareTo(C9) = -1, C5.equals(C9) = …
Run Code Online (Sandbox Code Playgroud)

java contains treeset

1
推荐指数
1
解决办法
4403
查看次数

标签 统计

java ×2

string ×2

contains ×1

format ×1

list ×1

object ×1

printing ×1

python ×1

treeset ×1

wrapper ×1