Я пытаюсь сохранить значение int, которое мой сервер получает от клиента, в стек, но не знаю, с чего начать и что делать.
public class ser {
public static int number, temp;
public static void main(String args[]) throws UnknownHostException, IOException
{
ServerSocket s1=new ServerSocket(1342);
Socket ss = s1.accept();
Scanner sc = new Scanner (ss.getInputStream());
number = sc.nextInt();
temp = number*2;
PrintStream p=new PrintStream(ss.getOutputStream());
p.println(temp);
}
}
Я хочу, чтобы темп сохранялся в стеке.
Любая помощь будет оценена.
Какой у Вас вопрос? Вы не знаете, как объявить переменную? Какой тип использовать для Stack?




попробуйте код ниже.
import java.io.*;
import java.util.*;
public class ser {
public static int number, temp;
public static void main(String args[]) throws UnknownHostException, IOException
{
ServerSocket s1=new ServerSocket(1342);
Socket ss = s1.accept();
Scanner sc = new Scanner (ss.getInputStream());
number = sc.nextInt();
temp = number*2;
Stack<Integer> stack = new Stack<Integer>();
stack.push(number);
stack.push(temp);
PrintStream p=new PrintStream(ss.getOutputStream());
p.println(temp);
}
}
Я предполагаю, что вы имеете в виду, что хотите создать структуру данных стека, то есть структуру первого в последнем.
Вам нужно объявить объект куча и поместить в него свою временную переменную. Измененный код будет выглядеть примерно так
import java.io.*;
import java.util.*;
public class ser {
public static int number, temp;
public static void main(String args[]) throws UnknownHostException,
IOException
{
ServerSocket s1=new ServerSocket(1342);
Socket ss = s1.accept();
Scanner sc = new Scanner (ss.getInputStream());
number = sc.nextInt();
temp = number*2;
Stack<Integer> stack = new Stack<Integer>();
stack.push(temp);
PrintStream p=new PrintStream(ss.getOutputStream());
// this should print your temp number, now part of the stack
p.println(stack.peek());
}
}
Однако, если вы имеете в виду действие сохранения переменных «в стеке» как выделение памяти, взгляните на вопрос это.
Надеюсь это поможет!
Сначала вам понадобится стек. Затем, поскольку стандартная реализация будет принимать только объекты, вам нужно будет упаковать
intсInteger, но компилятор может сделать это за вас автоматически. Если вам нужен стек примитивов, вероятно, есть какая-то библиотека, содержащая что-то вродеIntStack.