Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2010, 11:18   #1
ArniLand
Пользователь
 
Регистрация: 27.06.2009
Сообщений: 89
По умолчанию метод объявленный вне класса - дерево

Жалуеться на строку - cannot find symbol. Подскажите пожалуйста, как правильно
объявить метод insert в main, чтобы он добавлял элементы в дерево

Код:
insert(root, 1, "anton", "bondarenko", "3", "455678", "Y");

Код:
package btree;
import java.io.*;
public class BinaryTree {

    static Nodes root;
    public class Nodes {
    Nodes left;
    Nodes right;
    
    int data;
    String name;
    String surname;
    String course;
    String ticket;
    String army;
    
    public Nodes(int data, String name, String surname, String course, String ticket, String army){
        this.data = data;
        this.name = name;
        this.surname = surname;
        this.course = course;
        this.ticket = ticket;
        this.army = army;
    }


    public void insert(Nodes node, int data, String name, String surname, String course, String ticket, String army){
        if (data < node.data){
           if (node.left != null){
               insert (node.left, data, name, surname, course, ticket, army);
           } else {
               node.left = new Nodes(data, name, surname, course, ticket, army);
           }
           }else if (data > node.data){
        if (node.right != null) {
            insert(node.right, data, name, surname, course, ticket, army);
        }
          else {
            node.right = new Nodes(data, name, surname, course, ticket, army);
          }
        }
    }
}
 

 public static void main(String[] args){
    
    insert(root, 1, "anton", "bondarenko", "3", "455678", "Y");//ошибка в этой строке
    }
}
ArniLand вне форума Ответить с цитированием
Старый 20.09.2010, 12:06   #2
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
объявить метод insert в main, чтобы он добавлял элементы в дерево
Обьявить или вызвать ?
Метод Insert - метод класса Nodes. Соответственно вызывать в main надо root.Insert() + root надо инициализировать.

Последний раз редактировалось ssdm; 20.09.2010 в 12:09. Причина: опечатка
ssdm вне форума Ответить с цитированием
Старый 21.09.2010, 01:07   #3
ArniLand
Пользователь
 
Регистрация: 27.06.2009
Сообщений: 89
По умолчанию ошибка в программе - дерево

Выдает такую ошибку в программев cannot find a symbol в строке Помогите исправить пожалуйста.

Код:
Node n = new Node(data, name, surname, course, army);// жалуется на эту строку, точнее на Node который после ключевого слова new

Код программы:

Код:
package btree;
import java.io.*;
public class BinaryTree {
    static Node root;
    public BinaryTree()

    {  root = null;  }
        
    public void insert(Node node, int data, String name, String surname,
            String course, String ticket, String army){

        Node n = new Node(data, name, surname, course, army);// жалуется на эту строку, точнее на Node который после ключевого слова new
        if (root == null){
            root = n;
        }
        else{

           if (data < node.data){
           if (node.left != null){
               insert (node.left, data, name, surname, course, ticket, army);
           }
           else {
               node.left = new Node(data, name, surname, course, ticket, army);
           }
        }
        else {
            if (data > node.data) {
                if (node.right != null) {
                    insert(node.right, data, name, surname, course, ticket, army);
                }
                else {
                    node.right = new Node(data, name, surname, course, ticket, army);
                }
            }
        }
    }
  }
    public class Node {
        Node left;
        Node right;
        int data;
        String name;
        String surname;
        String course;
        String ticket;
        String army;
        public Node(int data, String name, String surname, String course, String ticket, String army){
            this.data = data;
            this.name = name;
            this.surname = surname;
            this.course = course;
            this.ticket = ticket;
            this.army = army;
        }
    }
    public static void main(String[] args){
        BinaryTree bt = new BinaryTree();
        bt.insert(root, 1, "anton", "bondarenko", "3", "455678", "Y");
        bt.insert(root, 2, "igor", "lenin", "2", "689777", "N");
    }
}
ArniLand вне форума Ответить с цитированием
Старый 21.09.2010, 02:46   #4
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

в конструкторе 6 параметров, а у вас передается 5. Научитесь читать ошибки.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.

Последний раз редактировалось SunKnight; 21.09.2010 в 23:53.
SunKnight вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в программе Vladislav514 Софт 0 13.07.2010 15:16
Ошибка в программе. T@tali Паскаль, Turbo Pascal, PascalABC.NET 15 25.05.2010 13:36
Ошибка в программе forman Общие вопросы C/C++ 1 18.05.2010 22:47
не работает удаление и поиск в программе про бинарное дерево Барби Общие вопросы C/C++ 6 24.12.2008 22:20