为什么在这个Java客户机/服务器设置中会出现NoTouchElementException?

为什么在这个Java客户机/服务器设置中会出现NoTouchElementException?,java,sockets,exception,client-server,nosuchelementexception,Java,Sockets,Exception,Client Server,Nosuchelementexception,我正在用netbeans制作一个java客户机/服务器套接字程序,该程序应该接受一个数字,然后返回该数字的平方根/平方。 它允许我键入一个数字,然后我得到以下语句: 在客户端中发现异常:java.util.NoSuchElementException 我不知道它为什么这样做,请帮助 以下是这两个类的代码: 客户: package question1.clientserver; import java.net.*; import java.io.*; import java.util.Scann

我正在用netbeans制作一个java客户机/服务器套接字程序,该程序应该接受一个数字,然后返回该数字的平方根/平方。 它允许我键入一个数字,然后我得到以下语句: 在客户端中发现异常:java.util.NoSuchElementException

我不知道它为什么这样做,请帮助

以下是这两个类的代码:

客户:

package question1.clientserver;

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

public class Client {

 public static void main(String[] args) throws IOException {
    try {
        int number, temp;
        Scanner sc = new Scanner(System.in);
        Socket s = new Socket("127.0.0.1", 1452);
        Scanner sc1 = new Scanner(s.getInputStream());
        System.out.println("Enter any number to be squared");
        number = sc.nextInt();
        PrintStream p = new PrintStream(s.getOutputStream());
        p.println(number);
        temp = sc1.nextInt();
        System.out.println(temp);
    } catch (Exception e) {
        System.out.println("Exception found in Client: " + e);
    }
}
}
这是我的服务器代码

package question1.clientserver;

import java.io.IOException;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

public class Server {

public static void main(String[] args) {
    while (true) {
        System.out.println("Waiting for connection, please stand by...");

        try {
            int number, temp;
            ServerSocket s1 = new ServerSocket(1452);
            Socket ss = s1.accept();
            System.out.println("Connection has been established");
            Scanner sc = new Scanner(ss.getInputStream());
            number = sc.nextInt();

            temp = number * number;

            PrintStream p = new PrintStream(ss.getOutputStream());

            p.println(temp);
        } catch (Exception e) {
            System.out.println("Exception in Server while creating connection" + e);
        }

    }
}
}
}
如果你有任何想法或建议,请让我知道

堆栈跟踪

run: Enter any number to be squared 
25 (which is what i type in for example) 
Exception found in Client: java.util.NoSuchElementException 
Build Successful (total time: 31 seconds)

您可以发布stacktrace吗?运行:输入任何要平方25的数字(例如,我键入的数字)在客户端中发现的异常:java.util.NoSuchElementException(生成成功(总时间:31秒)如果您包含完整的类(包括类声明和导入),其他人将更容易复制…我无法复制您的问题-它对我来说对单个客户端“有效”-但随后服务器进入异常循环,因为它试图在未关闭旧套接字的情况下重新打开套接字。您正在执行sc.nextint()多次导致此问题。您可以放置完整的stacktrace。这样我们就可以很容易地识别。您可以发布stacktrace吗?运行:输入任何要平方25的数字(例如,这是我键入的数字)在客户端中发现的异常:java.util.NoSuchElementException(生成成功(总时间:31秒)如果您包含完整的类(包括类声明和导入),其他人将更容易复制…我无法复制您的问题-它对我来说对单个客户端“有效”-但随后服务器进入异常循环,因为它试图在未关闭旧套接字的情况下重新打开套接字。您正在执行sc.nextint()多次导致此问题。您能放置完整的stacktrace吗?这样我们就很容易识别。