[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 03/30 12:48 / Filesize : 271 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

【初心者】Java質問・相談スレッド116【歓迎】



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

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

前スレッド
【初心者】Java質問・相談スレッド115【歓迎】
pc11.2ch.net/test/read.cgi/tech/1210529127/
次スレは>>990あたりで。

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/

577 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:00:01 ]
4月からIT企業に入社したヒヨッコです。いろいろ勉強のために調べていたらどうしても理解できないソースを見つけたので質問に来ました。
インタフェースの中にある以下のようなソースなんですが

public interface IntComparator{
public static final IntComparator
NATURAL_COMPARATOR = new IntComparator(){
public int compare(int i1, int i2){
return
i1 < i2 ? -1 :
i1 > i2 ? 1 :
0 ;
}
};
}
出典:ttp://mitv2.net/algorithm/sort1.html#IntComparator

1.「new コンストラクタ{メソッド名(引数){メソッド定義}}」という書式はこの他にも見かけたのですが、
これはこれから生成するインスタンスに含まれるメソッドを定義する構文という理解で正しいのでしょうか?また、その場合このメソッド定義はどのインスタンスに対して有効なのでしょうか?
(クラス定義と同じでこれ以降同じクラスから生成するインスタンス全てに有効?それともここで生成するインスタンスのみに有効?)

2.メソッドを定義する構文であるとすれば、抽象メソッドしか持たないはずのインタフェース内でメソッドを定義していることになります。
Eclipsにコピペしてみてもコンパイルエラーは発生しないようですが、本当にこのようなことが許容されるのでしょうか?

長文になってしまいましたが、よろしくお願いします。

578 名前:577 mailto:sage [2008/06/24(火) 21:01:02 ]
インデントきえたーーー

読みにくくてスイマセン…出典元を見ていただいたほうがいいかも知れません…

579 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:04:21 ]
>>578
専ブラならポップアップで見てみ

580 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:00:48 ]
>>577
それは匿名内部クラス、あるいは単に匿名クラス、もしくは無名クラスなどという。
指定したクラスかインタフェイス(その場合はIntComparator)を継承・実装している名前のないクラスを定義してnewする。
定義したメソッドは、そこで生成するインスタンスだけのもの。

581 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:09:13 ]
>>577
1回限りしか必要のないクラスの名前をわざわざ付けて名前空間を汚す代わりに
名無しのクラスからインスタンスを生成することができる。

書式的には、
new 親クラス(親クラスのコンストラクタの引数) { メソッド定義 }
みたいな感じ。

名前がないので、新しいメソッドを定義してもクラスを明示できないから呼べない。
大抵、親クラスのメソッドのオーバライドしないと意味がない。
クラスじゃなくてインターフェースでもおk

似たようなものに、配列の生成と初期化を同時に行う方法がある。
new int[] { 1, 2, 3, }
とか。
いちいち配列を入れる変数名を用意して名前空間を汚さずとも
そのままメソッドの実引数などに使える。

ただ、見づらいと言う人は多々居る。不毛な論争の種にどうぞ

582 名前:577 mailto:sage [2008/06/24(火) 22:51:54 ]
>>580
>>581
ありがとうございます。
読みながら想像してたのと大体合ってたようで一安心です。

クラスの中でインスタンスをいっぱい(50コとか)作るけど、そのうち1つだけメソッドの中身がちょっと違うときに使ったりするものなんですね。

もう少しこのソースがどんな動きをするのかを考えてみたいと思います。その過程で壁に当たったらまた質問に来るかもしれないので、そのときはよろしくお願いします。

583 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:28:01 ]
クラスの設計を、コードで直接行う場合のメリット、デメリット
を教えて下さい

584 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:22:10 ]
サイズを固定しないJTableを作りたいのですが、
可変長の二次元配列ってどうやって表現すればよいのでしょうか?
一次元でも実現可能なのでしょうが、コードが冗長になりそうで・・・

585 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:29:21 ]
>>584
配列じゃなくてコレクション使ったMODELで



586 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:52:08 ]
>>585
引数がVectorのDefaultTableModelを使うという事でしょうか?

587 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:53:39 ]
javaで図形処理をさせる課題が出て難しく感じたので
これを機に参考書を買おうと思っています。

