小编Mar*_*nas的帖子

如何检查firestore中是否存在该字段?

我正在检查调用的布尔字段是否attending存在,但我不知道该怎么做。

有没有类似的功能.child().exists()我可以使用?

firebaseFirestore.collection("Events")
    .document(ID)
    .collection("Users")
    .get()
    .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
        @Override
        public void onComplete(@NonNull Task<QuerySnapshot> task) {
            if(task.isSuccessful()) {
                for(QueryDocumentSnapshot document: task.getResult()){
                    attending = document.getBoolean("attending");
                }
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

java android firebase google-cloud-firestore

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

对快速排序和归并排序进行基准测试得出归并排序更快

我已经尝试过基准测试,出于某种原因,当在 1M 元素的数组上尝试它们时,它们在0.3 秒内Mergesort排序并Quicksort花费了 1.3 秒。

我听说快速排序通常更快,因为它的内存管理,但如何解释这些结果?

如果这有什么不同,我正在运行 MacBook Pro。输入是一组从 0 到 127 的随机生成的整数。

代码在Java中:

归并排序:

static void mergesort(int arr[]) {
    int n = arr.length;
    if (n < 2)
        return;
    int mid = n / 2;
    int left[] = new int[mid];
    int right[] = new int[n - mid];
    for (int i = 0; i < mid; i++)
        left[i] = arr[i];
    for (int i = mid; i < n; i++)
        right[i - mid] = arr[i];
    mergesort(left);
    mergesort(right); …
Run Code Online (Sandbox Code Playgroud)

java benchmarking mergesort quicksort

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