Compare commits

..

29 Commits

Author SHA1 Message Date
Oleksii Aleshchenko
1583e33ab3 update lab4 2023-05-25 16:04:54 +03:00
Oleksii Aleshchenko
277f8f82f6 update lab4 2023-05-25 15:06:01 +03:00
Oleksii Aleshchenko
eb2ffae473 update lab4 2023-05-18 16:03:31 +03:00
Oleksii Aleshchenko
f05125e298 Merge pull request #3 from Dymik739/commit-fix
Lab2: remove duplicate string to fix calculations
2023-05-11 16:12:29 +03:00
Oleksii Aleshchenko
ce73ebf1f5 update lab4 2023-05-11 16:10:42 +03:00
Oleksii Aleshchenko
31c3b96018 update Variant0.java 2023-05-11 15:46:43 +03:00
4eecffe040 Merge branch 'master' into commit-fix 2023-05-04 18:06:15 +03:00
Oleksii Aleshchenko
f7b11d9444 add Variant0.java for lab3 2023-05-04 15:59:21 +03:00
Oleksii Aleshchenko
bfdfd65153 add text for regex search 2023-05-04 15:29:07 +03:00
ae042010a6 remove duplicate string to fix calculations 2023-05-02 18:48:21 +03:00
Oleksii Aleshchenko
9b871b6a42 Merge remote-tracking branch 'origin/master' 2023-04-27 16:08:25 +03:00
Oleksii Aleshchenko
e41e64369b add test polymorphism example 2023-04-27 16:08:09 +03:00
Oleksii Aleshchenko
484bef389b upd lab3 2023-04-27 15:57:01 +03:00
455c991edb Випадково закомітив не туди) Все повернув 2023-04-17 21:00:20 +03:00
90d0f042a1 test 2023-04-17 20:59:13 +03:00
Oleksii Aleshchenko
1690d0f9e4 upd lab3 // add todo for lab4 2023-04-13 16:07:52 +03:00
Oleksii Aleshchenko
4531049ff2 add lab3 2023-04-06 16:07:04 +03:00
Oleksii Aleshchenko
07b17ca3cc upd lab2 (remove todo) 2023-04-06 15:34:29 +03:00
Oleksii Aleshchenko
a61c59bf48 upd lab2 2023-04-06 15:34:03 +03:00
Oleksii Aleshchenko
9ece98fece upd lab2 2023-04-06 15:04:51 +03:00
Oleksii Aleshchenko
81ac59840f Revert "Done lab 1-3"
This reverts commit 29e63163a4.
2023-04-04 22:33:00 +03:00
Oleksii Aleshchenko
1e6825d7d4 Revert "Delete lab1 directory"
This reverts commit 1af299f8f7.
2023-04-04 22:32:47 +03:00
Oleksii Aleshchenko
4087daef02 Revert "Delete lab2 directory"
This reverts commit 3bbb7c8e54.
2023-04-04 22:32:36 +03:00
Oleksii Aleshchenko
31ba116ad8 Revert "Delete lab3 directory"
This reverts commit 6fc3cc244e.
2023-04-04 22:32:00 +03:00
xivihwa
6fc3cc244e Delete lab3 directory 2023-04-04 17:44:45 +03:00
xivihwa
3bbb7c8e54 Delete lab2 directory 2023-04-04 17:44:38 +03:00
xivihwa
1af299f8f7 Delete lab1 directory 2023-04-04 17:44:30 +03:00
xivihwa
4924bbe62f Merge pull request #2 from ASDjonok/ІО-25/01-Антоненко-Віолетта-Станіславівна
Done lab 1-3
2023-04-04 17:41:26 +03:00
xivihwa
29e63163a4 Done lab 1-3 2023-04-04 17:40:44 +03:00
19 changed files with 425 additions and 335 deletions

View File

@@ -1,68 +0,0 @@
import java.util.Scanner;
import java.util.Arrays;
import java.util.Comparator;
public class Lab4 {
public static void main(String[] args) {
Students student1 = new Students("Максим", 22, "ФІОТ", 91, 8);
Students students2 = new Students("Ольга", 19, "ФЕА", 34, 4);
Students students3 = new Students("Владислав", 18, "ФММ", 55, 10);
Students students4 = new Students("Марія", 20, "ХТФ", 11, 6);
Students students5 = new Students("Петро", 23, "ФМФ", 78, 2);
Students[] students = {student1, students2, students3, students4, students5};
System.out.println("Список студентів: ");
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", "Ім'я", "Вік", "Факультет", "Номер групи", "Рівень знань(від 0 до 10)"));
for (Students student : students) {
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", student.getName(), student.getAge(), student.getNameOfFaculty(), student.getNumberOfGroup(), student.getLvlOfKnowledge()));
}
Scanner scan = new Scanner(System.in);
System.out.println("Введіть за чим сортувати: ");
System.out.println("1 - Зростання \n2 - Спадання:");
int incOrDec = scan.nextInt();
System.out.println("Введіть за чим хочете сортувати: ");
System.out.println("1 - Ім'я \n2 - Вік \n3 - Факультет\n4 - Група\n5 - Рівень знань: ");
int num = scan.nextInt();
if (incOrDec == 1) {
switch (num) {
case 1:
Arrays.sort(students, Comparator.comparing(Students::getName));
break;
case 2:
Arrays.sort(students, Comparator.comparingInt(Students::getAge));
break;
case 3:
Arrays.sort(students, Comparator.comparing(Students::getNameOfFaculty));
break;
case 4:
Arrays.sort(students, Comparator.comparingInt(Students::getNumberOfGroup));
break;
case 5:
Arrays.sort(students, Comparator.comparingInt(Students::getLvlOfKnowledge));
break;
}
} else {
switch (num) {
case 1:
Arrays.sort(students, Comparator.comparing(Students::getName).reversed());
break;
case 2:
Arrays.sort(students, Comparator.comparingInt(Students::getAge).reversed());
break;
case 3:
Arrays.sort(students, Comparator.comparing(Students::getNameOfFaculty).reversed());
break;
case 4:
Arrays.sort(students, Comparator.comparingInt(Students::getNumberOfGroup).reversed());
break;
case 5:
Arrays.sort(students, Comparator.comparingInt(Students::getLvlOfKnowledge).reversed());
break;
}
}
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", "Ім'я", "Вік", "Факультет", "Номер групи", "Рівень знань(від 0 до 10)"));
for (Students student : students) {
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", student.getName(), student.getAge(), student.getNameOfFaculty(), student.getNumberOfGroup(), student.getLvlOfKnowledge()));
}
}
}

107
Lab5.java
View File

@@ -1,107 +0,0 @@
public class Lab5 {
public static void main(String[] args) {
StringBuilder txt = new StringBuilder("соціальна мережа, яка є мережею мікроблогів. Дає змогу користувачам надсилати короткі текстові повідомлення (до 2802 символів, до 2017 року — до 140 символів), використовуючи SMS,");
System.out.println("Початковий текст:");
System.out.println(txt);
Text text = new Text(txt);
StringBuilder result = text.splitText();
System.out.println("Змінений текст:");
System.out.println(result);
}
}
class Text {
private final StringBuilder textString;
public Text(StringBuilder textString){
this.textString = textString;
}
public StringBuilder splitText() {
StringBuilder result = new StringBuilder();
String[] sentenceStrings = textString.toString().split("(?<=[?.!])\\s?");
for (String s : sentenceStrings) {
StringBuilder sb = new StringBuilder(s);
Sentence sentence = new Sentence(sb);
result.append(sentence.splitSentence());
}
return result;
}
}
class Sentence {
private final StringBuilder sentence;
public Sentence(StringBuilder sentence) {
this.sentence = sentence;
}
public StringBuilder splitSentence() {
StringBuilder returnSentence = new StringBuilder();
String text = sentence.toString();
String[] words = text.split(" ");
for (String w : words) {
StringBuilder wb = new StringBuilder(w);
Word word = new Word(wb);
returnSentence.append(word.splitWord()).append(" ");
}
return returnSentence;
}
}
class Word {
private final StringBuilder word;
public Word(StringBuilder word) {
this.word = word;
}
public StringBuilder splitWord() {
StringBuilder returnWord = new StringBuilder();
String wordstring = word.toString();
String[] letters = wordstring.split("");
String firstLetter = wordstring.substring(0, 1);
returnWord.append(firstLetter);
for (String l: letters){
StringBuilder lb = new StringBuilder(l);
Letter letter = new Letter(lb);
if (firstLetter.equals(letter.getLetter().toString())){
returnWord.append("");
}else{
if(l.equals("!") || l.equals("?") || l.equals(".") || l.equals(",") || l.equals(":") || l.equals(";")){
Punctuation punctuation = new Punctuation(lb);
returnWord.append(punctuation.getPunctuation());
}else{
returnWord.append(letter.getLetter());
}
}
}
return returnWord;
}
}
class Letter {
private final StringBuilder letter;
public Letter(StringBuilder letter) {
this.letter = letter;
}
public StringBuilder getLetter() {
return letter;
}
}
class Punctuation {
private final StringBuilder punctuation;
public Punctuation(StringBuilder punctuation) {
this.punctuation = punctuation;
}
public StringBuilder getPunctuation() {
return punctuation;
}
}

View File

@@ -1,30 +0,0 @@
public class Students {
private String name;
private int age;
private String nameOfFaculty;
private int numberOfGroup;
private int lvlOfKnowledge;
public Students(String name, int age, String nameOfFaculty, int numberOfGroup, int lvlOfKnowledge) {
this.name = name;
this.age = age;
this.nameOfFaculty = nameOfFaculty;
this.numberOfGroup = numberOfGroup;
this.lvlOfKnowledge = lvlOfKnowledge;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getNameOfFaculty() {
return nameOfFaculty;
}
public int getNumberOfGroup() {
return numberOfGroup;
}
public int getLvlOfKnowledge() {
return lvlOfKnowledge;
}
}

View File

@@ -1,29 +0,0 @@
import java.util.Scanner;
public class lab1 {
public static void main(String[] args) {
float S = 0, i, j;
int C = 1;
Scanner scan = new Scanner(System.in);
System.out.println("Введіть значення a (a>1):");
int a = scan.nextInt();
System.out.println("Введіть значення b:");
int b = scan.nextInt();
System.out.println("Введіть значення n:");
int n = scan.nextInt();
System.out.println("Введіть значення m:");
int m = scan.nextInt();
for (i = a; i <= n; i++) {
if (i - C == 0) {
System.out.println("Ділення на 0");
return;
}
for (j = b; j <= m; j++) {
S += (i - j) / (i - C);
}
}
System.out.println(S);
}
}

View File

@@ -1,78 +0,0 @@
import java.util.Scanner;
import java.util.Random;
public class lab2 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Введіть кількість рядків матриці А:");
int mA = scan.nextInt();
System.out.println("Введіть кількість стовпців матриці А:");
int nA = scan.nextInt();
System.out.println("Введіть кількість рядків матриці B:");
int mB = scan.nextInt();
if (nA != mB) {
System.out.println("Щоб помножити матриці, потрібно, щоб кількість стовпців матриці А == кількості рядків матриці B");
return;
}
System.out.println("Введіть кількість стовпців матриці B:");
int nB = scan.nextInt();
System.out.println("Границя значень у матрицях:");
int upperbound = scan.nextShort();
int[][] matrixA = new int[mA][nA];
int[][] matrixB = new int[mB][nB];
int[][] matrixC = new int[mA][nB];
generationMatrixes(matrixA, matrixB, upperbound);
printMatrixC(matrixA, matrixB, matrixC);
AverageValueofElementsofEachColumn(matrixC);
}
private static void AverageValueofElementsofEachColumn(int[][] matrixC) {
System.out.println("Середнє значення елементів кожного стовпчика матриці:");
System.out.print("||");
for (int i = 0; i < matrixC.length; i++) {
double sum = 0;
for (int j = 0; j < matrixC[i].length; j++) {
sum += matrixC[j][i];
}
System.out.printf(" %.2f ||", (sum) / matrixC.length);
}
}
private static void printMatrixC(int[][] matrixA, int[][] matrixB, int[][] matrixC) {
for (int i = 0; i < matrixC.length; i++) {
for (int j = 0; j < matrixC[i].length; j++) {
for (int k = 0; k < matrixA[j].length; k++) {
matrixC[i][j] += matrixA[i][k] * matrixB[k][j];
}
}
}
System.out.println("Матриця С:");
for (int i = 0; i < matrixC.length; i++) {
for (int j = 0; j < matrixC[i].length; j++) {
System.out.printf("|%4d", matrixC[i][j]);
}
System.out.println("|");
}
}
private static void generationMatrixes(int[][] matrixA, int[][] matrixB, int upperbound) {
Random rand = new Random();
System.out.println("Матриця А:");
for (short i = 0; i < matrixA.length; i++) {
for (int j = 0; j < matrixA[i].length; j++) {
matrixA[i][j] = rand.nextInt(upperbound);
System.out.printf("|%4d", matrixA[i][j]);
}
System.out.println("|");
}
System.out.println("Матриця B:");
for (short i = 0; i < matrixB.length; i++) {
for (int j = 0; j < matrixB[i].length; j++) {
matrixB[i][j] = rand.nextInt(upperbound);
System.out.printf("|%4d", matrixB[i][j]);
}
System.out.println("|");
}
}
}

View File

@@ -1,21 +0,0 @@
public class lab3 {
public static void main(String[] args) {
StringBuilder txt = new StringBuilder("— соціальна мережа, яка є мережею мікроблогів, дає змогу користувачам надсилати короткі текстові повідомлення (до 2802 символів, до 2017 року — до 140 символів), використовуючи SMS,");
System.out.println(txt);
String[] words = txt.toString().split("\\s+");
StringBuilder result = new StringBuilder();
for (int i = 0; i < words.length; i++) {
StringBuilder word = new StringBuilder(words[i]);
StringBuilder firstLetter = new StringBuilder(word.substring(0, 1));
if (word.substring(1).contains(firstLetter.toString().toLowerCase()) || word.substring(1).contains(firstLetter)) {
String changedWord = firstLetter + word.substring(1).replaceAll(firstLetter.toString().toLowerCase(), "").replaceAll(firstLetter.toString(), "");
result.append(changedWord);
result.append(" ");
} else {
result.append(word);
result.append(" ");
}
}
System.out.println(result);
}
}

View File

@@ -3,7 +3,7 @@ public class Lab2 {
final int A = 2;
final int[][] MATRIX_B = {
{1, 202, 1, 1, 202, 3, 1, 202, 3,},
{1, 202, 1, 1, 202, 3, 1, 202, 3,},
{1, 202, 1, 1, 202, 3, 1, 202, 3, 4},
{1, 1, 3, 1, 202, 3, 1, 202, 3,},
// {4, 5, 6,},
};
@@ -12,7 +12,15 @@ public class Lab2 {
print(MATRIX_C);
System.out.println("Sum of smallest elements in every column: " + sumOfSmallestElementsInEveryColumn(MATRIX_C));
// System.out.println("Sum of smallest elements in every column: " + sumOfSmallestElementsInEveryColumn(MATRIX_C));
try {
System.out.println("Sum of smallest elements in every column: " + sumOfSmallestElementsInEveryColumnRenew(MATRIX_C));
System.out.println("???...");
} catch (Exception e) {
System.err.println(e.getMessage());
}
System.out.println("I'm still working...");
/*int[] array = {1, 2, 3};
int[] array2 = new int[3];
@@ -78,6 +86,35 @@ public class Lab2 {
return sum;
}
private static int sumOfSmallestElementsInEveryColumnRenew(final int[][] MATRIX_C) throws Exception {
// todo check different length of rows
for (int i = 1; i < MATRIX_C.length; i++) {
if (MATRIX_C[i].length != MATRIX_C[0].length) {
throw new /*Runtime*/Exception("There are different lengths of matrix rows.");
// System.err.println("There are different lengths of matrix rows.");
// System.exit(0);
}
}
int sum = 0;
for (int j = 0; j < MATRIX_C[0].length; j++) {
int tmpSmallest = MATRIX_C[0][j];
boolean valueRepeats = false;
for (int i = 1; i < MATRIX_C.length; i++) {
if (MATRIX_C[i][j] < tmpSmallest) {
tmpSmallest = MATRIX_C[i][j];
valueRepeats = false;
} else if (MATRIX_C[i][j] == tmpSmallest) {
valueRepeats = true;
}
}
if (!valueRepeats) {
sum += tmpSmallest;
}
}
return sum;
}
private static void print(final int[][] MATRIX_C) {
for (int i = 0; i < MATRIX_C.length; i++) {
for (int j = 0; j < MATRIX_C[i].length; j++) {

75
src/lab3/Lab3.java Normal file
View File

@@ -0,0 +1,75 @@
package lab3;
public class Lab3 {
private static final int REPETITION_NUMBER = 10;
public static void main(String[] args) {
StringBuilder result = new StringBuilder();
for (int i = 0; i < REPETITION_NUMBER; i++) {
// result += Integer.toString(i);
// result += String.valueOf(i);
result.append(i);
}
/*float f = 1.1f;
double d = 2.2;
// f = (float) (f + d);
f += d;*/
String s = "ASD";
StringBuilder stringBuilder = new StringBuilder("ASD");
StringBuffer stringBuffer = new StringBuffer("ASD");
stringBuilder.append("A");
System.out.println(s.length());
System.out.println(stringBuilder.length());
System.out.println(stringBuffer.length());
System.out.println(s.endsWith("D"));
// System.out.println(stringBuilder.substring(stringBuilder.length() - 1).equals("A"));
System.out.println("A".equals(stringBuilder.substring(stringBuilder.length() - 1)));
System.out.println("A".equals(stringBuffer.substring(stringBuffer.length() - 1)));
String sNull = null;
System.out.println("A".equals(sNull));
System.out.println(sNull.equals("A"));
System.out.println(s.substring(2));
System.out.println(s.contains("AS"));
System.out.println(s.indexOf('a'));
// System.out.println(s.charAt(-1));
System.out.println("s.equalsIgnoreCase(\"AsD\") = " + s.equalsIgnoreCase("AsD"));
String s2 = s;
System.out.println("s2 = " + s2);
System.out.println(s == s2); // true?
System.out.println(s.equals(s2)); // true?
s += "B";
System.out.println(s);
System.out.println("s2 = " + s2);
System.out.println(s == s2); // false?
System.out.println(s.equals(s2)); // false?
String s3 = new String("ASD");
System.out.println(s3 == s2); // true? (false)
System.out.println(s3.equals(s2)); // false? (true)
// String Pool
String s4 = "ASD";
// String s5 = new String("ASD");
String s5 = "AS";
s5 += "D";
System.out.println(s4 == s5); // true? (SP)
System.out.println(s4.equals(s5)); // (true)
System.out.println("Done!");
}
}

66
src/lab3/Variant0.java Normal file
View File

@@ -0,0 +1,66 @@
package lab3;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
/**
* Знайти найбільшу кількість речень заданого тексту, в яких є однакові слова.
*/
public class Variant0 {
public static void main(String[] args) {
System.out.println("\\");
String textString = "Aa, a b. Bb a? B a! B a. Ccc.";
// final String[] sentencesStrings = textString.split("(?<=(\\.|!|\\?)) ");
// final String[] sentencesStrings = textString.split("(?<=[.!?]) ");
final String[] sentencesStrings = textString.split("[.!?] ?");
for (String sentencesString : sentencesStrings) {
System.out.println("[" + sentencesString + "]");
}
System.out.println("++++++++++++");
final String[][] wordsStringsBySentences = new String[sentencesStrings.length][];
for (int i = 0; i < sentencesStrings.length; i++) {
wordsStringsBySentences[i] = sentencesStrings[i].split(",? ");
}
for (String[] wordsStrings : wordsStringsBySentences) {
for (String wordsString : wordsStrings) {
System.out.print("[" + wordsString + "] - ");
}
System.out.println();
}
Set<String> originalWordsStrings = new HashSet();
for (String[] wordsStrings : wordsStringsBySentences) {
for (String wordsString : wordsStrings) {
originalWordsStrings.add(wordsString.toLowerCase());
}
}
final String[] originalWordsArray = originalWordsStrings.toArray(new String[0]);
System.out.println("++++++++++++");
for (Object originalWordsString : originalWordsStrings) {
System.out.println(originalWordsString);
}
int[] entersQuantitiesOriginalWordsInSentences = new int[originalWordsArray.length];
for (int i = 0; i < originalWordsArray.length; i++) {
String originalWord = originalWordsArray[i];
for (String[] words : wordsStringsBySentences) {
for (String word : words) {
if (originalWord.equalsIgnoreCase(word)) {
entersQuantitiesOriginalWordsInSentences[i]++;
break;
}
}
}
}
// todo show greatest value from entersQuantitiesOriginalWordsInSentences
// System.out.println(Arrays.toString(sentencesStrings));
System.out.println("++++++++++++");
}
}

93
src/lab4/Furniture.java Normal file
View File

@@ -0,0 +1,93 @@
package lab4;
///**
// * My class Furniture.
// */
//todo uncomment /*<Furniture>*/
public /*abstract*/ class Furniture/*<T>*/ implements Comparable<Furniture> {
/**
*
*/
private String material;
private int length;
private int height;
private int width;
private int price;
// private T additional;
// public void setAdditional(T additional) {
// this.additional = additional;
// }
/**
* @param material
* @param length
* @param height
* @param width
* @param price
*/
public Furniture(String material, int length, int height, int width, int price) {
// this.material = material;
setMaterial(material);
this.length = length;
this.height = height;
this.width = width;
this.price = price;
}
public void setMaterial(String material) {
this.material = material;
}
public String getMaterial() {
return material;
}
public int getLength() {
return length;
}
public int getHeight() {
return height;
}
public int getWidth() {
return width;
}
public int getPrice() {
return price;
}
/*public Furniture() {
}*/
@Override
public String toString() {
return "Furniture{" +
"material='" + material + '\'' +
", length=" + length +
", height=" + height +
", width=" + width +
", price=" + price +
'}';
}
// @Override
// public int compareTo(Object o) {
// return /*this.*/price - ((Furniture) o).price;
//// return /*this.*/material.compareTo(((Furniture) o).material);
// }
@Override
public int compareTo(Furniture o) {
final int priceDifference = price - o.price;
return priceDifference != 0
? priceDifference
// : -material.compareTo(o.material);
: o.material.compareTo(material);
}
}

84
src/lab4/Main.java Normal file
View File

@@ -0,0 +1,84 @@
package lab4;
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
System.out.println(Integer.MIN_VALUE - 1);
//todo equals+hashcode
// todo JavaDoc
final Furniture/*<Furniture>*/ furniture1 = new Furniture("A", 1, 1, 1, 1);
final Furniture/*<String>*/ furniture2 = new Furniture("F", 1, 1, 1, 4);
System.out.println(furniture1.compareTo(furniture2));
// System.out.println(furniture1.compareTo("furniture2"));
Furniture[] furnitureArray = {
furniture1,
furniture2,
new Furniture("B", 1, 2, 1, 1),
new Furniture("C", 1, 1, 3, 1),
};
for (Furniture furniture : furnitureArray) {
// System.out.println(furniture.getMaterial() + " " + furniture.getPrice());
System.out.println(furniture);
}
System.out.println("+++++++++++++");
// furniture1.setAdditional(new Furniture("Y", 1, 1, 1, 0));
// furniture2.setAdditional("new Furniture(\"Y\", 1, 1, 1, 0)");
// furnitureArray[0].setMaterial("E");
Arrays.sort(furnitureArray, (o1, o2) -> o1.getMaterial().compareTo(o2.getMaterial()));
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");
// todo check
Arrays.sort(furnitureArray, (o1, o2) -> Integer.compare(o2.getPrice(), o1.getPrice()));
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");
/*Arrays.sort(furnitureArray);
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");*/
/*Arrays.sort(furnitureArray, new PriceFurnitureComparator());
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");*/
/*Arrays.sort(furnitureArray, new Comparator<Furniture>() {
@Override
public int compare(Furniture o1, Furniture o2) {
return o1.getMaterial().compareTo(o2.getMaterial());
}
});*/
// Arrays.sort(furnitureArray, (o1, o2) -> o1.getMaterial().compareTo(o2.getMaterial()));
// Arrays.sort(furnitureArray, Comparator.comparing(Furniture::getMaterial));
// Arrays.sort(furnitureArray, Comparator.comparing(Furniture::getMaterial).reversed());
// Arrays.sort(furnitureArray, Comparator.comparing(Furniture::getPrice)
// .thenComparing(Furniture::getMaterial).reversed());
Arrays.sort(furnitureArray, Comparator.comparing(Furniture::getPrice)
.thenComparing(Comparator.comparing(Furniture::getMaterial).reversed()));
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");
}
}

View File

@@ -0,0 +1,11 @@
package lab4;
import java.util.Comparator;
public class MaterialFurnitureComparator implements Comparator<Furniture> {
@Override
public int compare(Furniture o1, Furniture o2) {
return o1.getMaterial().compareTo(o2.getMaterial());
}
}

View File

@@ -0,0 +1,11 @@
package lab4;
import java.util.Comparator;
public class PriceFurnitureComparator implements Comparator<Furniture> {
@Override
public int compare(Furniture o1, Furniture o2) {
return o1.getPrice() - o2.getPrice();
}
}

13
src/test/Test.java Normal file
View File

@@ -0,0 +1,13 @@
package test;
public class Test {
public static void main(String[] args) {
}
static int m(){
System.exit(0);
// return 1;
System.out.println(123);
return 1;
}
}

7
src/test/one/A.java Normal file
View File

@@ -0,0 +1,7 @@
package test.one;
public class A implements MyMethodInterface {
public void myMethod() {
}
}

7
src/test/one/B.java Normal file
View File

@@ -0,0 +1,7 @@
package test.one;
public class B implements MyMethodInterface {
public void myMethod() {
}
}

13
src/test/one/Main.java Normal file
View File

@@ -0,0 +1,13 @@
package test.one;
public class Main {
public static void main(String[] args) {
Object[] objects = {
new A(),
new B(),
};
for (Object object : objects) {
((MyMethodInterface)object).myMethod();
}
}
}

View File

@@ -0,0 +1,5 @@
package test.one;
public interface MyMethodInterface {
void myMethod();
}

1
test.txt Normal file
View File

@@ -0,0 +1 @@
Фів фіке фівлоафждіо хщшіоекдодлфіідваол фі