wiki乗っている「コアJava2 Vol.1 基礎編」が良さそうだと思ったのですが
図形処理関係では他にどういう参考書があるか知りたいので
教えてください。

588 名前:デフォルトの名無しさん [2008/06/25(水) 01:20:12 ]
WebOTXでJavaを利用したアプリサーバを
構築してるんですが、なんというか情報が少なすぎる…
参考書があるか知りたいですが、探し方が悪いのか
丸善とかでは見つからなかった。

WebOTXでJavaをつかったアプリサーバ構築
みたいなテーマの本はないでしょうか・・・

589 名前:デフォルトの名無しさん [2008/06/25(水) 08:08:51 ]
Javaはガベジコレクション等プログラマがメモリを意識しないでいい利点があると聞いたのですが・・・

int[] a = {10, 9, 8, 7, 6}
int[] b = {1, 2, 3}
a = b;

とした時にC言語だとfree?されてないのでメモリが無駄になるのですが、Javaだとどうなるんですか?

590 名前:デフォルトの名無しさん [2008/06/25(水) 08:09:37 ]
↑{10, 9, 8, 7, 6} のメモリ領域が

591 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 08:23:43 ]
>>589
言語仕様で決まってるのは{10, 9, 8, 7, 6}の配列がガベコレ可能な状態になるってところまで。
どのタイミングで回収されるかは実装依存。

あと、C言語だと、スタックに確保されるんじゃなかったか? それ。

592 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 11:47:12 ]
指定した番号目の素数を出すにはどうしたらいいですか?

593 名前:デフォルトの名無しさん [2008/06/25(水) 11:49:39 ]
age

594 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 11:56:34 ]
素数を降順でリストに突っ込んで取だしゃいいだろ。

595 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 11:57:20 ]
>>594
すみません、素数を出すコードがわかりませんので。



596 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 12:03:16 ]
エラトステネスのふるいでググレ

597 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 12:06:59 ]
了解

598 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 12:41:32 ]
数日前にチャート表示のプログラムを相談したものですが、
ttp//plaza.rakuten.co.jp/meime/diary/200603310002
を参考にしてみます。相談に乗っていただきありがとうございました。

599 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 13:42:22 ]
>>594
なんで降順?

600 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 15:10:17 ]
そんなどうでもいいこと聞いてなんになるの?

601 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 15:22:59 ]
普通は昇順(1,2,3,5,7....)で何番目の素数とか言うだろw
降順の素数番目ってどうすんだw

602 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 17:11:11 ]
じゃあ昇順てことで

603 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:27:38 ]
スレ違いかもしれませんが、DoJaのコンソールの

Main :java.lang.NullPointerException Test
java.lang.NullPointerException
at MainCanvas.<init>(+40)
at Test.start(+7)
MainCanvas

このエラー出力の(+40)や(+7)はどういう意味ですか?


604 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:31:26 ]
バイトコードの位置
<init>メソッドの40バイトめとstartメソッドの7バイトめ

605 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:23:38 ]
進むほど↑↑なのが昇順。
進むほど↓↓なのが降順。




606 名前:デフォルトの名無しさん [2008/06/25(水) 21:47:03 ]
自分で使えるAPIをもっと増やしたいと思っている者ですが、みなさんの方でおすすめの本などあるでしょうか?
仕様を見ているだけではなかなか使いこなせず、使用例を見て理解したいと思うんですが、ソースをどこから探せばいいかとよく迷います。
自分のレベルですがJava歴は1年3ケ月、JSP、JSTLのタグを経て、GoFのデザインパターンを現在勉強しています。

ご教授、よろしくお願いします。

607 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:48:08 ]
new コンストラクタ(引数).メソッド(引数)

という構文を見たのですが(左辺には何も無し)、これは
staticでないメソッドを使いたい!でも他に使うものはないからインスタンスを作るまでも無い!
というときにインスタンスを介さずに非staticメソッドを呼び出すものと考えていいのでしょうか?

608 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:48:30 ]
>>605
時間軸で見た前方後方くらいにわかりづらいな

609 名前:デフォルトの名無しさん [2008/06/25(水) 21:59:50 ]
>>607
いや、newでインスタンスを生成してからメソッドを呼んでる形だよ、それは。
つまり
Hoge hoge = new Hoge(param);
Hoge.method(param);
の2行を
new Hoge(param).method(param);
に省略。

