Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Java - помогите изменить метод в программе

Ответить
Настройки темы
Java - помогите изменить метод в программе

Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: kirill7117
Дата: 10-11-2012
кто-нибудь может помочь немного модифицировать public static Answer1 parseTree (String s). Программа правильно работает, только нужно этот метод по-другому написать
http://rusfolder.com/33533509

Отправлено: 15:49, 09-11-2012

 

Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


Все Answer1 замените на Answer, а в одном месте заменить не получится потому-что Answer1 это название класса

Отправлено: 16:16, 09-11-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


ferget, это то я знаю, я специально сделал Answer1, мне бы изменить то, что внутри метода

Отправлено: 12:27, 10-11-2012 | #3


Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


Цитата kirill7117:
мне бы изменить то, что внутри метода »
Что значит "внутри метода"? В первом посте вы хотели изменить возвращаемое значение

Отправлено: 17:42, 10-11-2012 | #4


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


ferget, я просто неправильно написал, теперь я исправил первый пост

Отправлено: 19:21, 10-11-2012 | #5


Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


не совсем понятно, что значит не много
ну например так

Код: Выделить весь код
import java.util.*;

public class Answer1 {

	private String name;
	private Answer1 firstChild;
	private Answer1 nextSibling;

	Answer1(String n, Answer1 d, Answer1 r) {
		name = n;
		firstChild = d;
		nextSibling = r;
	}

	public static Answer1 parseTree(String s) {
		if (s == null || s.isEmpty()) {
			return null;
		}

		StringTokenizer mingi = new StringTokenizer(s, ",()", true);
		String midagi = mingi.nextToken();
		String Q = "", E = "", V = "";

		while (mingi.hasMoreTokens()) {
			Q = mingi.nextToken();
			if (Q.equals("(")) {
				Q = mingi.nextToken();
				int closed = 0;
				while (closed < 1) {
					E = E + Q;
					Q = mingi.nextToken();
					closed = findBrackets(Q, closed);
				}
			}
			if (Q.equals(",")) {
				while (mingi.hasMoreTokens()) {
					V = V + mingi.nextToken();
				}
			}
		}
		return new Answer1(midagi, Answer1.parseTree(E), Answer1.parseTree(V));
	}

	private static int findBrackets(String str, int num) {
		if (str.equals("(")) {
			return num - 1;
		} else if (str.equals(")")) {
			return num + 1;
		}
		return num;
	}

	public String rightParentheticRepresentation() {
		String Returned = "";
		if (firstChild != null) {
			Returned += "(" + firstChild.rightParentheticRepresentation() + ")";
		}
		Returned += name;
		if (nextSibling != null) {
			Returned += "," + nextSibling.rightParentheticRepresentation();
		}
		return Returned;
	}

	public static void main(String[] param) {
		String s = "A(B,C)";
		Answer1 t = Answer1.parseTree(s);
		String v = t.rightParentheticRepresentation();
		System.out.println(s + " ==> " + v); // A(B,C) ==> (B,C)A
		s = "A(C,B)";
		String Dam = "";
		Dam = s + " ==> "
				+ (Answer1.parseTree(s).rightParentheticRepresentation());
		int passedOf3 = 0;
		if (Dam.equals(s + " ==> " + "(C,B)A")) {
			passedOf3++;
			System.out.println("Test 1 OK!");
		}
		s = "B(D(C,H),B(W,M))";
		Dam = s + " ==> "
				+ (Answer1.parseTree(s).rightParentheticRepresentation());
		if (Dam.equals(s + " ==> " + "((C,H)D,(W,M)B)B")) {
			passedOf3++;
			System.out.println("Test 2 OK!");
		}
		s = "C(I(K,E(A,F)),Y(B,O))";
		Dam = s + " ==> "
				+ (Answer1.parseTree(s).rightParentheticRepresentation());
		if (Dam.equals(s + " ==> " + "((K,(A,F)E)I,(B,O)Y)C")) {
			passedOf3++;
			System.out.println("Test 3 OK!");
		}
		if (passedOf3 == 3) {
			System.out.println("All tests passed!");
		} else
			System.out.println("Error, some tests failed.");
	}
}

Отправлено: 20:45, 10-11-2012 | #6


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


ferget, спасибо

Отправлено: 16:24, 11-11-2012 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Java - помогите изменить метод в программе

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Помогите найти ошибку(косяк) в программе с бинарным деревом.(Паскаль) w1121 Программирование и базы данных 0 20-12-2011 20:05
C/C++ - помогите исправить ошибки и добавить картинку в программе joxer1 Программирование и базы данных 0 08-06-2011 19:44
Разное - Изменить в программе букву диска d_u Программирование и базы данных 9 05-01-2009 18:56
Разное - Как изменить папку, откр-ся по умолчанию при нажатии "Открыть" в любой программе? yorc Microsoft Windows 2000/XP 1 20-07-2007 00:20
Как мне изменить неправильную информацию о моей программе? sv2k О сайте и форуме 1 05-12-2006 19:08




 
Переход