41

(29 відповідей, залишених у Інше)

Задав собі це запитання дуже часто... В інтернеті нічого цікавого та перспективного не побачив. Всі полюбляють соціальні мережі, а Я не розумію що в них цікавого, даремно витрачений час. Я гадаю що піплу буде цікаво дізнаватися щось цікаве про довкілля, всесвіт і т.д. Ну і звичайно регулярна публікація повідомлень на сайті, але це породжує нові проблеми(але їх можливо вирішити). А яка Ваша думка на цю тему? Що цікавить сучасних людей?

42

(6 відповідей, залишених у PHP)

Sensetivity написав:

Ви присвоюєте значення змінним а використовуєте властивості класу.

Тоді це також не діяло... Випливала якась помилка, а яка не памятаю

43

(6 відповідей, залишених у PHP)

Вирішив у такий собі спосіб

Прихований текст
    public function add_data()
    {
        $name  = $_REQUEST['name'];
        $level = $_REQUEST['level'];
        $age   = $_REQUEST['age'];

        $query = "INSERT INTO users(id, name, level, age) VALUES (null, '$name', $level, $age)";
        $this->pdo->exec($query) or die ("Error");
    }

безпечне занесення даних не потрібно мені в даний момент...

44

(6 відповідей, залишених у PHP)

Ось код:

Прихований текст
    public function add_data() {
        $query = "INSERT INTO users(id, name, level, age) VALUES (null, :name, :level, :age)";

        $name  = $_REQUEST['name'];
        $level = $_REQUEST['level'];
        $age   = $_REQUEST['age'];

        $params = array(':name' => $this->name,
                        ':level'=> $this->level,
                        ':age'  => $this->age);

        $stmt = $this->pdo->prepare($query);
        $stmt->execute($params);
    }

не відбувається занесення даних до бази... Змінні не пусті, всі значення введено згідно з типом поля у БД.
в чому проблема?

45

(3 відповідей, залишених у Java)

Ivan-ua написав:

Для наглядності можна відділяти окремі блоки коду пустою строкою, напр. в методі go після 17, 22, 27 і т. д. строк пуста строка (Enter).
Впринципі коментарі завершення методу непотрібні, щодо коментарів можеш почитати про JavaDoc.
Зараз відкриття файлів можна здійснювати за допомогою try with resources http://www.mkyong.com/java/try-with-res … -in-jdk-7/ це дозволяє пропускати блок finally (java сама все закриє).

ну, коментарів я за багато добавив задля ясності іншим користувачам, а сам використовую менше їх, здебільшого роблю відступи ентером... try з ресурсами я пізніше використаю...

46

(3 відповідей, залишених у Java)

Ну щось ледве подібне на текстовий редактор в мене вийшло(перша програма написана мною та не списана з посібників)... функціонал скупий та забагований, але мені потрібна ваша оцінка коду(щоб не звик погано писати код)
під спойлером код:

Прихований текст
package txtedit;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class TXTEdit extends JPanel {
    JTextArea area0;
    JFileChooser file;

    public void go()
    {
        //створюємо фрейм
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel panel = new JPanel();
        //ініціалізація текстового поля
        area0 = new JTextArea(15, 50);
         area0.setWrapStyleWord(true);
         area0.setLineWrap(true);
         area0.setEditable(true);
        //реалізація меню 
        JMenuBar menuBar = new JMenuBar();
        JMenu fileMenu = new JMenu("File");
        fileMenu.add(new JMenuItem("Open")).addActionListener(new ActionChooserListener());
        fileMenu.add(new JMenuItem("Save")).addActionListener(new ActionSaveListener());
        //додавання меню до фрейму
        menuBar.add(fileMenu);
        frame.setJMenuBar(menuBar);
        //поле
        panel.add(new JScrollPane(area0));
        //налаштовуємо фрейм
        frame.add(BorderLayout.CENTER, panel);
        //останні налаштування
        frame.setSize(600, 350);
        frame.setResizable(false);
        frame.setVisible(true);
    }//close method go()

    //слухач для відкриття файлу
    class ActionChooserListener implements ActionListener
    {
        public void actionPerformed(ActionEvent ev)
        {
            //ініціалізація буферу
            BufferedReader reader = null;
            //відкриваємо вікно для вибору файлу
            file = new JFileChooser();
            
            int ret = file.showDialog(null, "Выберите файл");
            
            if (ret == JFileChooser.APPROVE_OPTION)
            {
                //чистимо поле
                area0.setText(null);
                
                try {
                    //організовуємо вивод файла
                    File f = file.getSelectedFile();
                    FileReader rFile = new FileReader(f);
                    reader = new BufferedReader(rFile);
                    //ініціалізація змінної
                    String str = null;
                    //вивод самого файла на єкран
                    while((str = reader.readLine()) != null)
                    {
                        area0.append(str + "\n");
                    }
                } catch (IOException e) {
                    //допишу колись
                }
                finally
                {
                    try {
                        reader.close();
                    } catch (IOException e) {
                        //також допишу
                    }
                }
            }
        }
    }//close inner class ActionChooserListener
    //сдухач для зберігання файлу
    class ActionSaveListener implements ActionListener
    {
        public void actionPerformed(ActionEvent ev)
        {
            //ініціалізація змінної
            BufferedWriter writer = null;
            try {
                //створюємо замінні для зберігання файлу
                File f = file.getSelectedFile();
                FileWriter fw = new FileWriter(f);
                writer = new BufferedWriter(fw);
                //ініціалізація змінної
                String s = null;
                do {
                    //зберішаємо текст
                    s = area0.getText();
                    writer.write(s);
                } while(s != null);
                writer.close();
            } catch (IOException e) {
                //допишу
            }
        }
    }//close inner class ActionSaveListener
    
    public static void main(String[] args) {
        new TXTEdit().go();
    }//close method main();
}