610 名前:デフォルトの名無しさん [2008/06/25(水) 22:01:36 ]
ああスマン、上のHoge
hoge.method(param)の間違い。

611 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:12:41 ]
>>577
なんでそんなものを作るのか。

java.lang.ComparableインタフェースとComparable#compareTo()メソッドがあるのに


612 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:15:07 ]
>>589
AtomicIntegerとか使えばいい

613 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:16:18 ]
>>607
インスタンスは必要だが参照として保持する必要がない場合に使う書き方
FileChanel channel = new FileInputStream(file).getChannel();
とかよく使うパターンかね

614 名前:607 mailto:sage [2008/06/25(水) 22:47:43 ]
>>609>>613
ありがとうございます。

内部ではインスタンスは作られているけれど、参照が無いから後から同じインスタンスをいじったりはできないということですね。
いまさらこんなこと聞くのもアレなんですが、Javaで言うところの「参照」というのはCでのポインタみたいなものと考えていいんですよね?
…ちょっと自信がなくなってきた…

>>611
出典のページによるとcompareToではオブジェクト同士の比較だけで、int同士の比較ができないから作っちまえということのようです。

615 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:07:51 ]
>>614
参照はポインタの一種と考えれば、まあ間違いはない。
ポインタで出来ることを全て参照でできないってくらい理解しておけばいいと俺は思う



616 名前:609 [2008/06/26(木) 07:50:26 ]
>>614
出典のページによるとcompareToではオブジェクト同士の比較だけで、int同士の比較ができないから作っちまえということのようです。

参考までに出典を教えて。説明を聞いてもIntegerクラスとのボクシング、アウトボクシングがある5.0以降なら、やはり611の言う通りと思えるので。
ボクシングの説明をただ省きたかっただけなのかもしれないけどね。

617 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 08:02:11 ]
IntComparatorを日本語ページでぐぐったら2003年に書いたページが出てきたけど。
これ1.5より前に書かれてるんだろうから仕方ないんじゃね?

618 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 09:47:01 ]
HtmlURLConnectionを用いてウェブページへのログインを実現させようとしています。
パケットキャプチャして、POSTの方はほぼ完全に一致させ、それに対するサーバーの応答も大丈夫だったのですが、その後こちらがGETするときにはPOSTの時に
URLConnection#setRequestProperty(String,String)で設定していたプロパティが完全にクリアされてしまい、サーバーから403が返ってきます。
具体的には、User-Agentが問題なようです。
GETの時のプロパティを設定するにはどのようにすればよいのでしょうか?

619 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 12:54:34 ]
JMFを使って動画の再生に成功。あとはタイムラインと文字を流すシステムをひっつければニコニコ動画の完成だ!


620 名前:616 [2008/06/26(木) 13:21:43 ]
>>617
おいおい、可能性高くてもWebで同じ名前のソース一つ見つけたからこれのこと言ってんだろってのは無謀だろ。
よしんばほんとにそうだとして、俺を納得させてどうするw
ここは614に「古いコードあてにしないで611の言うこと参考にしたほうがいい。」と言ってやるのが筋じゃないか。

621 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 13:25:43 ]
>>620
ってか、君こそ出典知ってどうするつもりだったん?

622 名前:デフォルトの名無しさん [2008/06/26(木) 14:59:17 ]
メモ帳からデータを読み込むプログラミングを作りたいのですがうまくいきません
以下が私の作成したものです。NetBeansを用いました。
メモ帳の中のデータは
1
2
です。
package javaapplication2;
import java.io.*;
public class Load {
public static void main(String[] args) {
try { //(1)
//(2)Fileオブジェクトの生成
FileReader fr =new FileReader("test.txt");
//(3)Fileオブジェクトの生成
int i,m,s,kai=0;
//(7)読み込みデータがなくなるまで読み込み
while ((i = fr.read()) != -1) {
s=i; //(8)書き込むデータがなくなるまで書き込み
m=i;
kai = s + m;
}
fr.close();
System.out.print(kai);
//(9)読み込みストリームを閉じる
//(10)書き込みストリームを閉じる
catch(IOException e) {
} }}

623 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 16:03:23 ]
>>622
コメントが意味分からないんだが、どうして欲しいんだ?
ついでにそれはメモ帳からデータを読み込むプログラムとは言わないだろw

