powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему у меня выводит ошибку
25 сообщений из 156, страница 6 из 7
Почему у меня выводит ошибку
    #39693822
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaнаверное string )

сорри, сейчас по работе занят, не могу часто в Инет вылезать

Итого:

Метод называется contains
Один параметр с типом String (какое данному параметру дадим имя?)
Возврашает boolean

Как должна выглядить строка с описанием/декларацией данного метода?

public .....
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693827
Фотография Пылинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev, чтоб ты жил на 1 зарплату!
Лёня, желаю чтобы у тебя такое же чудо было проджект-мегерой. Или хотя бы анал&<тегом> (твое "любимое" существо!!!).
Спросишь - Почему?
- Да потому что сам(о) то он(о) работать не сможет, зато навык применения "морковки для осликов" хорошо освоил(о), будет руководить.
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693848
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OFFTOPIC ON

Лет 15 назад, по радио, было интервью с вновь назначенным председателем комитета по культуре СПб.
Вопрос: а какое у Вас образование и что общего Вы имеете с культурой.
Ответ: ничего общего не имею, но очень сильно хочу помочь /городу, мэру/ )))

Ну как минимум "очень сильное желание" nastyaa показывает. Похвально. Может ли это желание перерасти в знание Java - я не знаю. Был бы март и мартовские цены на авиа-билеты, я бы прилетел, и за кегой пива, за пару дней (суббота + ночь + воскресенье) объяснил бы ))) Кега, т.к. явно за два дня одной кружкой бы не ограничилось )))
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693864
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,


в моем старом коде там он передает два параметра childrens лишний был. Нужно просто этот код взять и вставив его в класс Tree переделать под один параметр и исползьовать <T> и запустить в main как я написала
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693866
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

вот так надо в main его запускать
Код: java
1.
boolean b1 = rootFolder.contains("Eminem"):



А этот код из класса Node перетащить в класс Tree и в коде string поменять на <T> и убрать childrens и string text
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
public boolean contains(List<Node<String>> childrens, String text) {
    return recurse(childrens, text);
}
 
private boolean recurse(List<Node<String>> childrens, String text) {
    return childrens.stream()
        .anyMatch(children -> children.data.equals(text) || children.children.size() > 0 && recurse(children.children, text));
}




пример мне показали только в этот раз дерево -
Код: java
1.
&#231;
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693867
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nastyaa,
вот такой пример только его в моем дереве надо по этому примеру использовать
Код: java
1.
2.
3.
4.
List l = new ArrayList();
        l.add("123");
        boolean b = l.contains("123");
        System.out.println("Exists:" + b);
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693869
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaв моем старом коде там он передает два параметра childrens лишний был. Нужно просто этот код взять и вставив его в класс Tree переделать под один параметр и исползьовать <T> и запустить в main как я написала

Я так же думаю. Вперед ))).

На каком шаге проблема?

nastyaaвставив его в класс Tree переделать под один параметр

Как должна выглядить описание метода contains с одним параметром с именем text и типом String (для начала) и возврашающего результат типа boolean ?

p.s. Элементарный вопрос и операция, который за > 2 недели мучений Java, хорошо все же освоить )))
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693874
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

