NSDictionary+Model.m 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. //
  2. // NSDictionary+Model.m
  3. // 乐销
  4. //
  5. // Created by liuhuiping on 2017/11/29.
  6. // Copyright © 2017年 ping. All rights reserved.
  7. //
  8. #import "NSDictionary+Model.h"
  9. @implementation NSDictionary (Model)
  10. - (double)doubleValueForKey:(NSString *)key{
  11. //判断key类型
  12. if (key && [key isKindOfClass:[NSString class]]) {
  13. id value = [self objectForKey:key];
  14. //判断value类型
  15. if (value&&([value isKindOfClass:[NSString class]]||[value isKindOfClass:[NSNumber class]])) {
  16. return [value doubleValue];
  17. }
  18. }
  19. return 0;
  20. }
  21. - (int)intValueForKey:(NSString *)key{
  22. //判断key类型
  23. if (key && [key isKindOfClass:[NSString class]]) {
  24. id value = [self objectForKey:key];
  25. //判断value类型
  26. if (value&&([value isKindOfClass:[NSString class]]||[value isKindOfClass:[NSNumber class]])) {
  27. return [value intValue];
  28. }
  29. }
  30. return 0;
  31. }
  32. - (BOOL)boolValueForKey:(NSString *)key{
  33. //判断key类型
  34. if (key && [key isKindOfClass:[NSString class]]) {
  35. id value = [self objectForKey:key];
  36. //判断value类型
  37. if (value&&([value isKindOfClass:[NSString class]]||[value isKindOfClass:[NSNumber class]])) {
  38. return [value boolValue];
  39. }
  40. }
  41. return 0;
  42. }
  43. - (NSNumber *)numberValueForKey:(NSString *)key{
  44. //判断key类型
  45. if (key && [key isKindOfClass:[NSString class]]) {
  46. NSNumber *value = [self objectForKey:key];
  47. //判断value类型
  48. if (value && [value isKindOfClass:[NSNumber class]]) {
  49. return value;
  50. }
  51. }
  52. return 0;
  53. }
  54. - (NSString *)stringValueForKey:(NSString *)key{
  55. //判断key类型
  56. if (key && [key isKindOfClass:[NSString class]]) {
  57. NSString *value = [self objectForKey:key];
  58. //判断value类型
  59. if (value && [value isKindOfClass:[NSString class]]) {
  60. return value;
  61. }
  62. }
  63. return @"";
  64. }
  65. - (NSArray *)arrayValueForKey:(NSString *)key{
  66. //判断key类型
  67. if (key && [key isKindOfClass:[NSString class]]) {
  68. NSArray *value = [self objectForKey:key];
  69. //判断value类型
  70. if (value && [value isKindOfClass:[NSArray class]]) {
  71. return value;
  72. }
  73. }
  74. return @[];
  75. }
  76. - (NSDictionary *)dictionaryValueForKey:(NSString *)key{
  77. //判断key类型
  78. if (key && [key isKindOfClass:[NSString class]]) {
  79. NSDictionary *value = [self objectForKey:key];
  80. //判断value类型
  81. if (value && [value isKindOfClass:[NSDictionary class]]) {
  82. return value;
  83. }
  84. }
  85. return @{};
  86. }
  87. @end