624 名前:デフォルトの名無しさん [2008/06/26(木) 16:07:41 ]
>>622
どううまくいかないのか、期待したことと起きたことを明記してください。

625 名前:622 [2008/06/26(木) 16:34:45 ]
期待したことは、
1がsに入り2がmに入って、それらが足し算されkaiに3が入り
3が出力されるというものです。
起きた事は
100と出力されました。



626 名前:624 [2008/06/26(木) 16:47:12 ]
>>625
FileReader#read() は一文字(or一行?)を読むのではなく、1バイトを読み込みます。
”メモ帳の中のデータ”と言っている(おそらく)テキストファイルの先頭から1バイトづつです。
足す前に System.out.println("i="+i); 等と状況を表示する文を入れて実行し、どんな値が読み込まれているのか確認してみてください。
またどうしてそうなるのか、”メモ帳の中のデータ”をファイルダンプツールで見てみると良いでしょう。

627 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 16:49:32 ]
>>625
e-words.jp/p/r-ascii.html

sには最初'1'、つまり49が入る。
次に復帰改行で13、次に10が入る。
そして最後に'2'、つまり50が入る。

mも全く同じもの入れてるんだから、同じ。
つまり50+50=100が出力されてる。

628 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 17:36:11 ]
>>626
>FileReader#read() は一文字(or一行?)を読むのではなく、1バイトを読み込みます。

これは非常に語弊があると思うんだけど。。

629 名前:624 [2008/06/26(木) 17:50:00 ]
私の作成したのもがどのように振舞っているかは、良くわかりましたが、
どのように修正すれば良いかアウトラインが見えないので、
教えてください。

630 名前:626 [2008/06/26(木) 17:51:23 ]
>>FileReader#read() は一文字(or一行?)を読むのではなく、1バイトを読み込みます。
>これは非常に語弊があると思うんだけど。。

そうでした、FileReaderは文字読みでした。
なので一行でも1バイトでもなく、一文字が正解です。ごめんなさい。

631 名前:630 [2008/06/26(木) 17:54:29 ]
>>629
一行を文字列として読み込むというメソッドを持つクラスがあるので探してみてください。

632 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 18:07:56 ]
>>622
繰り返しによって合計を取る方法(どう考えても基本です)をおさらいすることも重要かと。

ちなみに、mとかsというのは何かの略ですか?気になる。

633 名前:624 [2008/06/26(木) 18:08:04 ]
>>631
ありがとう

634 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 18:52:03 ]
pc11.2ch.net/test/read.cgi/tech/1212085079/259
このスレでちょっと出てたのをみて興味がわいたのですが、Javaで配列の要素側から、その要素を含む配列を取得することって出来ますか?

635 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 18:55:41 ]
基本無理。その要素に、それを含む配列を持たせたらできるけどあほらしいし・・



636 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 19:18:47 ]
質問なんですけど、夏にjavaプログラマのSJC-Pの試験を受けるため勉強してるんですが、
問題集しか購入してなく、用語の解説や流れなどのった教科書が欲しいところなのですが
お勧めの本とかないですか?友達がもってるSCCの教本見たら微妙だったんですよね。
問題集のほう「徹底攻略 Java2プログラマPlatform1.4」の黒本使ってます。
お勧めなどありましたら教えてください。


637 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 20:39:12 ]
質問です。

Java システムアイコンを抽出 / Chat&Messenger
ttp://sattontanabe.blog86.fc2.com/blog-entry-64.html

のサイトで、ウィンドウにドラッグドロップしたファイルのアイコンを取得する
サンプルプログラムが公開されているのですが、このプログラムでは
16*16サイズのアイコンを取得することしか出来ません。

Fileから32*32もしくはそれ以上のサイズのアイコンを取得する方法はありますか?

638 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 21:27:39 ]
>>637
無理っす。

639 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 22:47:09 ]
メソッド名の書き方について質問です。

メソッド名が長くなるので略して書きたいのですが、その場合大文字小文字の区別はどうするべきでしょうか?

例として
aaaaaBbbbbCcccccDdddd
というメソッド名を短くしてABCDという名前に略すのですが、これだと規約から外れてしまいます。
そこで
1.aBCD
2.abcd
3.aaaaaBbbbbCcccccDdddd(略すべきではない)
4.その他

どれがいいのでしょうか?

640 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 22:53:52 ]
aaaaaBCDとか

641 名前:使用書無しさん [2008/06/26(木) 23:00:45 ]
netBeansとかいまどきのIDE使ったら自動補完してくれるので、後々の読みやすさ
考えたら略さないほうがいいと思うけど。

642 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 23:18:47 ]
>>639
略し方すらわからなくて人に聞かなきゃいけないレベルなら略さない方が良いと思うぞ。

無意識のうちに>>639が望む回答するように情報隠してる可能性もあるし。
例えば、命名規約のルールだって全部出してるわけじゃないでしょ。

643 名前:使用書無しさん [2008/06/26(木) 23:22:59 ]
634<< 配列よりVectorつかったらどうだ。
class A {
      public B parent=null;
      public void setParent(B parent){
           this.parent=parent;
      }
      public B getParent(){
            return parent;
      }
}

class B extends Vector<A>{
      @override
      public void add( A child){
             child.setParent(this);
             super.add(child);
      }
     public void add(int index,A child){
             child.setParent(this);
             super.add(index,child);
     }
}
こんなもんかな。

644 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 23:43:35 ]
>>639
長すぎるってのはクラスの設計が良くない兆候。
aaaaaBbbbbCcccccDdddd というメソッドが HogeManagerとかにあるんだろ、どうせ。
HogeAaaaBbbbクラスをつくり、ccccDdddってメソッドを作るような状況な筈

645 名前:デフォルトの名無しさん [2008/06/27(金) 00:05:06 ]
>>624
ファイルからのデータの読み取りにはcsv形式が便利(基本)。(「1,2」とか書いてtest.csvを準備。)
以下はCSVテキスト上で同じ行にある数値の合計を順次算出して別ファイルに集計する例
package javaapplication2;
import java.io.*;
import java.util.*;

public class Load {
public static void main(String[] args) {
//データ格納用Listの準備
List<String[]> list = new ArrayList<String[]>();

try {

FileReader fr =new FileReader("test.csv");
BufferedReader bf = new BufferedReader(fr);

String st = null;
while ((st = bf.readLine()) != null) {
String[] line = st.split(",");
list.add(line);//ファイル上1行の各数値を文字列として格納
}
bf.close();





646 名前:デフォルトの名無しさん [2008/06/27(金) 00:05:38 ]
//計算結果データ格納用Listの準備
List<Integer> result = new ArrayList<Integer>();
int sum = 0;
for(String[] values: list){
for(String value: values){
int num = Integer.parseInt(value);//文字列を数値型に変換
sum += num;//同じ配列内の値の合計値を求める
}
System.out.println(sum);
result.add(sum);//合計値を格納
sum = 0;
}

FileWriter fw = new FileWriter("result.csv");
PrintWriter pw = new PrintWriter(new BufferedWriter(fw));

for(Integer val: result){
pw.println(val);
}

pw.close();


}catch(IOException e) {
e.printStackTrace();
}
}
}

647 名前:639 mailto:sage [2008/06/27(金) 00:11:41 ]
レスどうもです。
今iアプリを作成してて複数単語を繋げて長くなったら打つのが面倒だから略して書けないか?
その場合どうするべきか?というのを軽く疑問に思っただけだったので、変な例を出してしまいましたが、
それがいけなかったようですので実際に作っているのを出してみます。

ダーツゲームを作成しているのですが、ゲームルールとしてスーパー・ラウンド・ザ・クロックというのがあります。
ルールクラスの中にスーパー・ラウンド・ザ・クロックメソッド(SuperRoundTheClock)を作るのですが、
この場合どうするべきか?というのが知りたかったのです。

ちなみに、SuperRoundTheClockぐらい打てよ!というのは無しの方向で・・・。
より長いものが出てきた場合に参考にしておきたいので。

648 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 00:17:54 ]
今どき補完できるエディタ使おうよ

649 名前:使用書無しさん [2008/06/27(金) 00:19:47 ]
>>647それjavaの質問というよりセンスの問題じゃねえ?
昔cobolやってたころなんか母音略して子音だけで名づけてたな
sprRndTheClckなんてな..

650 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 00:23:43 ]
>>647
その場合、RuleクラスのサブクラスとしてSuperRoundTheClockRuleを作成するのが定石だと思う。
なので、メソッド名は同じになりオーバーライドすることになる。

