Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Java String


Автор: Гость_Olga 27.9.2004, 12:40
как в яве если метод right.getRight()

вернул String

505
004
505
004

String rts = right.getRight();

a теперь надо перебрать ети Right .
если б массив , то вот так

if (rts != null && rts[0] != -1)

for (int i = 0; i < rts.length; ++i)
{

if( rts[i] == -1)

switch(rts[i])
{
...

а как если строка ?


Автор: AntonSaburov 27.9.2004, 14:27
А можно еще раз и другими словами ? Я что-то не очень понимаю.

Автор: redrick 27.9.2004, 14:42
у вас в строке прям так столбиком числа ?

Цитата
505
004
505
004


предполагаю так(дубовый способ) :

Код

       String[]   res = new String[rts.length()/4];

       for(int i = 0;i < res.length;i++){
           res[i] = rts.substring(i*4, (i + 1)*4 - 1);
       };


или так =) :

Код

res = rts.split("\n");


вместо "\n" можно вставить и другой разделитель

Автор: TrivialCore 27.9.2004, 17:33
Код
StringTokenizer lines= new StringTokenizer(rts, "\n");
while (lines.hasMoreTokens()) {
try {
int number = Integer.parseInt(lines.nextToken().trim());
System.out.println("Next number is " + number);
} catch (NumberFormatException ex) {
ex.printStackTrace();
}
}
что-нибудь в таком стиле

Автор: AntonSaburov 28.9.2004, 14:46
Ну или вариант с String.split - правда это уже для 1.4 и выше.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)