Не знаю, может боян, но меня сегодня такая идея посетила :) abstract class Node extends RuntimeException { } class Leaf extends Node { public final String value; public Leaf(String value) { this.value = value; } } class BNode extends Node { public final Node left; public final Node right; public BNode(Node left, Node right) { this.left = left; this.right = right; } } public class Main { public static void walk(Node node, StringBuffer buf) { try { throw node; } catch (Leaf n) { buf.append(n.value); } catch (BNode n) { walk(n.left, buf); walk(n.right, buf); } } public static void main(String[] args) { Node node = new BNode(new Leaf("1"), new BNode(new BNode(new Leaf("2"), new Leaf("3")), new Leaf("4"))); StringBuffer sb = new StringBuffer(); walk(node, sb); System.out.println(sb); } }
Ответ на:
комментарий
от Deady
Ответ на:
комментарий
от phasma
Ответ на:
комментарий
от dmiceman
Ответ на:
комментарий
от vilfred
Ответ на:
комментарий
от Legioner
Ответ на:
комментарий
от Legioner
Ответ на:
комментарий
от vilfred
Ответ на:
комментарий
от Legioner
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Visitor Pattern - почему так не принято его реализовать? (2012)
- Форум [Sugar for coffie]Сахарок для java (2010)
- Форум Json туда и обратно (2017)
- Форум Экспериментальная фича: подсветка синтаксиса языков программирования (2009)
- Форум java, try-resourses block demo -> unreportedException java.io.IOException (2016)
- Форум В чём разница между main внутри класса или снаружи? (2017)
- Форум [Java] структура и массив (2011)
- Форум [java]finalize (2008)
- Форум Прикольная задачка. Решите? (2010)
- Форум backgroundcolor (2012)