Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 9 additions & 2 deletions src/main/java/lesson2/hw/ArrayDataException.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
package lesson2.hw;

public class ArrayDataException extends Exception {
// TODO: 14.04.2020
public class ArrayDataException extends ClassCastException {
// TODO: 14.04.2020
public ArrayDataException() {
super();
}

public ArrayDataException(String s) {
super(s);
}
}
7 changes: 5 additions & 2 deletions src/main/java/lesson2/hw/ArraySizeException.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
package lesson2.hw;

public class ArraySizeException extends Exception {
// TODO: 14.04.2020
public class ArraySizeException extends RuntimeException {
@Override
public String getMessage() {
return "Incorrect size";
}
}
5 changes: 1 addition & 4 deletions src/main/java/lesson2/hw/ArrayUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@

public class ArrayUtils {

public long arraySum(Object [][] array) {
// TODO: 14.04.2020
return 0;
}


}
36 changes: 35 additions & 1 deletion src/main/java/lesson2/hw/Main.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,42 @@
package lesson2.hw;

import java.util.Random;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
// TODO: 14.04.2020
// протестируйте arraySum здесь
Object[][] arr = new Object[4][4];
for (int i = 0; i < 4; i++) {
arr[i] = new Object[]{7, 3, "ty", 1.33};
}
System.out.println(arraySum(arr));
}
public static int arraySum(Object [][] array) {
// TODO: 14.04.2020
int sum = 0;
try {
if (array[1].length > 4 || array.length > 4) {
throw new ArraySizeException();
}
}
catch (ArrayDataException e){
System.out.println("Неверный размер матрицы");
}

for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
try {
sum += ((int) array[i][j]);
}
catch(ClassCastException e){
System.out.println("Неверный тип данных в ячейке массива под индексом ["+i+"]["+j+"]");
}
}
}

return sum;
}


}
43 changes: 43 additions & 0 deletions src/main/java/lesson6/Client.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package lesson6;


import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.Scanner;

public class Client {

public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 80);
DataInputStream in = new DataInputStream(socket.getInputStream());
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
Scanner input = new Scanner(System.in);

Thread receiveServerMessageThread = new Thread(() -> {
while (true) {
try {
String serverMessage = in.readUTF();
System.out.println("Message from server: " + serverMessage);
} catch (Exception e) {
e.printStackTrace();
}
}
});
receiveServerMessageThread.start();

while (true) {
String message = input.nextLine();
if (message.equals("quit")) {
System.out.println("Finished!");
out.writeUTF(message);
out.flush();
break;
}
out.writeUTF(message);
out.flush();
}

}
}
39 changes: 39 additions & 0 deletions src/main/java/lesson6/Server.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package lesson6;

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

public class Server {

public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(80);
Socket con = server.accept();
System.out.println("Connected " + con.getInetAddress());
DataInputStream in = new DataInputStream(con.getInputStream());
DataOutputStream out = new DataOutputStream(con.getOutputStream());
Scanner input = new Scanner(System.in);
Thread receiveClientMessageThread = new Thread(() -> {
while (true) {
try {
String clientMessage = in.readUTF();
if (clientMessage.equals("quit")) {
System.out.println("Shut down");
return;
}
System.out.println("Message from client: " + clientMessage);
} catch (Exception e) {
e.printStackTrace();
}
}
});
receiveClientMessageThread.start();

while (true) {
String serverMessage = input.nextLine();
out.writeUTF(serverMessage);
out.flush();
}
}
}