online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code   
Language
/****************************************************************************** Online Java Compiler. Code, Compile, Run and Debug java program online. Write your code in this editor and press "Run" button to execute it. *******************************************************************************/ import java.util.HashMap; import java.util.Map; import java.io.*; enum Premission { USER, ADMIN, } class User implements java.io.Serializable { public String Login; String password; public Premission premission = Premission.USER; public User(String login, String password){ Login = login; this.password = password; } public boolean MatchPassword(String password){ return this.password.equals(password); } public User SetPassword(String newPassword){ password = newPassword; return this; } } class DataStorage implements java.io.Serializable { Map<String, User> users = new HashMap<>(); public User AddUser(String login, String password){ User newUser = new User(login, password); users.put(login, newUser); return newUser; } public User GetUser(String login){ return users.get(login); } public boolean HasUser(String login){ return users.containsKey(login); } public void SaveTo(String filename){ try { FileOutputStream file = new FileOutputStream(filename); ObjectOutputStream out = new ObjectOutputStream(file); out.writeObject(this); out.close(); file.close(); } catch(IOException ex) { System.out.println("IOException"); } } public static DataStorage LoadFrom(String filename){ try { DataStorage object; FileInputStream file = new FileInputStream(filename); ObjectInputStream in = new ObjectInputStream(file); object = (DataStorage)in.readObject(); in.close(); file.close(); return object; } catch(IOException ex) { System.out.println("IOException"); } catch (ClassNotFoundException ex){ System.out.println("ClassNotFoundException"); } return null; } } public class Main { public static DataStorage data; public static void main(String[] args) { File f = new File("database.obj"); if(f.exists() && !f.isDirectory()) { data = DataStorage.LoadFrom("database.obj"); } else { data = new DataStorage(); } User currentUser = null; cycle: while (true){ String command = System.console().readLine(); switch (command) { case "register": Register(); break; case "login": currentUser = Login(); break; case "get premission": System.out.println(currentUser.premission); break; case "set admin": currentUser.premission = Premission.ADMIN; break; case "rem admin": currentUser.premission = Premission.USER; break; case "stop": data.SaveTo("database.obj"); break cycle; } } } public static User Login(){ System.out.println("Введите логин:"); String login = System.console().readLine(); if (!data.HasUser(login)){ System.out.println("Пользователя с таким логином не существует"); return null; } System.out.println("Введите пароль:"); String password = System.console().readLine(); User user = data.GetUser(login); if (!user.MatchPassword(password)){ System.out.println("Неверный пароль!"); return null; } else { System.out.println("Вы успешно вошли"); return user; } } public static void Register(){ System.out.println("Введите логин:"); String login = System.console().readLine(); if (data.HasUser(login)){ System.out.println("Пользователь с таким логином уже существует"); return; } System.out.println("Введите пароль:"); String password = System.console().readLine(); data.AddUser(login, password); System.out.println("Пользователь создан"); return; } }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue