First version

This commit is contained in:
John Doe 2023-04-01 09:00:46 +02:00
parent 6a40cc1109
commit 245ea095c2
14 changed files with 580 additions and 0 deletions

1
.idea/description.html Normal file
View File

@ -0,0 +1 @@
<html>Simple <b>Java</b> application that includes a class with <code>main()</code> method</html>

6
.idea/encodings.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

9
.idea/misc.xml Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectKey">
<option name="state" value="project://e2804f05-5315-4fc6-a121-c522a6c26470" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" default="false" project-jdk-name="13" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/zadanie.iml" filepath="$PROJECT_DIR$/zadanie.iml" />
</modules>
</component>
</project>

View File

@ -0,0 +1,3 @@
<template>
<input-field default="com.company">IJ_BASE_PACKAGE</input-field>
</template>

358
.idea/workspace.xml Normal file
View File

@ -0,0 +1,358 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="806d4cdc-f0fc-4fd2-ab07-3496c3d6da27" name="Default Changelist" comment="" />
<ignored path="$PROJECT_DIR$/out/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="375">
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="330">
<caret line="15" selection-start-line="15" selection-end-line="15" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/HockeyManager.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="254">
<caret line="28" column="38" lean-forward="true" selection-start-line="28" selection-start-column="38" selection-end-line="28" selection-end-column="38" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#272#273#0" expanded="true" />
<element signature="e#337#338#0" expanded="true" />
<element signature="e#406#407#0" expanded="true" />
<element signature="e#468#469#0" expanded="true" />
<element signature="e#539#540#0" expanded="true" />
<element signature="e#599#600#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/Player.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110">
<caret line="5" column="15" selection-start-line="5" selection-start-column="15" selection-end-line="5" selection-end-column="15" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/Goalie.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<folding>
<element signature="e#275#276#0" expanded="true" />
<element signature="e#301#302#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/Defender.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="44">
<caret line="2" selection-start-line="2" selection-end-line="2" />
<folding>
<element signature="e#279#280#0" expanded="true" />
<element signature="e#311#312#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/Forward.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
<caret line="7" column="27" selection-start-line="7" selection-start-column="27" selection-end-line="7" selection-end-column="27" />
<folding>
<element signature="e#280#281#0" expanded="true" />
<element signature="e#312#313#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Class" />
</list>
</option>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/player.java" />
<option value="$PROJECT_DIR$/src/HockeyManager.java" />
<option value="$PROJECT_DIR$/src/Player.java" />
<option value="$PROJECT_DIR$/src/Goalie.java" />
<option value="$PROJECT_DIR$/src/Defender.java" />
<option value="$PROJECT_DIR$/src/Forward.java" />
<option value="$PROJECT_DIR$/src/Main.java" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="y" value="28" />
<option name="width" value="1612" />
<option name="height" value="876" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="zadanie" type="b2602c69:ProjectViewProjectNode" />
<item name="zadanie" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="zadanie" type="b2602c69:ProjectViewProjectNode" />
<item name="zadanie" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
</panes>
</component>
<component name="PropertiesComponent">
<property name="project.structure.last.edited" value="Project" />
<property name="project.structure.proportion" value="0.15" />
<property name="project.structure.side.proportion" value="0.2" />
<property name="settings.editor.selected.configurable" value="reference.projectsettings.compiler.javacompiler" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager">
<configuration name="Main" type="Application" factoryName="Application" temporary="true">
<option name="MAIN_CLASS_NAME" value="Main" />
<module name="zadanie" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<recent_temporary>
<list>
<item itemvalue="Application.Main" />
</list>
</recent_temporary>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="806d4cdc-f0fc-4fd2-ab07-3496c3d6da27" name="Default Changelist" comment="" />
<created>1680264526032</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1680264526032</updated>
</task>
<servers />
</component>
<component name="ToolWindowManager">
<frame x="0" y="28" width="1920" height="1014" extended-state="6" />
<editor active="true" />
<layout>
<window_info id="Designer" />
<window_info id="UI Designer" />
<window_info id="Favorites" side_tool="true" />
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.2497309" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info anchor="bottom" id="Version Control" />
<window_info anchor="bottom" id="Terminal" />
<window_info anchor="bottom" id="Event Log" side_tool="true" />
<window_info anchor="bottom" id="Messages" weight="0.32902467" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.32902467" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="right" id="Palette" />
<window_info anchor="right" id="Maven" />
<window_info anchor="right" id="Palette&#9;" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
</layout>
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/.editorconfig">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/Player.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110">
<caret line="5" column="15" selection-start-line="5" selection-start-column="15" selection-end-line="5" selection-end-column="15" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Goalie.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<folding>
<element signature="e#275#276#0" expanded="true" />
<element signature="e#301#302#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Defender.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="44">
<caret line="2" selection-start-line="2" selection-end-line="2" />
<folding>
<element signature="e#279#280#0" expanded="true" />
<element signature="e#311#312#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Forward.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
<caret line="7" column="27" selection-start-line="7" selection-start-column="27" selection-end-line="7" selection-end-column="27" />
<folding>
<element signature="e#280#281#0" expanded="true" />
<element signature="e#312#313#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/HockeyManager.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="254">
<caret line="28" column="38" lean-forward="true" selection-start-line="28" selection-start-column="38" selection-end-line="28" selection-end-column="38" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#272#273#0" expanded="true" />
<element signature="e#337#338#0" expanded="true" />
<element signature="e#406#407#0" expanded="true" />
<element signature="e#468#469#0" expanded="true" />
<element signature="e#539#540#0" expanded="true" />
<element signature="e#599#600#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="330">
<caret line="15" selection-start-line="15" selection-end-line="15" />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ArtifactsStructureConfigurable.UI">
<settings>
<artifact-editor />
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="FacetStructureConfigurable.UI">
<settings>
<last-edited>No facets are configured</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="GlobalLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="JdkListConfigurable.UI">
<settings>
<last-edited>13</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>zadanie</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
<option value="0.6" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

0
src/.editorconfig Normal file
View File

14
src/Defender.java Normal file
View File

@ -0,0 +1,14 @@
class Defender extends Player {
private int hits = 0;
public Defender(String name, int age, int hits) {
super.setType(Type.DEFENDER);
super.setName(name);
super.setAge(age);
this.hits = hits;
}
public int getHits() {
return this.hits;
}
}

15
src/Forward.java Normal file
View File

@ -0,0 +1,15 @@
class Forward extends Player {
private int goals = 0;
public Forward(String name, int age, int goals) {
super.setType(Type.FORWARD);
super.setName(name);
super.setAge(age);
this.goals = goals;
}
public int getGoals() {
return this.goals;
}
}

16
src/Goalie.java Normal file
View File

@ -0,0 +1,16 @@
class Goalie extends Player {
private int wins = 0;
public Goalie(String name, int age, int wins) {
super.setType(Type.GOALIE);
super.setName(name);
super.setAge(age);
this.wins = wins;
}
public int getWins() {
return this.wins;
}
}

60
src/HockeyManager.java Normal file
View File

@ -0,0 +1,60 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class HockeyManager {
private List<Player> player_list;
public HockeyManager() {
player_list = new ArrayList<>();
}
public void AddNewForward(String name, int age, int goals) {
player_list.add(new Forward(name, age, goals));
}
public void AddNewDefender(String name, int age, int hits) {
player_list.add(new Defender(name, age, hits));
}
public void AddNewGoalie(String name, int age, int wins) {
player_list.add(new Goalie(name, age, wins));
}
public void PrintNameAndAgeOfTheYoungestPlayer() {
Collections.sort(player_list);
System.out.println(player_list.get(0).getName() + " " + player_list.get(0).getAge());
switch (player_list.get(0).getType()) {
case FORWARD:
System.out.println("Goals: " + ((Forward) player_list.get(0)).getGoals());
break;
case DEFENDER:
System.out.println("Hits: " + ((Defender) player_list.get(0)).getHits());
break;
case GOALIE:
System.out.println("Wins: " + ((Goalie) player_list.get(0)).getWins());
break;
default:
// code block
}
/*
for (Player item : player_list) {
System.out.println(item.name);
}
*/
}
}

15
src/Main.java Normal file
View File

@ -0,0 +1,15 @@
public class Main {
public static void main(String[] args) {
HockeyManager mngr = new HockeyManager();
mngr.AddNewForward("Wayne Gretzky", 5, 5);
mngr.AddNewDefender("Zigo Palfy", 4, 2);
mngr.AddNewGoalie("Jan Lasak", 3, 1);
mngr.PrintNameAndAgeOfTheYoungestPlayer();
}
}

64
src/Player.java Normal file
View File

@ -0,0 +1,64 @@
public class Player implements Comparable<Player> {
enum Type {
DEFENDER,
FORWARD,
GOALIE,
NONE
}
private String name;
private int age;
private Type type;
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public void setType(Type type) {
this.type = type;
}
public Type getType() {
return this.type;
}
public Player() {
this.name = "";
this.age = 0;
this.type = Type.NONE;
}
@Override
public int compareTo(Player another) {
if (this.age < another.age) {
return -1;
} else {
return 1;
}
}
}

11
zadanie.iml Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>