可通过参数运行吗? [重复]

问题描述

|                                                                                                                   这个问题已经在这里有了答案:                                                      

解决方法

您可以在方法中声明一个类
void Foo(String str) {
    class OneShotTask implements Runnable {
        String str;
        OneShotTask(String s) { str = s; }
        public void run() {
            someFunc(str);
        }
    }
    Thread t = new Thread(new OneShotTask(str));
    t.start();
}
    ,您可以将其放在函数中。
String paramStr = \"a parameter\";
Runnable myRunnable = createRunnable(paramStr);

private Runnable createRunnable(final String paramStr){

    Runnable aRunnable = new Runnable(){
        public void run(){
            someFunc(paramStr);
        }
    };

    return aRunnable;

}
(使用此参数时,我的参数是整数ID,用于创建ID-> myRunnables的哈希图。这样,我可以使用哈希图在处理程序中发布/删除不同的myRunnable对象。)     ,
theView.post(new Runnable() {
    String str;
    @Override                            
    public void run() {
        par.Log(str);                              
    }
    public Runnable init(String pstr) {
        this.str=pstr;
        return(this);
    }
}.init(str));
创建返回对象本身并使用其初始化参数的init函数。     ,我使用以下实现Runnable接口的类。使用此类,您可以轻松地创建带有参数的新线程
public abstract class RunnableArg implements Runnable {

    Object[] m_args;

    public RunnableArg() {
    }

    public void run(Object... args) {
        setArgs(args);
        run();
    }

    public void setArgs(Object... args) {
        m_args = args;
    }

    public int getArgCount() {
        return m_args == null ? 0 : m_args.length;
    }

    public Object[] getArgs() {
        return m_args;
    }
}
    ,您有两种选择: 定义一个命名的类。将您的参数传递给命名类的构造函数。 让您的匿名班级关闭您的“参数”。确保将其标记为“ 4”。     ,我首先想知道您要在这里完成什么,需要将一个参数传递给新的Runnable()或run()。 通常的方法应该是拥有一个Runnable对象,该对象通过在启动之前设置成员变量来将data(str)传递到其线程。然后,run()方法使用这些成员变量值来执行someFunc()     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...