651 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 00:28:29 ]
>>647
頭字語で補完してくれるよ、最近のIDEは。
Eclipseの場合だと、sRTC で補完すると superRoundTheClock() が出てくる。
重複するものがなきゃもっと短かくてもOK。
あと、Javaではメソッド名の先頭は小文字な。

652 名前:639 mailto:sage [2008/06/27(金) 01:32:47 ]
開発環境が固定されていないため(自宅と学校で学校の中でもいろんな場所でやってる)エディタ変更は厳しいです。
今は全マシンにインストールされてるエディタがあるのでそれを使っています。
今後は略さずに補完機能のあるエディタを使って開発する事がベストということですね。

>>650
上の例で突っ込まれそうな予感はしてましたが、突っ込まれてしまいました。
これはRuleクラスでメンバと抽象メソッドを作ればよいということでいいんでしょうか?




653 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 01:51:06 ]
>>652
そのとおり。ストラテジーパターンで。
感覚は掴めていそうに見えるから、ググって実装例を見てみるといいと思う。

もっとも、ルールが2種類しかないとか言うなら、デザパタを適用するまでも無いけどね。

654 名前:639 mailto:sage [2008/06/27(金) 02:09:48 ]
>>653
ルールは追加する予定ではいますが、時間の都合上、最悪superRound・・・だけというのも有り得ます。
が、勉強のためにそれでやってみようと思います。

655 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 06:32:30 ]
>>635
ありがとうございます



656 名前:デフォルトの名無しさん [2008/06/27(金) 15:32:50 ]
JSFでSSLは実現できますか

657 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 16:09:57 ]
JDBCのresultsetのgetObjectで取得したデータの
型を取得する方法をご教示ください。

やりたいことは
resultsetのgetObjectによって
取得されたデータで作成された
ArrayList内データをcsvに出力する汎用的な
メソッドを作成しています。

そのArrayList内のデータで、文字型なら「"」で
くくりたいと考えています。

public void createCSV(List table) {
 //tableはgetObjectで取得したデータが渡される。
 for (int r = 0; r < table.size(); r++) {
  List rec = (ArrayList)table.get(r);
  for( int c = 0; c < rec.size(); c++ ) {
  //ここでrec.get(c)のデータ型を知りたい。
 }
・・・
}

658 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 16:13:48 ]
>>657
if (rec.get(c) instanceof String) {
...
} else {
...
}

659 名前:デフォルトの名無しさん [2008/06/27(金) 16:15:55 ]
getClass().getName()
の方が早くね

660 名前:デフォルトの名無しさん [2008/06/27(金) 16:24:39 ]
>>658-659
即レスでありがとうございます。
無事やりたいことができました。
勉強になりました。

661 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 22:55:13 ]
少し前に為替レートの取得法を相談したものですが,URLConnectionをつかってそのサイトのデータ引き落としは上手く行きましたが、
やはりレートを秒単位でリアルタイム表示しているところはとる事が出来ず行き詰ってしまいました・・
何かいい案はないでしょうか?

662 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 23:17:54 ]
クラス図での表現を教えてください。
(属性と操作は省略していいそうです)
そのクラス図がどのような現実世界の仕掛けを表現したものか
も教えてください。

Course Person Professor ShedcleOfClasses Section
Student Transcript TranscripEntry

663 名前:661 mailto:sage [2008/06/27(金) 23:44:49 ]
すいません。いろいろ試した結果為替レートの取得できるようになりました。
申し訳ありませんでした

664 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 00:35:59 ]
'else'への'if'がありません
ってどうすれば解決できるんでしょうか?

665 名前:639 mailto:sage [2008/06/28(土) 00:41:43 ]
問題になってるif文をここに貼り付ければ?



666 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 00:42:51 ]
ifまわりの括弧がおかしいとかだろうな

667 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 01:10:59 ]
www.objectstart.com/downloads.html
にある下から2番目のClick here to access a
Zip file containing the Java 1.5.x version
of source code for the second edition of BJO.
(This version of source code will not compile
with Java 1.4.x or earlier compilers.)
のファイルにあるCh14のCourse Person Professor
ShedcleOfClasses Section
Student Transcript TranscripEntry
のクラス図を教えてください


