Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.02 KB | None | 0 0
  1. import javax.swing.*;
  2. import java.awt.*;
  3. import java.awt.event.ActionEvent;
  4. import java.awt.event.ActionListener;
  5. import java.util.Arrays;
  6. import java.util.Scanner;
  7. import java.awt.event.MouseAdapter;
  8. import java.awt.event.MouseEvent;
  9.  
  10. public class FeedingCat {
  11.     public static final int catsCount = 4;
  12.     public static final int plateFood = 300;
  13.     public static final int [] catApetite = {50, 62, 44, 170};
  14.  
  15.     static public class MyWindow extends JFrame{
  16.         public MyWindow(){
  17.             setBounds(500,500,400,300);
  18.             setTitle("Покорми котов!");
  19.             setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
  20.             setVisible(true);
  21.             setLayout(new GridLayout(5,1));
  22.             setCatsNames(0,0);
  23.             setCatsNames(1,0);
  24.             setCatsNames(2,0);
  25.             setCatsNames(3,0);
  26.  
  27.  
  28.             JButton getNames = new JButton("Кормить котов");
  29.             add(getNames);
  30.             getNames.addActionListener(new ActionListener() {
  31.                 @Override
  32.                 public void actionPerformed(ActionEvent e) {
  33.                     String [] catsNamesArr = new String[catsCount];
  34.                     Cat [] cat = new Cat[4];
  35.                     for (int i = 0; i<catsCount; i++){
  36.                         catsNamesArr[i] = ((JTextField)MyWindow.this.getContentPane().getComponents()[i]).getText();
  37.                         cat[i] = new Cat(catsNamesArr[i],catApetite[i]);
  38.                         setCatsNames(i,1)
  39.                     }
  40.                     System.out.println(Arrays.toString(catsNamesArr));
  41.                     Plate plate = new Plate(plateFood);
  42.                     plate.info();
  43.                     allCatsEat(cat, plate);
  44.                     System.out.println("Осталось еды: "+Plate.getFood());
  45.                     getNames.setText("Кормить котов!");
  46.                     }
  47.             });
  48.  
  49.         }
  50.  
  51.  
  52.         private String setCatsNames (int n, int k){
  53.            if (k == 0) {
  54.                JTextField catName = new JTextField("Введите имя " + (n + 1) + "-го кота");
  55.                catName.addMouseListener(new MouseAdapter() {
  56.                    @Override
  57.                    public void mousePressed(MouseEvent e) {
  58.                        catName.setText("");
  59.                    }
  60.                });
  61.                add(catName);
  62.                return catName.getText();
  63.            } else {
  64.                JTextField catName = new JTextField("оно работает ");
  65.                add(catName);
  66.                return catName.getText();
  67.            }
  68.         }
  69.         /*private void setCatsNames(int n) {
  70.             for (int i = 0; i<catsCount; i++){
  71.                 JTextField catName = new JTextField("Введите имя "+(i+1)+" го кота");
  72.                 catName.addMouseListener(new MouseAdapter() {
  73.                     @Override
  74.                     public void mousePressed(MouseEvent e){
  75.                         catName.setText("");
  76.                     }
  77.                 });
  78.                 add(catName);
  79.             }
  80.         }*/
  81.  
  82.     }
  83.  
  84.     public static void main(String[] args) {
  85.         new MyWindow();
  86.  
  87.         /*Cat [] cat = new Cat[4];
  88.         cat[0] = new Cat("Барабас", 50);
  89.         cat[1] = new Cat("Федот", 62);
  90.         cat[2] = new Cat("Матроскин", 44);
  91.         cat[3] = new Cat("Мясополк", 170);
  92.  
  93.  
  94.         Plate plate = new Plate(plateFood);
  95.         plate.info();
  96.         allCatsEat(cat, plate);
  97.         System.out.println("Осталось еды: "+Plate.getFood());*/
  98.     }
  99.  
  100.     private static void allCatsEat(Cat[] cat, Plate plate) {
  101.         for (int i=0;i<4;i++){
  102.             cat[i].info();
  103.             plate.checkFood(cat[i].getAppetite());
  104.             System.out.println("Кот " +cat[i].getName()+" сыт: "+cat[i].satiety(cat[i].getAppetite(), Plate.getFood()));
  105.             cat[i].eat(plate);
  106.             if (i<3){
  107.                 plate.info();
  108.             }
  109.         }
  110.     }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement