黑马程序员技术交流社区

标题: 关于参数类型的问题? [打印本页]

作者: 王雪冬    时间: 2014-4-4 05:13
标题: 关于参数类型的问题?
本帖最后由  王雪冬 于 2014-4-4 11:56 编辑

类似  
-(int)pingfang:(int)num;
如果该方法我传入  double 类型的参数。会发生类型的强制转化吗?例如装箱和拆箱的操作?

作者: 程浩    时间: 2014-4-4 08:15
本帖最后由 程浩 于 2014-4-4 09:34 编辑

你之前学的java吧,
在java中,装箱就是值类型转换为object类型,拆箱相反:object转化为值类型
这里还没涉及装箱拆箱。
OC转换栗子:
  1. NSInteger转化 NSString类型:
  2.       [ NSString  stringWithFormat:  @"%d" , NSInteger];
  3. NSString转化 NSInteger类型:
  4.       NSInteger = [ NSString   intValue ]

  5. NSString *tempA = @"123";
  6. NSString *tempB = @"456";

  7. 1,字符串拼接
  8. NSString *newString = [NSString stringWithFormat:@"%@%@",tempA,tempB];

  9. 2,字符转int
  10. int intString = [newString intValue];
复制代码





作者: conpgy    时间: 2014-4-4 08:24
没有装箱拆箱。如果将double传递给int。直接截取整数部分。不过这样做会出现异常。当然你也可以不理。
作者: 王雪冬    时间: 2014-4-4 08:45
程浩 发表于 2014-4-4 08:15
你之前学的java吧,
在java中,装箱就是值类型转换为object类型,拆箱相反:object转化为值类型
这里还没涉 ...

谢谢你的解答,关于int 与string 转换明白了。还有上面的参数是int。如果传入double。例如13.5.那么形参在获取值时,会发生类型强制转换吗?
作者: 王雪冬    时间: 2014-4-4 08:47
conpgy 发表于 2014-4-4 08:24
没有装箱拆箱。如果将double传递给int。直接截取整数部分。不过这样做会出现异常。当然你也可以不理。 ...

谢谢,明白!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2