★★Java質問・相談スレッド165★★at TECH
★★Java質問・相談スレッド165★★ - 暇つぶし2ch75:デフォルトの名無しさん
13/10/26 22:49:29.27
ジャバのウンコさんたちはイテレータとかストリームとか難しいこといっぱい知ってるんですねT_T

76:デフォルトの名無しさん
13/10/26 23:03:26.53
うんこがしゃべった

77:デフォルトの名無しさん
13/10/26 23:11:47.50


78:デフォルトの名無しさん
13/10/26 23:17:14.24
>>74
なんの亀レスかと思ったら>>56のextentの話か

>(最後に入力したデータ)を読みにいっている
見えるか見えないかじゃなくて存在するかしないかの話。見えるのと存在するのと代入はそれぞれ違う。

>同じ名前でもループした分だけちゃんとクラスが作られてるんですね
javaはブロックスコープだからループ回すたびにコールスタックにスタックフレームpushするからループ回すたびに存在する、
ループ抜けるとスタックからpopするから存在しなくなる。これが繰り返されるから結果ループ回すたびにループした分だけちゃんとクラスが作られる。
無限ループするとStackoverflowするじゃん。スタック足らなくなって変数作れなくなったぜベイベー!って合図。

79:デフォルトの名無しさん
13/10/26 23:35:43.70
うんこをプッシュしたりポップしたりして長いループでベイベーなんですか?

80:デフォルトの名無しさん
13/10/26 23:40:59.16
例えば、80秒を1分20秒に変換してくれるフォーマットはありますか?

60秒に満たない場合は秒表示のみできると助かるんですが。

81:デフォルトの名無しさん
13/10/26 23:52:45.62
>>80
ない。
自作すれば。
簡単だし

82:デフォルトの名無しさん
13/10/26 23:52:56.95
>>78
>javaはブロックスコープだからループ回すたびにコールスタックにスタックフレームpushするからループ回すたびに存在する
違う。同じローカル変数を初期化して再利用してる。
コンパイラがブロックスコープで名前解決してくれてるだけ。

83:デフォルトの名無しさん
13/10/27 00:01:09.25
java6でもそうだっけ

84:デフォルトの名無しさん
13/10/27 00:07:49.07
実装次第と言えばそうなんだが、
C系の静的言語の設計ではブロック変数を>>82のように実装するのが大々大前提だからね
よほど今と大きく異なるアーキテクチャのマシンで動かすのでもない限りは変わることはありえない

85:デフォルトの名無しさん
13/10/27 00:30:51.25
>>81
30分ぐらい探してたので、ないと言ってもらえて助かりました。

private String fomatSecound(int secound){

int h = secound / 3600;
int m = (secound - (h * 3600)) / 60;
int s = (secound - (h * 3600) - (m * 60));

String duration;
duration = h == 0 ? "" : h + "時間";
duration = m == 0 ? duration : duration + m + "分";
duration = s == 0 ? duration : duration + s + "秒";

return duration;

}
こんなコード書いたんですけど、
もっとスマートな方法あったら教えてください。

86:デフォルトの名無しさん
13/10/27 00:57:47.01
jettyでspring3を使おうと思うのですが、怒られてしまいます。
何か設定が悪いからなのでしょうか?

SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.NoSuchFieldError: NULL
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:529)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)

87:デフォルトの名無しさん
13/10/27 02:40:28.26
軽く調べてみたらSpringの各コンポーネント間のバージョンのコンフリクトが
原因で起こっている事例がいくつか。

88:デフォルトの名無しさん
13/10/27 03:13:17.33
>>85
無いのなら自前で作ったものをライブラリとして公開するとかしたらとても

89:デフォルトの名無しさん
13/10/27 03:23:50.94
おし!ライブラリ公開だ!

class TimeFormater
{
  
  public static void main(String[] args) {
    int s = TimeFormater.toSeconds(7, 33, 55);
    System.out.println(TimeFormater.format(s));
    
  }
  
  public static int toSeconds(int hours, int minutes, int seconds) {
    return 3600 * hours + 60 * minutes + seconds;
  }
  
  public static String format(int seconds) {
    int h = seconds / 3600;
    int m = (seconds / 60) % 60;
    int s = seconds % 60;
    return (h > 0 ? h + "時" : "") + (h + m > 0 ? m + "分" : "") + s + "秒";
  }
  
}

90:デフォルトの名無しさん
13/10/27 03:28:32.61
>89

つ Joda PeriodFormatter

91:デフォルトの名無しさん
13/10/27 03:33:30.93
>>85
"Java time pretty print"でググればそれなりに方法は出てくる。
あと時刻に関してJavaでちょっと凝ったことをする場合はJodaが定番。

92:デフォルトの名無しさん
13/10/27 03:42:09.10
Joda便利杉ワロタ

Joda-Time - Java date and time API - Home
URLリンク(www.joda.org)

93:デフォルトの名無しさん
13/10/27 03:54:18.30
>>92
これはいいかも!
Calendarにはガバガバメモリーリークしてるバグがあるからなw

94:デフォルトの名無しさん
13/10/27 04:28:13.28
ヨーダのステマ

95:デフォルトの名無しさん
13/10/27 04:29:18.51
>"Java time pretty print"でググればそれなりに方法は出てくる。

英語で検索とは・・・日本語圏での情報は少ないってことか


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch