Gabriel Vincent Postado 2 de novembro de 2010 Denunciar Compartilhar Postado 2 de novembro de 2010 Olá a todos! Eu estou fazendo um App que, em dado momento, necessita de uma inversão de caracteres de uma string. Eu quero ler uma string de um TextField, invertê-la, e escrevê-la já invertida em outro (ou no mesmo) TextField, para que o usuário tenha a opção de copiar a string invertida. Pode também ser escrito em uma Label, ou qualquer coisa que funcione. Agradeço a atenção Citar Link para o comentário Compartilhar em outros sites More sharing options...
rsorelli Postado 2 de novembro de 2010 Denunciar Compartilhar Postado 2 de novembro de 2010 Não server ler a string e ir concatenando letra a letra de forma invertida ? tipo assim: vamos assumir que sua string tem 5 caracteres i =0 stringInversa = "" stringInversa = stringOriginal while i < 4 { stringInversa = letra + stringInversa i = i + 1 } Citar Link para o comentário Compartilhar em outros sites More sharing options...
KOSTON Postado 2 de novembro de 2010 Denunciar Compartilhar Postado 2 de novembro de 2010 ... String strAux = ""; for (int i = stringOriginal.lengh-1; i >= 0; i--) { strAux += stringOriginal.charAt(i); } ... ao fim do laço a strAux contará o valor invertido da sua String original. Citar Link para o comentário Compartilhar em outros sites More sharing options...
KOSTON Postado 2 de novembro de 2010 Denunciar Compartilhar Postado 2 de novembro de 2010 correcao: stringOriginal.length Citar Link para o comentário Compartilhar em outros sites More sharing options...
Gabriel Vincent Postado 2 de novembro de 2010 Autor Denunciar Compartilhar Postado 2 de novembro de 2010 Não server ler a string e ir concatenando letra a letra de forma invertida ? tipo assim: vamos assumir que sua string tem 5 caracteres i =0 stringInversa = "" stringInversa = stringOriginal while i < 4 { stringInversa = letra + stringInversa i = i + 1 } não... infelizmente não. Acho que em Obj-C não se lê vetores assim. Nem sei se é possível trabalhar com vetores de strings Citar Link para o comentário Compartilhar em outros sites More sharing options...
Gabriel Vincent Postado 2 de novembro de 2010 Autor Denunciar Compartilhar Postado 2 de novembro de 2010 correcao: stringOriginal.length essa linha aqui tá dando erro: strAux += stringOriginal.charAt(i); diz que ":request for member 'charAt' in something not a structure or union" Citar Link para o comentário Compartilhar em outros sites More sharing options...
KOSTON Postado 2 de novembro de 2010 Denunciar Compartilhar Postado 2 de novembro de 2010 (editado) essa linha aqui tá dando erro: strAux += stringOriginal.charAt(i); diz que ":request for member 'charAt' in something not a structure or union" Olá amigo. Achei que fosse java. Para C, strAux += stringOriginal deve funcionar. Abraço. Editado 2 de novembro de 2010 por KOSTON Citar Link para o comentário Compartilhar em outros sites More sharing options...
Gabriel Vincent Postado 2 de novembro de 2010 Autor Denunciar Compartilhar Postado 2 de novembro de 2010 Olá amigo. Achei que fosse java. Para C, strAux += stringOriginal deve funcionar. Abraço. Obrigado, mais uma vez, mas na verdade é Objective-C! Se souber tambem, agradeceria a ajuda ^^ Citar Link para o comentário Compartilhar em outros sites More sharing options...
franzSilva Postado 4 de novembro de 2010 Denunciar Compartilhar Postado 4 de novembro de 2010 (editado) NSString? Crie um método que faça isto. Existem alguns exemplos por aí... Tente isto: #import <Foundation/Foundation.h> @interface NSString (Extended) -(NSString *)reverseString; @end @implementation NSString (Extended) -(NSString *)reverseString { NSInteger l; NSMutableString *ostr = [NSMutableString stringWithCapacity:[self length] ]; for(l=[self length]-1; l>=0; l--) { [ostr appendFormat:@"%C", [self characterAtIndex:l] ]; } return ostr; } @end Utilizando: int main() { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSString *test = [@"!A string to be reverted!" reverseString]; NSLog(test); [pool release]; return 0; } Editado 4 de novembro de 2010 por franzSilva Citar Link para o comentário Compartilhar em outros sites More sharing options...
Gabriel Vincent Postado 4 de novembro de 2010 Autor Denunciar Compartilhar Postado 4 de novembro de 2010 Obrigado, mais uma vez, mas na verdade é Objective-C! Se souber tambem, agradeceria a ajuda ^^ OBRIGAAADO, CARA!!! resolveu meu problema!!!!! Só precisei fazer algumas alterações pra Cocoa Touch e voilà! Gradcido! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados
Participe do debate
Você pode postar agora e se registrar depois. Se você tem uma conta, entre agora para postar com ela.