Java Scala:如何在数组中启动参与者?

Java Scala:如何在数组中启动参与者?,java,arrays,scala,translate,actor,Java,Arrays,Scala,Translate,Actor,我正在尝试用Java和Scala两种语言编写一个简单的客户机/服务器聊天应用程序。Java版本正在运行,唯一的问题是翻译它。 在Java中,我有如下代码: import java.net.*; import java.io.*; public class FileServer666 extends Thread{ static Socket clientSocket = null; static ServerSocket serverSocket= null;

我正在尝试用Java和Scala两种语言编写一个简单的客户机/服务器聊天应用程序。Java版本正在运行,唯一的问题是翻译它。 在Java中,我有如下代码:

import java.net.*;
import java.io.*;

public class FileServer666 extends Thread{

    static Socket clientSocket = null;
    static ServerSocket  serverSocket= null;    
    static  clientThread t[] = new clientThread[10]; 

    public static void main(String args[]) throws IOException           
    { 
        int port_number =1406;
        try
        {
            serverSocket = new ServerSocket(port_number);
        }catch(IOException e){System.out.println(e);}

        System.out.println("Listening" +port_number);

        while(true)
        {
            try
            {           
                clientSocket=serverSocket.accept();
                System.out.println("Akceptuje połaczenie od: "+clientSocket.getInetAddress());

                for(int i=0; i<=9; i++)
                {               
                    if(t[i]==null)                                  
                    {
                        (t[i] = new clientThread(clientSocket,t)).start();
                        break;
                    }
                }                       
            }catch(IOException e){System.out.println(e);}       
        }
    }       
}
你有什么建议吗?

简单地说:

t(i) = ( new ClientActor( clientSocket, t) ).start

其中,
ClientActor
是您的参与者。

如果您坚持直接翻译,而您的问题只是赋值没有在scala中返回值,那么只需执行即可

t(i) = new ClientThread(clientSocket, t)
t(i).start

不幸的是,它不起作用。我有一个错误:类型不匹配;找到:scala.actors.Actor必需:server.Wyslij Wyslij是我的参与者。我尝试了。它不起作用。每次运行客户端应用程序时,都会出现nullpointerexception。
t(i) = new ClientThread(clientSocket, t)
t(i).start