小编Kai*_*Kai的帖子

如何组合一系列例外?

有什么方法可以合并一个扔掉的名单吗?我有一个ListenableFutures列表,每个都会捕获异常(如果有的话)并将其保存在Result实例中.最后,如果ListenableFutures的任何Result包含throwable,我想抛出异常.问题是如何组合多个throwable,因为可能有多个未来失败?

List<ListenableFuture<Result>> futureList = new ArrayList<>();
futureList.add(future1);
futureList.add(future2);
futureList.add(future3);

ListenableFuture<List<Result>> future = futureFutures.successfulAsList(futureList);

return Futures.transform(future, new Function<List<Result>, FinalResult>() {
      @Override
      public FinalResult apply(List<Result> resultList) {
        List<Throwable> throwableList = new ArrayList<>();
        for (Result result : resultList) {
            if (result.getThrowable() != null) {
                throwableList.add(result.getThowable());
            }
        }

        if (!throwableList.isEmpty()) {
           // Is there something like below that I can combine a list
           // of throwables and throw it?
           Throwable.propagateList(throwableList); // ?????????
        }
        .....
        return finalResult;
      }
    },
    MoreExecutors.sameThreadExecutor());
Run Code Online (Sandbox Code Playgroud)

java exception-handling exception guava

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

函数中的 return 语句作为类

我对充当类的函数中的 return 语句感到困惑。请参阅下面的示例代码:

<html>
<body>

<script type="text/javascript">
function test() {
    this.abc = 'def';
    return 3;
}

var mytest = new test(); 

document.write(mytest + ', ' + (typeof mytest) + ', ' + mytest.abc);

</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

代码输出:[object Object], object, def。

这是我的问题。我在 test() 函数中写了“return 3”。调用“new test()”时是否会忽略此语句?

谢谢。

javascript

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

FLAG_ACTIVITY_REORDER_TO_FRONT和startActivityForResult

活动A使用startActivityForResult启动B,B使用startActivity启动C. 之后,活动堆栈是AB C.

现在假设,C使用FLAG_ACTIVITY_REORDER_TO_FRONT标志对B进行startActivity调用,然后活动堆栈将变为AC B.

我的问题是,现在,如果B完成自己,A中的onActivityResult()会因为B的退出而被调用吗?

谢谢.

android

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

通常没有必要子类应用程序?

根据它所述的Android文档(http://developer.android.com/reference/android/app/Application.html):

There is normally no need to subclass Application. 
Run Code Online (Sandbox Code Playgroud)

我的问题是.我的应用程序需要在应用程序启动时准备一些数据(例如,从共享首选项加载一些状态数据),然后才能执行任何其他操作.我通常将数据准备逻辑放在一个子类Application中.

如果不鼓励子类化应用程序,我应该在哪里放置app-startup-time数据准备逻辑?什么是最佳做法?

谢谢.

android

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

关于CSS选择器语法的问题

我对CSS选择器语法有疑问.

以下两个CSS选择器有什么区别?

.myclass1 .myclass2 {
    color: black;
}

.myclass1.myclass2 {
    color: black;
}
Run Code Online (Sandbox Code Playgroud)

它们是一样的吗?

谢谢.

html css css-selectors

3
推荐指数
2
解决办法
126
查看次数

在 Guava 中,哪个线程 FutureCallback 将被调用以获取 ListenableFuture?

我肯定错过了什么。我很难理解在 Guava 中哪个线程 FutureCallback 将被调用以获取 ListenableFuture。

我的代码的第一个版本是:

    Log.d("mydebug", "Before submit, " + Thread.currentThread() + ", " + android.os.Process.myTid());
    ListeningExecutorService service = MoreExecutors.listeningDecorator(Executors.newFixedThreadPool(10));
    ListenableFuture future = service.submit(new Runnable() {
        @Override
        public void run() {
            Log.d("mydebug", "In run, " + Thread.currentThread() + ", " + android.os.Process.myTid());
        }
    });

    Futures.addCallback(future, new FutureCallback() {
        @Override
        public void onSuccess(Object result) {
            Log.d("mydebug", "In onSuccess, " + Thread.currentThread() + ", " + android.os.Process.myTid());
        }
        @Override
        public void onFailure(Throwable thrown) {
            Log.d("mydebug", "In onFailure, " + Thread.currentThread() …
Run Code Online (Sandbox Code Playgroud)

java multithreading android guava

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