Objective-Cで数値から文字列への変換、文字列から数値への変換

整数を文字列へ


int x = 100;
NSString *str = [NSString stringWithFormat:@"%d", x];

実数を文字列へ


float x = 1.2345f;
// 小数点以下2桁まで
NSString *str1 = [NSString stringWithFormat:@"%.2f", x]; // 1.23
// 3桁
NSString *str2 = [NSString stringWithFormat:@"%.3f", x]; // 1.235(四捨五入される)
// 5桁
NSString *str3 = [NSString stringWithFormat:@"%.5f", x]; // 1.23450(0埋めされる)
// 桁数指定なし
NSString *str4 = [NSString stringWithFormat:@"%f", x]; // 1.234500(小数点以下6桁まで?)

double y = 1.23456789;
// 桁数指定なし
NSString *str5 = [NSString stringWithFormat:@"%f", y]; // 1.234568(小数点以下6桁まで?)
// e を使った表記
NSString *str6 = [NSString stringWithFormat:@"%e", y]; // 1.234568e+00

うーん、何だかめんどい。。。
そして、計算機みたいに小数以下の桁数を動的に変えるにはどうすれば?


どうやら%gでよさげ。


NSString *str7 = [NSString stringWithFormat:@"%g", x]; // 1.2345
NSString *str8 = [NSString stringWithFormat:@"%g", y]; // 1.23457

あれ?str8はstr6と同じになると思ったんだけど?よく分からないです。。。


ちなみに、書式の一覧はstringWithFormatのリファレンスからString Format Specifiersへのリンクを辿れば見られます。

日本語で説明してくれてる方もいらっしゃいます。
http://d.hatena.ne.jp/nakamura001/20080912/1221229442
http://ameblo.jp/semodoki/entry-10461821084.html


文字列から数値へ


NSString *str = @"1.23456789";
int x = [str intValue];
float y = [str floatValue];
double z = [str doubleValue];


これで間違ってないよな。。。寝よう。

はじめてのヤフオク出品

未使用のiPod touchを持っていました。
先月末にとあるきっかけでやっとヤフオクに出品しました。


9/2にAppleから新モデルの発表がされましたが、稼ぐつもりで出しているわけでもないので、まぁいいかと思っていました。


初めての出品だったので、期限が近づくにつれて自分の商品もページの上位に近づいてくるのが何だか楽しくて、早くトップページに来ないかなとワクワクしていました。


で、今日見てみたら。


いつの間にか大量の出品が。
9/2以降の出品がどんと増えてました。


注目のオークションがたくさん増えていて、みんなの売り急いでる感が伝わってきます。
市場とはそういうものなんでしょうけど、何だかいらないものを売りつけてる感じがしてしまいます。
新しいiPod touchのロゴ(カラフルな指紋のやつ)を商品画像に入れたりしているのもあって、ちょっと嫌なものを見た気持ちです。


でも、さすがというか、入札する方もちゃんと適正に判断してるっぽい感じで感心しました。

僕の出品は今までの相場よりも少し安い値段で売れていきました。

みんなこんな市場で経済感覚を鍛えていたんですね。


自分の相変わらずな世間知らずさと間の悪さを久しぶりに痛感しました(笑)