П.С. код оцінюйте більш-менш критично, та пишіть як би краще було б реалізувати цей дефектний код...
/* доречі, щоб програма розуміла кирилицю, потрібно змінити кодування перед виводом файла? чи є ще якісь варіанти?
також, як отримати шлях котрий був вибраний користувачем використовуючи JFileChooser метод: showSaveDialog() ???
*/

47

(5 відповідей, залишених у Java)

koala написав:

Важко телепатично побчити, який тип у area0, але логіка підказує, що readLine вихоплює все, крім символу нового рядка (інакше було б read), а append додає символи з рядка без цього символу (інакше було б щось на кшталт appendLine)

area0 - JTextArea. А далі Я не зовсім зрозумів хід ваших думок...

48

(5 відповідей, залишених у Java)

P.Y. написав:

Що саме слід вважати переносом рядка? Якщо '\n', то незрозуміло, як він став пробілом (хіба що у вас там веб-інтерфейс?). Чи це початково пробіл, який у більшості редакторів відображається як перехід на новий рядок, коли здійснюється згортання по рядках?

Взагалі, треба бачити код і сам текстовий файл, щоб щось сказати.

нема питань.

Прихований текст

Кусень коду)) це той, в якому проходить зчитування з файлу, а сам файл - звичайний текст з пробілами і символами, в якому подекуди трапляється перенос строки за допомогою кнопки "Ентер"

                    File f = file.getSelectedFile();
                    FileReader rFile = new FileReader(f);
                    reader = new BufferedReader(rFile);
                    
                    String str = null;
                    
                    while((str = reader.readLine()) != null)
                    {
                        area0.append(str);
                    }

49

(5 відповідей, залишених у Java)

Як реалізувати переніс строки, при зчитуванні даних з файлу?
Для закріплення навичок вирішив написати простий текстовий редактор, а при відкритті файлу, виявилось, що програма не реагує на переніс строки.
Як це виправити?

50

(15 відповідей, залишених у Інше)

Я читав англійською книгу: "Head First Java" і зрозумів деякий матеріал не зовсім правильно і вирішив пошукати російське видання цієї книги і знайшов: https://сайт-злодій/d/kN6UOjkUPJMbf але завантажити не можу через повільний інтернет який працює зі збоями(тому через браузер я не завантажую, а використовую менеджер завантажень) тому мені потрібно щоб хтось залив книгу на файлообмінник з можливістю прямого посилання на файл(для менеджера завантажень) щось типу ex.ua
//Хтось допоможе?

51

(7 відповідей, залишених у Java)

smisha написав:

Так і знав, що треба JPanel ))
Кілька ремарок:
- з 5-ї версії Java, це

frame.getContentPane().add(drawPanel); 

можна скоротити до:

frame.add(drawPanel); 

- експлісітне успадковування внутрішнім класом зовнішнього немає сенсу, він і так має доступ до його членів. І взагалі доцільність створення внутрішнього класу в цьому випадку сумнівна, як на мене.
Дивно, що в цій книжці є такі опечатки, вона є однією з найбільш рекoмендованих. Але, напевно, люди, які пишуть текст, і люди, які набирають текст, це різні люди ))

Ну це все ж таки 2005 рік)))) також я зустрічав і такі скоречення, але захотів саме так як написано в книзі... Доречі, Ви маєте якісь програми на Java SE в яких можна подивитись код?))) мені цікаво подивитись на код Java SE інших програмістів)))))

52

(7 відповідей, залишених у Java)

smisha написав:

Я думаю, що абo клас JFrameDemo  повинен успадковувати від JFrame, або MyDrawPane повинен успадковувати від JFrame. Тоді метод repaint() буде доступним.

Можливо, що замість

class MyDrawPane extends JFrameDemo 

повинно бути

class MyDrawPane extends JFrame 

Спробуйте зкомпілювати...

вийшло)) але помилка перша так і залишилася... зараз спробую по гуглити це питання;
//Вийшло все в мене... потрібно було успадкувати клас JPanel...
Дякую всім за допомогу))))

53

(7 відповідей, залишених у Java)

quez написав:

Я вас заспокою: принаймні друга помилка мала з'являтись і в 2005 році теж. В класі MyDrawPane немає метода repaint, так само його немає і в JFrameDemo, від якого MyDrawPane наслідується.

Дякую)) а чому автор книжки не попередив принаймні...? І як можна вирішити другу помилку?

54

(13 відповідей, залишених у Java)

щодо 1 ви праві, а 5 буде помилка компіляції, бо спочатку йде Exception, а потім уже Arifmetical Exception, що компілятор тупо позначить як помилку, тому що мало б бути навпаки, тобто спочатку Arifmetical Exception, а потім Exception, бо навіть якби воно б працювало- то при виникненні будь-якої виняткової ситуації потрапляло б в блок з Exception

P.S. а тести там досить важчі будуть, повтикайте тести на quizful, думаю "мардашкою в гавніцо" вам допоможе(хз, по собі суджу)

Я знав що цей код не вірний, але не очікував що буде помилка компіляції)) дякую Вам за пояснення

55

(7 відповідей, залишених у Java)

Я не розумію чому виникає помилка:

import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

public class JFrameDemo {
    int x = 70, y = 70;
    
    
    public void go()
    {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        MyDrawPane drawPanel = new MyDrawPane();
        
        frame.getContentPane().add(drawPanel); // ось тут виникає пимилка: no suitable method found for add;
        frame.setSize(300, 400);
        frame.setVisible(true);
        
        for (int i = 0; i < 130; i++)
        {
            x++;
            y++;
            
            drawPanel.repaint(); //тут також помилка. щось тіпа: "не існує методу";
            
            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
                System.out.println("Error " + e);
            }
        }
        
    } // close method go();

    public static void main(String[] args)
    {
        JFrameDemo fr = new JFrameDemo();
        fr.go();
    }
    
    class MyDrawPane extends JFrameDemo {
        public void paintComponent(Graphics g)
        {
            g.setColor(Color.green);
            g.fillOval(x, y, 100, 100);
        }
    }// close inner class
}// close outer class  

P.S. цей уривок коду взятий з книги: "Head First Java" - а книга 2005 року... можливо технологія вже застаріла так як Я використовую JDK 1.8... Допоможіть, будь ласка))

56

(13 відповідей, залишених у Java)

1 наче буде - а(бо в інтерфейсі, тип абстракт використовувати низя), а 5 мабуть буде - Exception(мабуть, тому що ексепшен перехопить помилку першим, хоча хз..)... ну я так гадаю... якщо не правильно то виправте мене))) я сам тільки розпочав вивчати джаву))

57

(13 відповідей, залишених у Обговорення)

VTrim написав:

Тому краще вивчіть фрондент та ігрові JS фреймворки/двигуни,а не те,на якому фреймворку буде серверна частина.

Розпочав вивчати JavaScript і він мене зацікавив, не знаю навіть чим... Дякую за пораду)

58

(13 відповідей, залишених у Обговорення)

VTrim написав:

Як на мене,то такі ігри - хрЄнь.

Якшо вже писати ігри для вебу,то з HTML5/CSS3/JS в 2D,а не сухі PHP сторінки. Де для якоїсь дії потрібно тільки тицяти на лінки.

Тому краще вивчіть фрондент та ігрові JS фреймворки/двигуни,а не те,на якому фреймворку буде серверна частина.

Так, я розумію Вашу точку зору, але не у всіх є швидкий інтернет та можливість з телефону грати в 2D ігри в інтернеті... Хоча, думка цікава... Ви знаєте подібні фреймворки?

59

(13 відповідей, залишених у Обговорення)

0xDADA11C7 написав:

Навіть у випадку людиногравців деякі ази ШІ і алгоритмів треба буде засвоїти.

якщо це потрібно буде, то спробую засвоїти)

60

(13 відповідей, залишених у Обговорення)

0xDADA11C7 написав:

А "вороги" як будуть діяти?

або я вас не зрозумів, або навпаки... Я планую зробити взаємодію саме реальних гравців по Україні, а саме поділити їх на 2-3 сторони, без штучного інтелекту...