Smaller task & refactoring co2
This commit is contained in:
parent
e45d52037f
commit
1464df11cf
29 changed files with 683 additions and 0 deletions
7
Code/Steiner/CO2-Daten-Projekt-V2/.vscode/settings.json
vendored
Normal file
7
Code/Steiner/CO2-Daten-Projekt-V2/.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"java.project.sourcePaths": ["src"],
|
||||
"java.project.outputPath": "bin",
|
||||
"java.project.referencedLibraries": [
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
18
Code/Steiner/CO2-Daten-Projekt-V2/README.md
Normal file
18
Code/Steiner/CO2-Daten-Projekt-V2/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
## Getting Started
|
||||
|
||||
Welcome to the VS Code Java world. Here is a guideline to help you get started to write Java code in Visual Studio Code.
|
||||
|
||||
## Folder Structure
|
||||
|
||||
The workspace contains two folders by default, where:
|
||||
|
||||
- `src`: the folder to maintain sources
|
||||
- `lib`: the folder to maintain dependencies
|
||||
|
||||
Meanwhile, the compiled output files will be generated in the `bin` folder by default.
|
||||
|
||||
> If you want to customize the folder structure, open `.vscode/settings.json` and update the related settings there.
|
||||
|
||||
## Dependency Management
|
||||
|
||||
The `JAVA PROJECTS` view allows you to manage your dependencies. More details can be found [here](https://github.com/microsoft/vscode-java-dependency#manage-dependencies).
|
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/App.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/App.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Co2Data.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Co2Data.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Date.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Date.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/FillTable.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/FillTable.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Lesson.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Lesson.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Points.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Points.class
Normal file
Binary file not shown.
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Teacher.class
Normal file
BIN
Code/Steiner/CO2-Daten-Projekt-V2/bin/Teacher.class
Normal file
Binary file not shown.
112
Code/Steiner/CO2-Daten-Projekt-V2/src/App.java
Normal file
112
Code/Steiner/CO2-Daten-Projekt-V2/src/App.java
Normal file
|
@ -0,0 +1,112 @@
|
|||
import java.util.Arrays;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class App {
|
||||
private static final Scanner scanner = new Scanner(System.in);
|
||||
|
||||
private static final int ROOM_COUNT = 3;
|
||||
private static final int DAY_COUNT = 5;
|
||||
private static final int LESSON_COUNT = 12;
|
||||
|
||||
public static final Lesson[][][] timeTable = new Lesson[ROOM_COUNT][DAY_COUNT][LESSON_COUNT];
|
||||
private static final Teacher[] teachers = new Teacher[Teacher.nameMap.size()];
|
||||
|
||||
private static void initializeTeachers() {
|
||||
int index = 0;
|
||||
for (String initial : Teacher.nameMap.keySet()) {
|
||||
teachers[index++] = new Teacher(initial);
|
||||
}
|
||||
}
|
||||
|
||||
private static void fillInTimeTable() {
|
||||
FillTable.fill37TimeTable();
|
||||
FillTable.fill38TimeTable();
|
||||
FillTable.fill39TimeTable();
|
||||
}
|
||||
|
||||
private static void calculatePoints() {
|
||||
// Point calculation logic
|
||||
}
|
||||
|
||||
private static void sortTeachers() {
|
||||
Arrays.sort(teachers,
|
||||
(a, b) -> Integer.compare(b.getPoints().getTotalPoints(), a.getPoints().getTotalPoints()));
|
||||
}
|
||||
|
||||
private static void printTeachers() {
|
||||
int rank = 1;
|
||||
int previousPoints = -1;
|
||||
int currentRank = 1;
|
||||
|
||||
for (int i = 0; i < teachers.length; i++) {
|
||||
Teacher teacher = teachers[i];
|
||||
int teacherPoints = teacher.getPoints().getTotalPoints();
|
||||
|
||||
if (teacherPoints == previousPoints) {
|
||||
System.out.println(currentRank + ". " + teacher.getName() + " " + teacherPoints);
|
||||
} else {
|
||||
if (i > 0) {
|
||||
rank += (i - (currentRank - 1));
|
||||
}
|
||||
currentRank = rank;
|
||||
System.out.println(rank + ". " + teacher.getName() + " " + teacherPoints);
|
||||
}
|
||||
|
||||
previousPoints = teacherPoints;
|
||||
}
|
||||
}
|
||||
|
||||
private static int getUserInput(String textOutput) {
|
||||
System.out.println(textOutput);
|
||||
while (true) {
|
||||
if (scanner.hasNextInt()) {
|
||||
return scanner.nextInt();
|
||||
} else {
|
||||
System.out.println("Invalid input. Please enter a number.");
|
||||
scanner.next();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void printExplanation() {
|
||||
System.out.println("Point calculation explanation:");
|
||||
System.out.println("1. Up to 5 points for keeping the window open during a small break.");
|
||||
System.out.println("2. Up to 10 points for long breaks, depending on window usage.");
|
||||
System.out.println("3. 5 bonus points for teacher switches in the room.");
|
||||
}
|
||||
|
||||
private static void printShutDown() {
|
||||
System.out.println("Shutting down...");
|
||||
for (int i = 3; i > 0; i--) {
|
||||
System.out.print(i + "...");
|
||||
try {
|
||||
Thread.sleep(1000);
|
||||
} catch (InterruptedException e) {
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
System.out.println("Goodbye!");
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
fillInTimeTable();
|
||||
initializeTeachers();
|
||||
calculatePoints();
|
||||
sortTeachers();
|
||||
printTeachers();
|
||||
|
||||
int userInput = getUserInput(
|
||||
"Do you want to see how the points were calculated? (Yes 1, No 0; anything is an error)");
|
||||
|
||||
if (userInput == 1) {
|
||||
printExplanation();
|
||||
printShutDown();
|
||||
} else if (userInput == 0) {
|
||||
printShutDown();
|
||||
} else {
|
||||
System.out.println("Invalid input. Please enter 1 for Yes or 0 for No.");
|
||||
}
|
||||
|
||||
scanner.close();
|
||||
}
|
||||
}
|
98
Code/Steiner/CO2-Daten-Projekt-V2/src/Co2Data.java
Normal file
98
Code/Steiner/CO2-Daten-Projekt-V2/src/Co2Data.java
Normal file
|
@ -0,0 +1,98 @@
|
|||
import java.io.BufferedReader;
|
||||
import java.io.InputStreamReader;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Co2Data {
|
||||
private Date date;
|
||||
private int co2Level;
|
||||
|
||||
public Co2Data(Date date, int co2Level) {
|
||||
this.date = date;
|
||||
this.co2Level = co2Level;
|
||||
}
|
||||
|
||||
public Date getDate() {
|
||||
return date;
|
||||
}
|
||||
|
||||
public void setDate(Date date) {
|
||||
this.date = date;
|
||||
}
|
||||
|
||||
public int getCo2Level() {
|
||||
return co2Level;
|
||||
}
|
||||
|
||||
public void setCo2Level(int co2Level) {
|
||||
this.co2Level = co2Level;
|
||||
}
|
||||
|
||||
public static List<Co2Data> getData(String csvURL, int classRoomNumber) {
|
||||
List<Co2Data> dataList = new ArrayList<>();
|
||||
|
||||
try {
|
||||
URL url = new URL(csvURL);
|
||||
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
||||
conn.setRequestMethod("GET");
|
||||
conn.setRequestProperty("Accept", "application/csv");
|
||||
if (conn.getResponseCode() != 200) {
|
||||
throw new RuntimeException("Failed : HTTP Error code : "
|
||||
+ conn.getResponseCode());
|
||||
}
|
||||
|
||||
InputStreamReader in = new InputStreamReader(conn.getInputStream());
|
||||
BufferedReader br = new BufferedReader(in);
|
||||
String output;
|
||||
|
||||
// Skip header line
|
||||
br.readLine();
|
||||
|
||||
while ((output = br.readLine()) != null) {
|
||||
Co2Data data = parseData(output, classRoomNumber);
|
||||
if (data != null) {
|
||||
dataList.add(data);
|
||||
}
|
||||
}
|
||||
conn.disconnect();
|
||||
|
||||
} catch (Exception e) {
|
||||
System.out.println("Exception in NetClientGet: " + e);
|
||||
}
|
||||
|
||||
return dataList; // Return the list of Co2Data objects
|
||||
}
|
||||
|
||||
private static Co2Data parseData(String csvLine, int classRoomNumber) {
|
||||
String[] fields = csvLine.split(",");
|
||||
if (fields.length < 5) {
|
||||
return null; // Handle error or log it if needed
|
||||
}
|
||||
|
||||
try {
|
||||
// Extract date and time from created_at field
|
||||
String createdAt = fields[0];
|
||||
String[] dateTime = createdAt.split(" ");
|
||||
String[] dateParts = dateTime[0].split("-");
|
||||
String[] timeParts = dateTime[1].split(":");
|
||||
|
||||
// Create a Date object
|
||||
int year = Integer.parseInt(dateParts[0]);
|
||||
int month = Integer.parseInt(dateParts[1]);
|
||||
int day = Integer.parseInt(dateParts[2]);
|
||||
int hour = Integer.parseInt(timeParts[0]);
|
||||
int minute = Integer.parseInt(timeParts[1]);
|
||||
Date date = new Date(day, month, year, hour, minute);
|
||||
|
||||
// Parse CO2 level (field1)
|
||||
int co2Level = Integer.parseInt(fields[2]);
|
||||
|
||||
return new Co2Data(date, co2Level);
|
||||
} catch (Exception e) {
|
||||
System.out.println("Error parsing data: " + e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
41
Code/Steiner/CO2-Daten-Projekt-V2/src/Date.java
Normal file
41
Code/Steiner/CO2-Daten-Projekt-V2/src/Date.java
Normal file
|
@ -0,0 +1,41 @@
|
|||
public class Date {
|
||||
private int day;
|
||||
private int month;
|
||||
private int year;
|
||||
private int hour;
|
||||
private int minute;
|
||||
|
||||
public Date(int day, int month, int year, int hour, int minute) {
|
||||
this.day = day;
|
||||
this.month = month;
|
||||
this.year = year;
|
||||
this.hour = hour;
|
||||
this.minute = minute;
|
||||
}
|
||||
|
||||
// Getters
|
||||
public int getDay() {
|
||||
return day;
|
||||
}
|
||||
|
||||
public int getMonth() {
|
||||
return month;
|
||||
}
|
||||
|
||||
public int getYear() {
|
||||
return year;
|
||||
}
|
||||
|
||||
public int getHour() {
|
||||
return hour;
|
||||
}
|
||||
|
||||
public int getMinute() {
|
||||
return minute;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format("%04d-%02d-%02d %02d:%02d", year, month, day, hour, minute);
|
||||
}
|
||||
}
|
81
Code/Steiner/CO2-Daten-Projekt-V2/src/FillTable.java
Normal file
81
Code/Steiner/CO2-Daten-Projekt-V2/src/FillTable.java
Normal file
|
@ -0,0 +1,81 @@
|
|||
|
||||
public class FillTable {
|
||||
private static final String[] START_TIMES = {
|
||||
"7:45", "8:35", "9:40", "10:30", "11:20", "12:10", "12:50",
|
||||
"13:35", "14:25", "15:15", "16:15", "17:05"
|
||||
};
|
||||
|
||||
private static final String[] END_TIMES = {
|
||||
"8:30", "9:20", "10:25", "11:15", "12:05", "12:50", "13:30",
|
||||
"14:20", "15:10", "16:10", "17:00", "17:50"
|
||||
};
|
||||
|
||||
private static void fillTable(String[] teacherShortNames, String day, String[] startTime, String[] endTime,
|
||||
int roomIndex) {
|
||||
int dayIndex = getDayIndex(day);
|
||||
for (int i = 0; i < teacherShortNames.length && i < startTime.length && i < endTime.length; i++) {
|
||||
Teacher teacher = new Teacher(teacherShortNames[i]); // Initialize Teacher with shortform
|
||||
App.timeTable[roomIndex][dayIndex][i] = new Lesson(roomIndex, teacher.getName(), startTime[i], endTime[i],
|
||||
day);
|
||||
}
|
||||
}
|
||||
|
||||
private static int getDayIndex(String day) {
|
||||
switch (day) {
|
||||
case "Monday":
|
||||
return 0;
|
||||
case "Tuesday":
|
||||
return 1;
|
||||
case "Wednesday":
|
||||
return 2;
|
||||
case "Thursday":
|
||||
return 3;
|
||||
case "Friday":
|
||||
return 4;
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
static void fill37TimeTable() {
|
||||
int roomIndex = 0;
|
||||
fillTable(new String[] { "Hm", "Hm", "Hi", "Hm", "Hm", "Lunch", "Bd", "Gi", "Gi", "Ts", "Ts", "" },
|
||||
"Monday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Ts", "Ts", "Ts", "Ts", "Le", "Lunch", "Lunch", "Fh", "Fh", "Fh", "Fh", "" },
|
||||
"Tuesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Lu", "Lu", "Lu", "Lu", "Cg", "Cg", "Lunch", "Se", "Se", "Se", "Se", "" },
|
||||
"Wednesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Gi", "Gi", "Ba", "Ba", "Ba", "Lunch", "Bd", "Du", "Lz", "Lz" },
|
||||
"Thursday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Kp", "KP", "Or", "Vt", "Vt", "Lunch", "Lunch", "Du", "Du", "Du", "", "" },
|
||||
"Friday", START_TIMES, END_TIMES, roomIndex);
|
||||
}
|
||||
|
||||
static void fill38TimeTable() {
|
||||
int roomIndex = 1;
|
||||
fillTable(new String[] { "Bz", "Bz", "Bz", "Bz", "Bz", "Lunch", "Lunch", "Hn", "Hn", "Bu", "Hn", "Hn" },
|
||||
"Monday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Kg", "Kg", "Eh", "Re", "Re", "Lunch", "Lunch", "Bt", "Kh", "Kh", "", "" },
|
||||
"Tuesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Cg", "Cg", "Cg", "Cg", "Es", "Lunch", "Lunch", "Cg", "Cg", "", "", "" },
|
||||
"Wednesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Do", "Do", "Gr", "Gr", "Or", "Lunch", "Lunch", "Bu", "Bu", "Zu", "", "" },
|
||||
"Thursday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "", "Hu", "Ge", "Eh", "Eh", "Bu", "Lunch", "Eh", "Eh", "", "", "" },
|
||||
"Friday", START_TIMES, END_TIMES, roomIndex);
|
||||
}
|
||||
|
||||
static void fill39TimeTable() {
|
||||
int roomIndex = 2;
|
||||
fillTable(new String[] { "Bd", "Bd", "Bd", "Bd", "Bd", "Lunch", "Lunch", "Lu", "Lu", "Lu", "Lu", "" },
|
||||
"Monday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Do", "Do", "Zu", "Zu", "Zu", "Lunch", "Lunch", "Se", "Se", "Se", "Se", "" },
|
||||
"Tuesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Cg", "Cg", "Cg", "Cg", "Bu", "Lunch", "Lunch", "Gi", "Gi", "Gi", "Gi", "" },
|
||||
"Wednesday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Bd", "Bd", "Bd", "Bd", "Or", "Lunch", "Lunch", "Le", "Le", "Le", "", "" },
|
||||
"Thursday", START_TIMES, END_TIMES, roomIndex);
|
||||
fillTable(new String[] { "Gi", "Gi", "Gr", "Gr", "Gi", "Lunch", "Lunch", "Hi", "Hi", "Hi", "", "" },
|
||||
"Friday", START_TIMES, END_TIMES, roomIndex);
|
||||
}
|
||||
}
|
37
Code/Steiner/CO2-Daten-Projekt-V2/src/Lesson.java
Normal file
37
Code/Steiner/CO2-Daten-Projekt-V2/src/Lesson.java
Normal file
|
@ -0,0 +1,37 @@
|
|||
public class Lesson {
|
||||
private int roomNumberNumber;
|
||||
private String teacherInitials;
|
||||
private String startTime;
|
||||
private String endTime;
|
||||
private String weekweekDay;
|
||||
|
||||
// Constructor to initialize all fields
|
||||
public Lesson(int roomNumber, String teacherInitials, String startTime, String endTime, String weekweekDay) {
|
||||
this.roomNumberNumber = roomNumber;
|
||||
this.teacherInitials = teacherInitials;
|
||||
this.startTime = startTime;
|
||||
this.endTime = endTime;
|
||||
this.weekweekDay = weekweekDay;
|
||||
}
|
||||
|
||||
// Getters
|
||||
public int getroomNumber() {
|
||||
return roomNumberNumber;
|
||||
}
|
||||
|
||||
public String getteacherInitials() {
|
||||
return teacherInitials;
|
||||
}
|
||||
|
||||
public String getStartTime() {
|
||||
return startTime;
|
||||
}
|
||||
|
||||
public String getEndTime() {
|
||||
return endTime;
|
||||
}
|
||||
|
||||
public String getweekDay() {
|
||||
return weekweekDay;
|
||||
}
|
||||
}
|
35
Code/Steiner/CO2-Daten-Projekt-V2/src/Points.java
Normal file
35
Code/Steiner/CO2-Daten-Projekt-V2/src/Points.java
Normal file
|
@ -0,0 +1,35 @@
|
|||
// Points class for managing point categories
|
||||
public class Points {
|
||||
private int fiveMinuteBreak;
|
||||
private int longerBreak;
|
||||
private int bonusPoints;
|
||||
|
||||
public int getFiveMinuteBreak() {
|
||||
return fiveMinuteBreak;
|
||||
}
|
||||
|
||||
public void setFiveMinuteBreak(int fiveMinuteBreak) {
|
||||
this.fiveMinuteBreak = fiveMinuteBreak;
|
||||
}
|
||||
|
||||
public int getLongerBreak() {
|
||||
return longerBreak;
|
||||
}
|
||||
|
||||
public void setLongerBreak(int longerBreak) {
|
||||
this.longerBreak = longerBreak;
|
||||
}
|
||||
|
||||
public int getBonusPoints() {
|
||||
return bonusPoints;
|
||||
}
|
||||
|
||||
public void setBonusPoints(int bonusPoints) {
|
||||
this.bonusPoints = bonusPoints;
|
||||
}
|
||||
|
||||
// Method to calculate total points
|
||||
public int getTotalPoints() {
|
||||
return fiveMinuteBreak + longerBreak + bonusPoints;
|
||||
}
|
||||
}
|
44
Code/Steiner/CO2-Daten-Projekt-V2/src/Teacher.java
Normal file
44
Code/Steiner/CO2-Daten-Projekt-V2/src/Teacher.java
Normal file
|
@ -0,0 +1,44 @@
|
|||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class Teacher {
|
||||
private String name;
|
||||
private Points points;
|
||||
|
||||
public static final Map<String, String> nameMap = new HashMap<>();
|
||||
static {
|
||||
nameMap.put("Hm", "Hummel");
|
||||
nameMap.put("Bd", "Bender");
|
||||
nameMap.put("Bu", "Burger");
|
||||
nameMap.put("Cg", "Chung");
|
||||
nameMap.put("Do", "Doe");
|
||||
nameMap.put("Eh", "Ehrlich");
|
||||
nameMap.put("Fh", "Fischer");
|
||||
nameMap.put("Gi", "Giordano");
|
||||
nameMap.put("Gr", "Graham");
|
||||
nameMap.put("Hi", "Higgins");
|
||||
nameMap.put("Kg", "Kang");
|
||||
nameMap.put("Kh", "Khan");
|
||||
nameMap.put("Lz", "Lozano");
|
||||
nameMap.put("Lu", "Lund");
|
||||
nameMap.put("Or", "Ortega");
|
||||
nameMap.put("Re", "Reyes");
|
||||
nameMap.put("Se", "Seng");
|
||||
nameMap.put("Ts", "Tanaka");
|
||||
nameMap.put("Vt", "Vetter");
|
||||
nameMap.put("Zu", "Zuniga");
|
||||
}
|
||||
|
||||
public Teacher(String name) {
|
||||
this.name = nameMap.getOrDefault(name, "Unknown");
|
||||
this.points = new Points();
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public Points getPoints() {
|
||||
return points;
|
||||
}
|
||||
}
|
7
Code/Steiner/arrayList/.vscode/settings.json
vendored
Normal file
7
Code/Steiner/arrayList/.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"java.project.sourcePaths": ["src"],
|
||||
"java.project.outputPath": "bin",
|
||||
"java.project.referencedLibraries": [
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
18
Code/Steiner/arrayList/README.md
Normal file
18
Code/Steiner/arrayList/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
## Getting Started
|
||||
|
||||
Welcome to the VS Code Java world. Here is a guideline to help you get started to write Java code in Visual Studio Code.
|
||||
|
||||
## Folder Structure
|
||||
|
||||
The workspace contains two folders by default, where:
|
||||
|
||||
- `src`: the folder to maintain sources
|
||||
- `lib`: the folder to maintain dependencies
|
||||
|
||||
Meanwhile, the compiled output files will be generated in the `bin` folder by default.
|
||||
|
||||
> If you want to customize the folder structure, open `.vscode/settings.json` and update the related settings there.
|
||||
|
||||
## Dependency Management
|
||||
|
||||
The `JAVA PROJECTS` view allows you to manage your dependencies. More details can be found [here](https://github.com/microsoft/vscode-java-dependency#manage-dependencies).
|
BIN
Code/Steiner/arrayList/bin/App.class
Normal file
BIN
Code/Steiner/arrayList/bin/App.class
Normal file
Binary file not shown.
BIN
Code/Steiner/arrayList/src/App.class
Normal file
BIN
Code/Steiner/arrayList/src/App.class
Normal file
Binary file not shown.
71
Code/Steiner/arrayList/src/App.java
Normal file
71
Code/Steiner/arrayList/src/App.java
Normal file
|
@ -0,0 +1,71 @@
|
|||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
||||
public class App {
|
||||
public static void main(String[] args) {
|
||||
int[] array = { 0, 1, 2, 3, 4, 5, 4, -3, -2, 0 };
|
||||
ArrayList<Integer> list = new ArrayList<>();
|
||||
|
||||
initializeListFromArray(array, list);
|
||||
printList("ArrayList vor Modifikationen:", list);
|
||||
|
||||
addValues(list, 10, -5);
|
||||
removeElementAt(list, 1);
|
||||
printList("ArrayList nach Modifikationen:", list);
|
||||
|
||||
sortList(list);
|
||||
printList("ArrayList nach Sortierung:", list);
|
||||
|
||||
shuffleList(list);
|
||||
printList("ArrayList nach dem Mischen:", list);
|
||||
|
||||
printMinMaxValues(list);
|
||||
}
|
||||
|
||||
// Initialisiert die ArrayList mit Werten aus dem Array
|
||||
private static void initializeListFromArray(int[] array, ArrayList<Integer> list) {
|
||||
for (int num : array) {
|
||||
list.add(num);
|
||||
}
|
||||
}
|
||||
|
||||
// Fügt der ArrayList zwei Werte hinzu
|
||||
private static void addValues(ArrayList<Integer> list, int value1, int value2) {
|
||||
list.add(value1);
|
||||
list.add(value2);
|
||||
}
|
||||
|
||||
// Entfernt das Element an einer bestimmten Position
|
||||
private static void removeElementAt(ArrayList<Integer> list, int index) {
|
||||
if (index >= 0 && index < list.size()) {
|
||||
list.remove(index);
|
||||
}
|
||||
}
|
||||
|
||||
// Gibt den Inhalt der ArrayList aus
|
||||
private static void printList(String message, ArrayList<Integer> list) {
|
||||
System.out.println(message);
|
||||
for (int num : list) {
|
||||
System.out.print(num + " ");
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
// Sortiert die ArrayList
|
||||
private static void sortList(ArrayList<Integer> list) {
|
||||
Collections.sort(list);
|
||||
}
|
||||
|
||||
// Mischt die ArrayList
|
||||
private static void shuffleList(ArrayList<Integer> list) {
|
||||
Collections.shuffle(list);
|
||||
}
|
||||
|
||||
// Gibt den maximalen und minimalen Wert der ArrayList aus
|
||||
private static void printMinMaxValues(ArrayList<Integer> list) {
|
||||
int max = Collections.max(list);
|
||||
int min = Collections.min(list);
|
||||
System.out.println("Maximaler Wert: " + max);
|
||||
System.out.println("Minimaler Wert: " + min);
|
||||
}
|
||||
}
|
7
Code/Steiner/repetition-classes-oop/.vscode/settings.json
vendored
Normal file
7
Code/Steiner/repetition-classes-oop/.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"java.project.sourcePaths": ["src"],
|
||||
"java.project.outputPath": "bin",
|
||||
"java.project.referencedLibraries": [
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
18
Code/Steiner/repetition-classes-oop/README.md
Normal file
18
Code/Steiner/repetition-classes-oop/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
## Getting Started
|
||||
|
||||
Welcome to the VS Code Java world. Here is a guideline to help you get started to write Java code in Visual Studio Code.
|
||||
|
||||
## Folder Structure
|
||||
|
||||
The workspace contains two folders by default, where:
|
||||
|
||||
- `src`: the folder to maintain sources
|
||||
- `lib`: the folder to maintain dependencies
|
||||
|
||||
Meanwhile, the compiled output files will be generated in the `bin` folder by default.
|
||||
|
||||
> If you want to customize the folder structure, open `.vscode/settings.json` and update the related settings there.
|
||||
|
||||
## Dependency Management
|
||||
|
||||
The `JAVA PROJECTS` view allows you to manage your dependencies. More details can be found [here](https://github.com/microsoft/vscode-java-dependency#manage-dependencies).
|
BIN
Code/Steiner/repetition-classes-oop/bin/App.class
Normal file
BIN
Code/Steiner/repetition-classes-oop/bin/App.class
Normal file
Binary file not shown.
BIN
Code/Steiner/repetition-classes-oop/bin/Teacher.class
Normal file
BIN
Code/Steiner/repetition-classes-oop/bin/Teacher.class
Normal file
Binary file not shown.
BIN
Code/Steiner/repetition-classes-oop/src/App.class
Normal file
BIN
Code/Steiner/repetition-classes-oop/src/App.class
Normal file
Binary file not shown.
28
Code/Steiner/repetition-classes-oop/src/App.java
Normal file
28
Code/Steiner/repetition-classes-oop/src/App.java
Normal file
|
@ -0,0 +1,28 @@
|
|||
|
||||
// Main application class where we create a Teacher object and display some
|
||||
// info.
|
||||
public class App {
|
||||
public static void main(String[] args) throws Exception {
|
||||
// Sample data for creating a Teacher object.
|
||||
String firstname = "Karl";
|
||||
String lastname = "Marx";
|
||||
int compensation = 1000000;
|
||||
String[] subjects = { "Economics", "Math", "German" };
|
||||
|
||||
// Creating a Teacher object using the data above.
|
||||
Teacher teacher = new Teacher(firstname, lastname, compensation, subjects);
|
||||
|
||||
// Printing the teacher's full name.
|
||||
System.out.println("Teacher: " + teacher.getFirstname() + " " + teacher.getLastname());
|
||||
|
||||
// Printing the teacher's compensation.
|
||||
System.out.println("Compensation: " + teacher.getCompensation());
|
||||
|
||||
// Printing the subjects the teacher teaches.
|
||||
System.out.print("Subjects: ");
|
||||
// Loop through each subject in the array and print it.
|
||||
for (String subject : teacher.getSubjects()) {
|
||||
System.out.print(subject + " ");
|
||||
}
|
||||
}
|
||||
}
|
BIN
Code/Steiner/repetition-classes-oop/src/Teacher.class
Normal file
BIN
Code/Steiner/repetition-classes-oop/src/Teacher.class
Normal file
Binary file not shown.
61
Code/Steiner/repetition-classes-oop/src/Teacher.java
Normal file
61
Code/Steiner/repetition-classes-oop/src/Teacher.java
Normal file
|
@ -0,0 +1,61 @@
|
|||
// The Teacher class represents a teacher with a first name, last name, compensation, and subjects they teach.
|
||||
public class Teacher {
|
||||
// Private fields to store the teacher's first name, last name, compensation,
|
||||
// and subjects.
|
||||
private String firstname;
|
||||
private String lastname;
|
||||
private int compensation;
|
||||
private String[] subjects;
|
||||
|
||||
// Constructor for initializing a Teacher object with provided details.
|
||||
public Teacher(String firstname, String lastname, int compensation, String[] subjects) {
|
||||
// Assigning the provided first name to the teacher's firstname field.
|
||||
this.firstname = firstname;
|
||||
// Assigning the provided last name to the teacher's lastname field.
|
||||
this.lastname = lastname;
|
||||
// Assigning the provided compensation to the teacher's compensation field.
|
||||
this.compensation = compensation;
|
||||
// Assigning the provided array of subjects to the teacher's subjects field.
|
||||
this.subjects = subjects;
|
||||
}
|
||||
|
||||
// Getter method for getting the teacher's first name.
|
||||
public String getFirstname() {
|
||||
return firstname;
|
||||
}
|
||||
|
||||
// Setter method for setting a new first name for the teacher.
|
||||
public void setFirstname(String firstname) {
|
||||
this.firstname = firstname;
|
||||
}
|
||||
|
||||
// Getter method for getting the teacher's last name.
|
||||
public String getLastname() {
|
||||
return lastname;
|
||||
}
|
||||
|
||||
// Setter method for setting a new last name for the teacher.
|
||||
public void setLastname(String lastname) {
|
||||
this.lastname = lastname;
|
||||
}
|
||||
|
||||
// Getter method for getting the teacher's compensation.
|
||||
public int getCompensation() {
|
||||
return compensation;
|
||||
}
|
||||
|
||||
// Setter method for setting a new compensation for the teacher.
|
||||
public void setCompensation(int compensation) {
|
||||
this.compensation = compensation;
|
||||
}
|
||||
|
||||
// Getter method for getting the array of subjects the teacher teaches.
|
||||
public String[] getSubjects() {
|
||||
return subjects;
|
||||
}
|
||||
|
||||
// Setter method for setting a new array of subjects for the teacher.
|
||||
public void setSubjects(String[] subjects) {
|
||||
this.subjects = subjects;
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue