在原来的代码上有修改,主要为:

  1. 将准备随机数方法放到了init中,这样不用手动调用了
  2. setWeek方法已经过时,使用的是setWeekOfYear方法

在此放一份以备以后查找:

le.h

//
//  LotteryEntry.h
//  lottery
//
//  Created by kinds on 15/6/25.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface LotteryEntry : NSObject{
    NSDate *entry_date;
    int first_number;
    int second_number;
}

-(void)prepareRandomNumbers;
-(void)setEntryDate:(NSDate*)date;
-(NSDate *)entryDate;
-(int)firstNumber;
-(int)secondNumber;
@end

le.m

//
//  LotteryEntry.m
//  lottery
//
//  Created by kinds on 15/6/25.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import "LotteryEntry.h"

@implementation LotteryEntry

-(id)init{
    self = [super init];
    if(self){
        [self prepareRandomNumbers];
    }
    return self;
}

-(void)prepareRandomNumbers{
    first_number = ((int)random()%100) + 1;
    second_number = ((int)random()%100) + 1;
}

-(void)setEntryDate:(NSDate *)date{
    entry_date = date;
}

-(NSDate*)entryDate{
    return entry_date;
}

-(int)firstNumber{
    return first_number;
}

-(int)secondNumber{
    return second_number;
}

-(NSString *)description{
    NSDateFormatter *df = [NSDateFormatter new];
    [df setTimeStyle:NSDateFormatterShortStyle];
    [df setDateStyle:NSDateFormatterMediumStyle];
    return [[NSString alloc]initWithFormat:@"%@ = %d and %d",
            [df stringFromDate:entry_date],first_number,second_number];
}
@end

main.m

//
//  main.m
//  lottery
//
//  Created by kinds on 15/6/24.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "LotteryEntry.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSDate *now = [NSDate new];
        NSCalendar *cal = [NSCalendar currentCalendar];
        NSDateComponents *to_week = [NSDateComponents new];

        srandom((unsigned)time(NULL));
        NSMutableArray *mary = [NSMutableArray new];
        for(int i = 0;i<10;i++){
            [to_week setWeekOfYear:i];
            NSDate *from_now = [cal dateByAddingComponents:to_week toDate:now
                                                   options:0];
            LotteryEntry *le = [LotteryEntry new];
            //[le prepareRandomNumbers];
            [le setEntryDate:from_now];
            [mary addObject:le];
        }

        for(LotteryEntry *le in mary)
            NSLog(@"%@",le);
    }
    return 0;
}

objective-c随机数+日期格式显示一例的更多相关文章

  1. Weblogic页面应用查询oracle数据库后台报错或页面日期格式显示错误

    问题:在生产环境中有两台WEB服务器,分别为227和228,部署的应用代码都是每日同步的,两边完全一致,但是某些页面查询数据时,227无结果,并且后台报java数组越界的错误,而228一切正常.经开发 ...

  2. 关于JSON日期格式显示及My97日期控件

    1.My97日期控件.显示不同的日期格式,可以调整"dateFmt“的参数来配置: 详细DEMO:http://www.my97.net/demo/index.htm <p>日期 ...

  3. Swagger--解决日期格式显示为Unix时间戳格式 UTC格式

    在swagger UI模型架构上,字段日期显示为“日期”:“2018-10-15T09:10:47.507Z”但我需要将其作为“日期”:“2018-9-26 12:18:48”. tips:以下这两种 ...

  4. Oracle查询结果中的日期格式显示到毫秒数,如何去掉多余的数

    @Temporal(TemporalType.TIMESTAMP) @Column(name="createTime",nullable=false) private Date c ...

  5. SAS 日期格式显示年月的format

    首先要感谢bobguy在人大论坛上的帮助!之前和webgu也在圈子里讨论过这个问题,只找到一个yymmn6.的format,只能应用于yyyymm的情况.有了bobguy大侠的帮助,我们现在就可以表达 ...

  6. 【Linux】date命令用法详解(日期格式)

    inux下date命令用法 date [OPTION]… [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] date命令参数 ...

  7. Java基础(37):Java中日期的显示与格式定值----Date与SimpleDateFormat的试用

    使用 Date 和 SimpleDateFormat 类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取 ...

  8. iOS之获取当前时间日期并按固定格式显示

    写一个常用的获取当前日期,时间的代码.并且能以规定的格式显示出来 1 2 3 4 5 NSDate *currentDate = [NSDate date];//获取当前时间,日期 NSDateFor ...

  9. SQL显示某月全部日期明细以及SQL日期格式

    SQL显示某月全部日期明细<存储过程> 方法一: declare @date datetime declare @end datetime ,getdate()) ,@date) crea ...

随机推荐

  1. Java: How to resolve Access Restriction error

    Issue: Access restriction: The constructor 'BASE64Decoder()' is not API (restriction on required lib ...

  2. Android获取当前网络状态

    Android获取当前网络状态 效果图 有网络 没有网络 源码 下载地址(Android Studio工程):http://download.csdn.net/detail/q4878802/9052 ...

  3. JDK的安装以及配置

    JDK的安装以及配置 JDK(Java Development Kit),顾名思义,是 Java 语言的软件开发工具包(SDK). Android发开使用Java语言,所以装JDK是Android开发 ...

  4. [Python]程序性能分析

    有些脚本发现比预期要慢的多,就需要找到瓶颈,然后做相应的优化,参考A guide to analyzing Python performance,也可以说是翻译. 指标 运行时间 时间瓶颈 内存使用 ...

  5. 1Nginx+fastdfs分布式文件存储

     准备,将所需的软件传到服务器上,服务器的列表如下: fastdfs-nginx-module_v1.15.tar.gz FastDFS_v4.06.tar.gz libevent-2.0.21- ...

  6. 【一天一道LeetCode】#350. Intersection of Two Arrays II

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given t ...

  7. Cocos2D:塔防游戏制作之旅(十五)

    Yes,貌似添加了好多的代码啊 ;] ,在你添加更多代码时,你可能注意到一些Xcode中的一些警告.首先你先忽略这些警告,我们先添加少量最终缺失的部分,然后再来解释上面代码做了什么! 在Enemy.m ...

  8. (NO.00003)iOS游戏简单的机器人投射游戏成形记(十七)

    现在玩家选择机器人后,可以在屏幕上或手臂上点击来移动robot's arm了. 但是玩家选择一个机器人后没有视觉效果来表明哪个机器人被选中.玩家做了一个操作后没有视觉反馈会惹恼强迫症用户滴 ;) 这篇 ...

  9. 海量数据挖掘MMDS week7: 相似项的发现:面向高相似度的方法

    http://blog.csdn.net/pipisorry/article/details/49742907 海量数据挖掘Mining Massive Datasets(MMDs) -Jure Le ...

  10. 安装mysql到服务器的linux环境下

    1·安装mysql 命令:yum -y install httpd php mysql mysql-server 2·配置mysql 配置开机启动服务 /sbin/chkconfig --add my ...