блин я уже не на курсах а нетбинс установлен там(
можете пожалуйста дописать код точнее переделать там же все почти готова(
я буду вам очень благодарна)
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693879
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

да возвращает булиан
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693908
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

пожалуйста помогите(
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693909
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,


пожалуйста помогите(
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693932
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaпожалуйста помогите(

Вот как можно > 2 недель мучаться с Java и до сих пор не домучится, что

Метод называется contains
Один параметр с типом String (какое данному параметру дадим имя?)
Возврашает boolean

Как должна выглядить строка с описанием/декларацией данного метода?"


public boolean contains( String text )

Вот на мой взгляд, это так же элементарно, как 2+2. Где отдельные слова обозначают:

public - область видимости, паблик метод доступен из других классов
boolean - тип возврашаемый методом, вроде, то что он boolean, уже договорились
contains - имя метода
( - открывающая круглая скобка (внутри пойдет описание параметров через запятую)
String - тип параметра, то что он один и с типом String, уже договорились
text - имя параметра
) - закрывающая круглая скобка

Вот вопрос, что из этого Вам НЕ понятно ? что вызывает сложности ?

Почему вместо такого (или похожего) описания/декларации метода у Вас внезапно получилось

public boolean contains(List<Node<T>>)

лично мне, не понятно совершенно (((
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693940
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поскольку в классе Tree или Node и так уже есть список детей, и он находится в поле класса children, то передавать его параметром не нужно.

Т.е. описание метода становится:

Код: java
1.
2.
3.
public boolean contains( String text ) {
   return recurse( this.children, text );
}



В чем проблема ?

Да, раз у нас генерик/шаблон, то вместо String можно/нужно просто написать T.

p.s. Я весь день держался, что бы вымучить из nastyaa что-то осмысленное, но не сдержался. Рабочий день заканчивается, нужно домой идти. Пойду с горя напьюсь дешевым пивом Жигули ((( нормальных стаутов все равно в СПб фиг найдешь ((( В общем.... все не радует, жизнь не удалась (((
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39693941
Фотография просто трепло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaa,

возможно, "эта" информация поможет Вам найти ответ на вопрос
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694077
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

Тут?
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694079
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,
имели ввиду вот так?
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
import java.util.List;


public class Tree<T> extends Node<T> {

    public Tree(T data) {

        super(data, null);
    }

    public boolean contains(T value) {
        return recurse();
    }

    private boolean recurse(T value) {
        return childrens.stream()
                .anyMatch(children -> children.data.equals(text) || children.children.size() > 0 && recurse(children.children, text));
    }

}
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694084
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

Пожалуйста можете помочь(((
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694091
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaValentin Kolesnikov,

Пожалуйста можете помочь(((

Попробую написать этот метод. Мне нужно до работы добраться.

С уважением, Валентин
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694100
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsevpublic boolean contains( String text )

Вот на мой взгляд, это так же элементарно, как 2+2.


Не так элементарно, потому что можно получить неправильный результат, если в дереве есть несколько вершин с одинаковой меткой.


nastyaa return childrens.stream()
.anyMatch(children -> children.data.equals(text)

Кто-то подшутил над Настием. Это выражение - из Java Stream API, которое появилось только в JDK 8 и маловероятно, что его преподают на курсах. Так что является явной подсказкой.
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694103
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Partisan M,
Пожалуйста можете этот код переделать. Нужно contains из класса Node вырезать и вставить в класс Tree и сделать так чтобы он передавал T.
И запускалось в treePrint по коду
Код: java
1.
2.
boolean b1 = rootFolder.contains("Eminem");
        System.out.println(b1);



Вот мой код
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
import java.util.ArrayList;

import java.util.List;


public class Node<T> {
    private T data;
    private final List<Node<T>> children = new ArrayList<>();
    private final Node<T> parent;

    
    public Node(T data, Node<T> parent) {
        this.data = data;
        this.parent = parent;
    }

    public void addChild(Node<T> node) {
        children.add(node);
    }

   
    public Node<T> addChild(T nodeData) {
    	
    	Node<T> newNode = new Node<T>( nodeData, this ); 
        children.add( newNode );
        return newNode;
    }

   
    public List<Node<T>> iterate() {
        return children;
    }

    public void remove(Node<T> node) {
        children.remove(node);
    }

    public List<Node<T>> getChildren() {
        return children;
    }

    public Node getParent() {
        return parent;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
    public boolean contains(List<Node<String>> childrens, String text) {
    return recurse(childrens, text);
}
 
private boolean recurse(List<Node<String>> childrens, String text) {
    return childrens.stream()
        .anyMatch(children -> children.data.equals(text) || children.children.size() > 0 && recurse(children.children, text));
}
 
 

    
    }

----------------------------------
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import javax.swing.tree.TreeNode;

import java.util.*;

public class TreePrint {

    public static void main(String[] args) {

        Tree<String> rootFolder = new Tree<>("RootFolder");

        Node<String> video = rootFolder.addChild("Video");
        Node<String> music = rootFolder.addChild("Music");
        Node<String> picture = rootFolder.addChild("Picture");

        video.addChild("Terminator");
        video.addChild("Die Hard");
        video.addChild("Rocky");
        music.addChild("Eminem");
        Node<String> picture1 = picture.addChild("Picasso");
        picture1.addChild("P1");
        Node<String> picture2 = picture1.addChild("P2");
        picture2.addChild("P3");
        picture2.addChild("P3");

        printTree(rootFolder);
        System.out.println(rootFolder.contains(rootFolder.getChildren(), "Terminator"));
    }

    private static <T> void printTree(Node<T> node) {
        printTree(node, 0);
    }

    private static <T> void printTree(Node<T> node, int level) {
        printNode(node, level);
        if (node.getChildren() != null) {
            for (Node childNode : node.getChildren()) {
                printTree(childNode, level + 1);
            }
        }
    }

    private static <T> void printNode(Node<T> kid, int level) {

        for (int i = 0; i < level; i++) {
            System.out.print("  ");
        }

        System.out.println(kid.getData());
        
    }
}
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694104
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Partisan M,
а вот мой класс Tree здесь нужно написать contains
Код: java
1.
2.
3.
4.
5.
6.
7.
public class Tree<T> extends Node<T> {

    public Tree(T data) {
        
        super(data, null);
    }
}
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694107
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

я буду ждать вас(
всю ночь не спала надо доделать задачу( пожалуйста спасите(
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694118
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaValentin Kolesnikov,

я буду ждать вас(
всю ночь не спала надо доделать задачу( пожалуйста спасите(

Вот такое решение:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
package tree;

import java.util.ArrayList;
import java.util.List;

public class Node<T> {
    private T data;
    private final List<Node<T>> children = new ArrayList<>();
    private final Node<T> parent;


    public Node(T data, Node<T> parent) {
        this.data = data;
        this.parent = parent;
    }

    public void addChild(Node<T> node) {
        children.add(node);
    }


    public Node<T> addChild(T nodeData) {

        Node<T> newNode = new Node<T>( nodeData, this ); 
        children.add( newNode );
        return newNode;
    }


    public List<Node<T>> iterate() {
        return children;
    }

    public void remove(Node<T> node) {
        children.remove(node);
    }

    public List<Node<T>> getChildren() {
        return children;
    }

    public Node getParent() {
        return parent;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
}

package tree;

import java.util.List;

public class Tree<T> extends Node<T> {

    public Tree(T data) {

        super(data, null);
    }

    public boolean contains(T value) {
        return recurse(iterate(), value);
    }

    private boolean recurse(List<Node<T>> children, T value) {
        return children.stream()
                .anyMatch(item -> item.getData().equals(value) || item.iterate().size() > 0 && recurse(item.iterate(), value));
    }
}

package tree;

public class TreePrint {

    public static void main(String[] args) {

        Tree<String> rootFolder = new Tree<>("RootFolder");

        Node<String> video = rootFolder.addChild("Video");
        Node<String> music = rootFolder.addChild("Music");
        Node<String> picture = rootFolder.addChild("Picture");

        video.addChild("Terminator");
        video.addChild("Die Hard");
        video.addChild("Rocky");
        music.addChild("Eminem");
        Node<String> picture1 = picture.addChild("Picasso");
        picture1.addChild("P1");
        Node<String> picture2 = picture1.addChild("P2");
        picture2.addChild("P3");
        picture2.addChild("P3");

        printTree(rootFolder);
        System.out.println("Is picture.contains - " + rootFolder.contains("P2"));
    }

    private static <T> void printTree(Node<T> node) {
        printTree(node, 0);
    }

    private static <T> void printTree(Node<T> node, int level) {
        printNode(node, level);
        if (node.getChildren() != null) {
            for (Node childNode : node.getChildren()) {
                printTree(childNode, level + 1);
            }
        }
    }

    private static <T> void printNode(Node<T> kid, int level) {

        for (int i = 0; i < level; i++) {
            System.out.print("  ");
        }

        System.out.println(kid.getData());
    }
}



Результат:
авторRootFolder
Video
Terminator
Die Hard
Rocky
Music
Eminem
Picture
Picasso
P1
P2
P3
P3
Is picture.contains - true


С уважением, Валентин
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694124
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

Спасибо вам большое)
а вот так можно его запускать?
Код: java
1.
2.
boolean b1 = rootFolder.contains("Eminem");
        System.out.println(b1);
...
Рейтинг: 0 / 0
Почему у меня выводит ошибку
    #39694125
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

а все проверила) спасибо вам большооооое) вы мой спаситель)))
...
Рейтинг: 0 / 0
25 сообщений из 156, страница 6 из 7
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему у меня выводит ошибку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]