668 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 09:45:47 ]
>>667
クラス図がどんなものか知ってて、ソースコードがあれば
他人に聞く必要のあることなんてこれっぽっちも無いと思うぞ。

描くのが面倒臭いのか?
もしそうなら、ソースからクラス図を吐き出すツールを作ればいいじゃない。

あとは、それくらいの発想なら世の優秀な兄者どもが
既に思いついてるんだろうな〜って感じで、ググっちゃいなヨ。

↓はJudeっていうツールだけど、ソースからクラス図作成もできるので便利よ
ttps://jude.change-vision.com/jude-web/index.html

ちなみに ShedcleOfClasses じゃなくて ScheduleOfClasses ね

669 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 13:56:52 ]
☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ毎日新聞社による日本人女性への誹謗中傷☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ☠ฺ

・母親は受験勉強をする息子の学力向上のためにフェラチオをする
・日本人女性の55%は、出会ったその日に男と寝る
・ファストフードは女子高生たちを性的狂乱状態におとしいれる
・ティーンたちはバイアグラを使ってウサギのようにセックスをする
・女子高生は、刺激のためにノーブラ・ノーパンになる
・日本の最新の流行 : 70歳の売春婦
・老人の売春婦の人気にもかかわらず、日本では小学生の売春婦にも仕事がある
・日本の若い看護婦は売春婦に勝る
・24時間オルガズムが止まらない病気で苦しむ日本人女性の数が増えている
・15未満の子供を対象とした疑似ポルノが日本に蔓延している
・OLの72%が、セックスをより堪能するために何らかのトレーニングを受けている
・人妻は気分転換の目的で昔の恋人に抱かれに行く
・主婦は郊外のコイン・シャワーで売春をしている
・日本男子は柔道や空手の部活で男相手に童貞を捨てている
・ほとんどすべての漁師は海でマンタとSEXしている
・まだ10代の少年から退職した老人までみんな2980円の手コキを利用している
・六本木のあるレストランでは、食事の前にその材料となる動物と獣姦する

※同社が全年齢向けコーナーで七年以上にわたり世界に向けて配信していたものの一部です
※同社の行為は日本人への偏見や人種差別、婦女暴行、幼児虐待を助長するものです

◆毎日新聞の英語版サイトがひどすぎる まとめ@wiki
 www9.atwiki.jp/mainichiwaiwai/
◆毎日新聞問題の情報集積wiki
 www8.atwiki.jp/mainichi-matome/

つまり日本国民は
www.vipper.net/vip552788.jpg

670 名前:デフォルトの名無しさん [2008/06/28(土) 17:55:22 ]
>>661
秒単位だとどうしてもソフトを間に挟むしかない
MT4などにDllフックするか優良サービスを得るか
www.dailyfx.com/charts/ChartStation.html
で動いてるアプレットからデータを取得するのが無難

671 名前:デフォルトの名無しさん [2008/06/28(土) 18:03:12 ]
てか
前に答えてあったな

672 名前:デフォルトの名無しさん [2008/06/28(土) 18:13:48 ]
670訂正
○有料
×優良
だね

673 名前:デフォルトの名無しさん [2008/06/28(土) 21:11:44 ]
mysqlで100mbのデータをソートしたいのですが
ResultSetのインスタンスを所得した時点でメモリ不足になりました

また、ヒープのサイズを512MBに設定し、
100mbのCSVをCollectionsのsortメゾットでsortしたのですが
これもまたメモリ不足になってしまいました。

大量データをソートする場合どのような手段をとればいいのでしょうか



674 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 22:36:31 ]
マージソートの要領で、データ全体をメモリに入るサイズに分割して個別にソートし、最後にマージする

675 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 22:38:31 ]
ゲームプログラミングで一般的にルールを破った場合というのは例外を投げ、それを対処すべきでしょうか?
それとも、毎度ルールに沿っているかチェックして対処すべきでしょうか?



676 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 22:39:45 ]
入力された数字が一桁なら先頭に0をつけたすプログラムを書きたいのですが、
どうすればいいでしょうか・・・。
たとえば
6→06
としたいのです。
初歩的な質問過ぎてすいません。

677 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 22:44:06 ]
int num;
...
String numtext = String.format("%02d",num);






[ 続きを読む ] / [ 携帯版 ]

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

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