如何在iPhone上将字符串存储在变量中?

如何在iPhone上将字符串存储在变量中?,iphone,objective-c,xcode4.2,Iphone,Objective C,Xcode4.2,我将字符串值传递给一个方法,但无法获取存储的变量值。这是我的密码: NSString username = @":ram"; NSString geder = @":gender"; [twoclass newDetails:username:gender] 我的方法是: NSString *twoclassname; NSString *twoclassgender; -(void)newDetails:(NSString *)name:(NSString *)gender{ //s

我将字符串值传递给一个方法,但无法获取存储的变量值。这是我的密码:

NSString username = @":ram";
NSString geder = @":gender";

[twoclass newDetails:username:gender]
我的方法是:

NSString *twoclassname;
NSString  *twoclassgender;

-(void)newDetails:(NSString *)name:(NSString *)gender{

//saved the string here;

 twoclassname = name;
 twoclassgender = gender;

//print name value here

NSLog(@"2classname: %@",twoclassname);
}
我得到的输出类似于
2classname:ram
,我将这样分配给getter方法:

-(NSString *)getTwoclassname{
    return twoclassname;
   }
。。。当我调用此getter方法时,如下所示:

[self details:getTwoclassname];
但是,控制台输出显示null。我好像拿不到弦“ram”

我做错了什么

[self details:getTwoclassname];
这是在self上调用一个名为details的方法,使用参数gettwclassname

不清楚您从何处调用此代码,也不清楚在本例中self是什么,但是让我们假设它是从您首先设置详细信息的同一个类调用的

正确的语法是:

NSString *myString = [twoClass getTwoClassname];

myString将保存返回的值

可能是您的字符串没有保留

试一试


你说的对,我已经这样试过了,当我在其他方法中调用myString时,它显示为null?示例-(void)execute{NSLog(@“myString:%@”,myString);}console out put is(myString:(null))如何在hole类中访问此字符串?您需要更清楚地了解您的意思。目前,我不知道您的每个代码段在哪里,或者它们应该做什么。实际上,我必须使用存储的字符串值其他方法,当我尝试调用getTwoClassname方法时,它需要返回mystring.in类的值。
twoclassname = [name retain];
twoclassgender = [gender retain];