小编fis*_*rds的帖子

最佳实践:如何判断集合/ set/let是否是Guava ImmutableSet/Immutable映射?

我的代码中有一个错误,我正在尝试修改一个真正是从客户端程序/程序员传入的Guava ImmutableList的List.

测试此问题的最佳方法是什么,而不是在.add()失败时等待异常?

java guava

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

最佳实践:python中的动态方法执行

我刚刚开始使用Java,C,c ++等多年的python.我有一长串文件/模块,每个文件/模块都包含一个我想动态调用的主要方法.对于每个关键字,我有一个名为get_foo的.py文件,并且在每个get_foo.py中都有一个foo方法.所以我想传入命令名"foo"并执行方法get_foo.foo()

我真的不想用丑陋的if/then/else块来做这件事

sections = [ "abstract",  "claim",  "drawing", "examiner"]
command = "claim"
Run Code Online (Sandbox Code Playgroud)

我想要什么样的东西

exec("get_" + command + "." + command)
Run Code Online (Sandbox Code Playgroud)

但我真的不知道exec/eval/etc的哪个区域可以做到这一点.

python

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

Java,可以使用布尔值赋值布尔值,反之亦然?

当我运行此代码片段时,不会采取任何一方.

if (Boolean.class.isAssignableFrom(boolean.class)) {
     uLog.error("Boolean is => boolean");
}
if (boolean.class.isAssignableFrom(Boolean.class)) {
     uLog.error("boolean is <= Boolean");
}
Run Code Online (Sandbox Code Playgroud)

具体来说,我正在尝试使用反射测试参数类型:

Type[] pType = m.getGenericParameterTypes();
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚布尔参数的正确测试.

java reflection

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

对于默认构造函数,不能使用Guava Optional吗?

我无法找到一个正确的方法来获得一个Guava Optional的默认构造函数参数.以下代码不能使用Java 1.6进行编译

public class ShoppingCart implements Serializable {
private final Optional<DiscountCoupon> discountCoupon;

public ShoppingCart() {
    this(Optional.absent());
}
public ShoppingCart(Optional<DiscountCoupon> dc) {
    Preconditions.checkNotNull(dc);
    if (dc.isPresent()) {
        Preconditions.checkArgument(dc.get().getPennyDiscount() != 0 || 
                        dc.get().getPercentDiscount() != 0);
    }
    discountCoupon = dc;
}
Run Code Online (Sandbox Code Playgroud)

报告的错误是:

/Users/pfarrell/sandbox//com/wayfinderdigital/struct/ShoppingCart.java:29: cannot find symbol
symbol  : constructor ShoppingCart(com.google.common.base.Optional<java.lang.Object>)
location: class com.wayfinderdigital.struct.ShoppingCart
    this(Optional.absent());
Run Code Online (Sandbox Code Playgroud)

java guava

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

初学者的python类构造函数没有任何争论

我只是在学习python,似乎犯了一个微不足道的错误.使用此代码,使用构造函数来获取模式获取和错误.

"cit_ref = Patterns(patstring,3)TypeError:这个构造函数不带参数"

import re

class Patterns:
    """A simple struct to hold our regex """
def __init__(self, pat, bodynumArg=2):
    self.pat = pat
    self.bodynum = bodynumArg
    self.reg = re.compile(self.pat, re.M+re.S)

patstring = r'<((us-)?references-cited)>(.*?)</\1>'
cit_ref = Patterns( patstring, 3)
Run Code Online (Sandbox Code Playgroud)

python class

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

你能在Predicate操作中使用"括号"吗?

我看不到任何方法来构建一个使用括号来控制逻辑顺序的谓词.有吗?

说我想做像Predicate <= mumble和(foo或baz)这样的事情

一个简单的Predicates.and或一个Predicates.or没有相当于说"foo或baz"和mumble.

这可能吗?

guava predicates

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

Guava Iterables.filter(),你如何测试空回报?

我喜欢使用Guava的Iterables过滤器.但是一个常见的代码片段如下所示:

  List foo = Lists.newArrayList(Iterables.filter(someCollection, somePredicate));  
  if (foo.isEmpty) {  
    // do empty  
  } else {  
    int count = foo.size();  // do non-empty  
  }  
Run Code Online (Sandbox Code Playgroud)

这是浪费,因为我真的不需要构建"foo"列表,我只需要知道它是否为空,并获得元素数量的计数.

我想知道以下的最佳实践:
1)如何在isEmpty()不浪费时间的情况下将列表构建到内存中进行测试
2)有没有办法在不迭代所有条目的情况下获取大小?
3)如果#2没有非迭代解决方案,那么迭代并计算++会更好吗?

java guava

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

标签 统计

guava ×4

java ×4

python ×2

class ×1

predicates ×1

reflection ×1