小编Dia*_*ana的帖子

Android - AsyncTask没有执行

我知道这个标题已经有很多问题,但我仍然没有找到适合我案例的解决方案.

我有以下代码从在线数据库中获取用户数据.如标题所述,问题是AsyncTask没有开始.

这是我的代码:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getData(); // retrieves "friends" data from database
    FloatingActionButton btn3 = (FloatingActionButton) findViewById(R.id.button_add_new_friend);
    btn3.setBackgroundTintList(getResources().getColorStateList(R.color.Blonde));
    btn3.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            LayoutInflater layoutInflater = LayoutInflater.from(profile.this);
            View promptView = layoutInflater.inflate(R.layout.input_new_friend, null);
            AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(profile.this);
            alertDialogBuilder.setView(promptView);

            final EditText editText1 = (EditText) promptView.findViewById(R.id.edittext_addnewfriend);

            // setup a dialog window
            alertDialogBuilder.setCancelable(false)
                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int id) {

                        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
                        StrictMode.setThreadPolicy(policy);

                        InputStream is = …
Run Code Online (Sandbox Code Playgroud)

android android-asynctask

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

malloc - 从void*到double*的无效转换

我想编写一个使用指针创建双数组副本的函数.到目前为止这是我的代码:

#include <stdio.h>
#include <stdlib.h>

double* copy (double *array, int size)
{
    double *v=malloc(sizeof(double)*size);
    for (int i=0; i<size; i++)
        *(v+i)=*(array+i);
    return v;
}

int main ()
{
    //double array[];
    int size;
    printf ("size= "); scanf ("%i",&size);
    double *array=malloc(sizeof(double)*size);
    for (int i=0; i<size; i++)
        scanf("%f",&array[i]);
    copy(array,size);
    free(array);
}
Run Code Online (Sandbox Code Playgroud)

我有2个编译错误,我无法摆脱.我明白了

从void*无效转换为double*

当我尝试使用malloc分配内存但我无法理解我做错了什么.

c malloc

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

哈斯克尔 - 论点太少了

我想写一个Haskell程序,计算2个给定数字之间的数字之和.我有以下代码:

sumInt :: Int -> Int -> Int
sumInt x y
   | x > y = 0
   | otherwise = x + sumInt x+1 y
Run Code Online (Sandbox Code Playgroud)

但是当我编译它时,我收到以下错误:

SumInt适用于太少的参数.

我不明白我做错了什么.有任何想法吗?

haskell

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

Haskell - zip 2列表

我想编写一个将两个列表压缩在一起的函数.我有以下代码:

zip' :: [a]->[b]->[(a,b)]
zip' _ [] = []
zip' [] _ = []
zip' (x:xs)(y:ys)=(x,y) zip'(xs ys)
Run Code Online (Sandbox Code Playgroud)

问题是,当我编译代码时,我会遇到很多错误

无法将预期类型[b] - > t0与实际类型a匹配

函数xs应用于一个参数

有什么想法我做错了什么?对不起,如果这可能听起来像愚蠢的问题.

haskell

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

GHCi中的非穷举模式

我想创建一个显示列表最后一个元素的函数.这是我的代码:

ghci> let myLast :: [a] -> a
ghci> let myLast [] = error 
ghci> let myLast [x] = x
ghci> let myLast (x:xs) = myLast xs
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

***Exception: Non-exhaustive patterns in function myLast
Run Code Online (Sandbox Code Playgroud)

我知道你在错过案件时会收到这个错误,但我认为我已经包含了所有可能性.有任何想法吗?

haskell function multiline ghci read-eval-print-loop

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

Haskell - 使用列表理解编写zip函数

我的问题是我想编写一个使用列表推导来压缩2个列表的函数.到目前为止我写了这个:

import Data.List
zip' xs ys = [(x,y)| x <- xs, y <- ys, elemIndex x xs == elemIndex y ys]
Run Code Online (Sandbox Code Playgroud)

但它不起作用

zip' [1,2,2,3,2] [1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

有什么想法我应该如何修改它?

haskell

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

Java - 从文件中读取错误的字符

我想编写一个程序,逐个字符地从文件中读取文本,并计算每个字符出现的频率.

我有以下代码:

import java.util.Scanner;
import java.io.*;

public class text {

    public static void frequency (char[] array, int k)
    {
        int ok=0;
        for (char i ='a'; i<='z'; i++)
        {
            ok=0;
            for (int j=0; j<k; j++)
                if (i==array[j])
                    ok++;
            if (ok!=0)
            {
                System.out.println (i + " appears for " + ok + " times");
            }
        }
    }

    public static void main(String[] args) 
       throws FileNotFoundException {

        Scanner in = new Scanner(new File("C:\\Users\\Diana\\workspace\\Text\\src\\FileInput"));
        char[] array = new char [100]; 
        int k=0;

        while (in.hasNext())
        { …
Run Code Online (Sandbox Code Playgroud)

java

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

乘法是否需要单位时间?

我有以下问题

在什么情况下可以将乘法视为单位时间运算?

但我认为乘法总是被认为是单位时间.我错了吗?

algorithm complexity-theory multiplication time-complexity execution-time

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

Haskell - 复制列表中的元素

我想编写一个Haskell程序,它可以复制给定次数的列表元素.这是我的代码:

repli :: [a] -> a -> [a]
repli xs n = foldl1 (\x -> take n (repeat x)) xs
Run Code Online (Sandbox Code Playgroud)

我的问题是我在编译时遇到以下错误:

'take'适用于太多的参数

无法匹配期望类型'[a] - > [a]'与实际类型'[[a]]'

haskell

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

Haskell-使用foldr编写映射函数

我正在尝试使用foldr编写map函数.问题是,当我运行此代码时:

> myMap f xs = foldr (\ acc x -> acc :(f x)) [] xs
Run Code Online (Sandbox Code Playgroud)

我有以下问题:

使用'it'时没有(Num [a0])的实例

但是当我跑

myMap f xs = foldr (\x acc-> (f x):acc) [] xs
Run Code Online (Sandbox Code Playgroud)

它完美地运作.有什么想法吗?

haskell

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