[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 03/25 14:30 / Filesize : 9 KB / Number-of Response : 45
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★Java質問・相談スレッド161★★



1 名前:デフォルトの名無しさん mailto:sage [2013/03/23(土) 11:43:57.99 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    pc11.2ch.net/hp/
Webプログラミング pc11.2ch.net/php/
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
★★Java質問・相談スレッド160★★
toro.2ch.net/test/read.cgi/tech/1361516065/

2 名前:デフォルトの名無しさん [2013/03/23(土) 18:42:22.38 ]
< `∀´>ニダー

3 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 03:19:47.47 ]
Eclipse Community Forums: CDT ≫ Redirect Input and Output
www.eclipse.org/forums/index.php/m/697301/

ここ見るとリダイレクトできるとか書いてあるが
引数の設定のとこに <hoge.txt とか >hoge.txt を書けとか
試してないから本当に出来るかは知らんけど

4 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 03:22:36.02 ]
>>3
CDTって書いてあるけどjavaでもいけんのか?

5 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 03:25:10.64 ]
toro.2ch.net/test/read.cgi/tech/1361516065/995
これつかって試してみればええねん

6 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 04:38:29.96 ]
Eclipseというのを入れてみたが糞重すぎてワロタ
ネットブックに入れるのは流石に無理かw
NetBeansってのはどうなんだろか

7 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 05:07:00.49 ]
>>4
できないよ

8 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 07:14:46.17 ]
前スレで気になったんだけど

for(;;)

ってどういう意味ですか?こういう特殊な書き方は名称を知らないとなかなかggってもヒットしなくて困りました

9 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 07:26:15.69 ]
for文で、ループの継続条件が省略された場合は、常にループを継続
for(;;) {...} は while(true) {...} と同じ

10 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 07:30:50.42 ]
>>9
どうもです
ちなみにforで書く場合とwhileで書く場合とでは何か違ってくるのですか?何かを意識した書き方とかあるのかな



11 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 08:08:22.10 ]
それを話し始めると不毛な論争に突入する的なもの
ちなみに俺は while(true) 派

12 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 08:58:50.79 ]
SoundAPIについて質問なのですが、ShotMessage.NOTE_ONを送信して1秒音を鳴らしたい場合、どのように書くのが普通ですか?
例えば

receiver.send(new ShortMessage(ShortMessage.NOTE_ON, 0, 60, 120), -1);
Thread.sleep(1000);
receiver.send(new ShortMessage(ShortMessage.NOTE_ON, 0, 60, 0), -1);

のように、ドの音をベロシティ120で送信し、Threadを1秒sleepさせ、その後ベロシティ0で再度送信する書き方をネットで見つけたのですが、このような書き方が普通なのですか?
これじゃ音はならないにせよドの音がベロシティ0で鳴り続けているような気がします・・・。
「何秒間鳴らす」をしたい場合、精度と処理速度を考えるとどのように書くべきなのでしょうか

13 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 10:51:59.22 ]
0HzなPCM音もヴェロシティゼロなMIDI音も、音圧ゼロと同じ事だと思うんだが

14 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 10:57:25.75 ]
>>13
音が鳴らないという点で同じであって他は違うんじゃ?

15 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 11:04:15.73 ]
AC'97チップやHD Audioチップにバックグラウンドで音波データ流し込んでいる
ソフトシンセか何かがVM内かドライバ内にいるんだろうが、気に病むことはない。

それでも心配なら外付けMIDI音源買おう。

16 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 11:18:28.16 ]
>>12
ベロシティゼロのノートオンはノートオフと同じ扱いと聞いた覚えがあるけれど
気になるならノートオフを送ればいいんじゃない
精度とかは送るタイミングを自分でうまいこと調整するしかない

17 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 11:21:01.83 ]
>>16
了解しました

18 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 12:48:55.31 ]
JAVAは、本買ってさらっとしか勉強しなかったんですが。
あらためて質問さして下さい。
以下のようなソース
public class Test01 {
public static void main(String[] args) {
byte b1 = 1;
byte b2 = 2;
コンパイルエラー // byte b3 = b1 *b2;
byte b3 = (byte) (b1 * b2);
System.out.print(b3);
}}
で、b1*b2がint型で返すという事ですが
となるとJAVAのメモリーレイアウトは、4バイトで
char,boolean,byte,shortは、それぞれ4バイトの領域をメモリー上にもっている
と思って良いですか?
どなたか、ご教示を。

19 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 12:50:20.31 ]
違う。演算が4バイトに昇格されて行われる場合があるだけ。

20 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 13:22:31.73 ]
馬鹿だけど自信満々



21 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 15:29:26.32 ]
>>6
javacとed使ってろ。

22 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 17:12:40.06 ]
>>10
1兆回ループ回したらwhile(true)のが0.13秒早かった

23 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 18:54:58.20 ]
>>10
for自体がwhileのよくあるパターンを構文化しただけじゃないの。そのパターンに当てはまらない無限ループはwhileの方が読み易いと思う。

24 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:01:41.33 ]
for文は配列専用
while文はList専用

と使い分けている

25 名前:デフォルトの名無しさん [2013/03/24(日) 19:11:19.30 ]
その使い分けの意図はよく解らない。

26 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:19:11.51 ]
昔から配列操作といえばfor文だったから
初期化子が中にあるというのが

ただしfor(:)の場合は例外

27 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:20:50.20 ]
反復回数が一定の処理ならfor文のほうがパッと見でソースが分かりやすい
反復子?って奴の変化が単調ならfor文、ループ内の処理次第で変わるならwhile

28 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:21:27.25 ]
>>24
iteratorの糖衣構文はforでしか使えないよなぁ。

29 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:36:11.65 ]
くだらんこといってないでruby勉強しろ

30 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 19:46:00.45 ]
はいはいrubyruby



31 名前:デフォルトの名無しさん [2013/03/24(日) 19:56:55.80 ]
forを使った方が反復子のスコープが小さいというのはある。

Iretator<String> i = list.iterator();
while(i.hasNext()){...}



for(Iretator<String> i = list.iterator(); i.haxNext();) {...}

ではiのスコープがループの外に出ないのでforの方が良いという場合はある。

32 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:11:55.74 ]
馬鹿には無理

33 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:47:35.57 ]
>>31
java6からだっけ、foreach使えるようになったらイテレータとか使わなくなった

34 名前:デフォルトの名無しさん [2013/03/24(日) 22:09:54.96 ]
remove使う場合など反復子そのものに用事があるときはforの糖衣構文ではなく
whileとか使う必要がある。

35 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 22:44:52.40 ]
ループ条件に定数式使っただけで警告をもりもり吐く
お節介な「品質向上システム」とかがあってだな・・・

36 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 23:36:08.36 ]
>>31
独習JavaだかEssential Javaだかにそんなことが載っていたような気がする

37 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 02:01:09.61 ]
Iteratorや糖衣構文のfor-eachは使うには便利だが、
自前で実装するとなると面倒臭い。

hasNext()でカーソル進めて、
next()でカーソルが指すオブジェクトを取得。

の方がずっと楽なのに、なんであんな仕様なんだ?

38 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 02:03:27.80 ]
Iteratorパターンってもともとそういうもんでしょ
わざとクラスを分割しているんだと

39 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 02:09:55.64 ]
ListIteratorつかって

List#get(nextIndex())

40 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 02:55:26.55 ]
>>39
配列や線形リストのIteratorなら自作でも割と簡単。

hasNext()で次のデータがあるか調べる(内部状態は変化しない)、
next()でデータを返す+カーソルを進める(データを返しつつ、内部状態も変化させる、だがremove()のために返したデータは記憶しておく)
っていうJavaのIteratorの仕様だと、

例えば、親ディレクトリを指定して、サブディレクトリを含む全ファイルを1つずつ返すIterator
なんてのを作るのがクソ面倒臭いのよ。



41 名前:デフォルトの名無しさん [2013/03/25(月) 06:44:21.10 ]
あまり難しい話は禁止ね
やめなさい

42 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 08:33:44.98 ]
>>40
そもそも、Genericsの仕様が難儀だからなあ
Genericsを意識しなかったら簡単につくたりして

43 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 09:05:16.73 ]
ArrayListのlistiteratorかiteratorでremoveがunsupportedで驚いた覚えが。
LinkedListを使えば良かったけど。

44 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 13:53:11.13 ]
>>40
commonsかどっかに、子Iteratorを連結するIterator実装があったよ






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<9KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef