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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 17:53:34 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

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

前スレッド
【初心者】Java質問・相談スレッド113【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1204363011/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝のう存じます。

次スレは>>980あたりで。

792 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 19:41:14 ]
Java以前に、50枚切り替えとか常識的に考えて設計がおかしいだろ

どういう手段を実現したいのかではなくて、どういう目的を実現したいかを説明してみ

793 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 19:45:10 ]
業務アプリとか作ったことないのか…

794 名前:790 mailto:sage [2008/05/03(土) 19:45:29 ]
>>791
作成して初期化するって意味が解らん
新しい画面を表示するときにnewした所で一瞬
792も言っているが、まずは何をしたいかを説明した方がいい

795 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 19:46:17 ]
>>787>>788
有難うございました。本を見ながらなんとか出来ました。結城さんもうすこし分かりやすく書いてよ・・
StringBuilderとかまだ分からない言葉もありましたが助かりました。

796 名前:デフォルトの名無しさん [2008/05/03(土) 19:53:13 ]
>>792
詳しいことは省きますがあるアプリケーションを作っていて本当に様々な
操作をするのに50枚いるのですが、メニュー画面から親JPanelは50枚以上かな・・・
その上にももちろんJPanel載っています。そしてメニュー画面のボタンを押すと切り替えていっています。
そしてデータなどの入力・編集・印刷処理などをさせています。今現実的にうまくは動いているのですが、
ただ重たくて・・・できるだけ簡単に改造できればと思っています。
プログラムをロードするときに全部作っていてCardLayoutでばんばん貼り付けていました。
それをmediatorパターンで中央管理していたのですが・・・おそらくそこでJPanelを生成するクラスを作って
管理すればいいですかね?


797 名前:デフォルトの名無しさん [2008/05/03(土) 19:58:27 ]
>>793
その通りですw
言語処理系でプログラムをやっていたんですが急に業務用のアプリを速攻で作りましたw
Windowを使ってプログラムを書くのは初めてです。

>>794
インスタンスを作るという意味ですinit()やexit()をcallしています。
インスタンスを作ってあるものを。今はCardLayoutで切り替えて共通のインターフェースでinit()で
データの初期化やロードをしたりexit()メソッドを呼んだりしています。

798 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 20:55:24 ]
>>793
確かに業務アプリには糞設計のGUIが散見されるな

799 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 20:56:32 ]
m9(^Д^)

800 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 20:59:10 ]
>>796
重くなっている原因がJPanelの数って話は推測ですか、実測した結果ですか?
また、起動パラメータやJavaのバージョンをあげるなど、ソースに手を入れずに出来る対策はされましたか?

ちなみにSwingであれば、大雑把に1.4から5.0にすると2倍、5.0から6にすると1.5倍くらいのパフォーマンスアップが見込めます。
起動時のヒープ確保量のデフォルトも大きくなっています。



801 名前:デフォルトの名無しさん [2008/05/03(土) 22:09:01 ]
>>800
どうもです。
残念ながら推測です。ただグラフィックの資源を食いつぶしているのではないかと
感覚的にしかつかんでいません。今5.0 を使っていますが、6.0にするとそれだけの
パフォーマンスがアップするんですか・・・ちょっと考えて見ます。
実行時のパラメータはメモリ関係の方はかなりあげています。

もうかなりの人間が使っているのでソースはいじりたくないですからね。
何せ、今回GUIでWindow自体の開発は初めてでデザインパターンやJavaの本を短期間で
読みあさりどんどん書いていってしまったのでここに相談させていただきました


802 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 22:10:10 ]
>>798
質問している人間ではなく50枚も作るのかと言っている人間じゃないのか(笑)

803 名前:デフォルトの名無しさん [2008/05/03(土) 22:19:58 ]
教えてください、今ホームページを作っていてHTMLのsubmitボタンを押したときの
時間を取得するのは可能ですか?
昔本呼んだswingかなんかの処理ではたしかイベント処理があったと思うんが
HTMLのボタンでもイベント処理とかできるんですか?
初心者なんで可笑しなこと聞いてたらすみません

804 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 22:22:49 ]
Javaは関係なさそうな・・・
フォームとJavaScriptでいけるんじゃね?

805 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:11:19 ]
>>804
すいません、今Javaを習っていて
web3構築を使ってホームページを提出しなきゃいけなくて
どーしても押された時間によって処理したいことがあって
ちなみにJavaScriptはまったく分かりません
swingもまだ習ってないんですけど
たしか昔本で読んだことがあって



806 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:14:20 ]
>>805
Submitを押された時間ではなくて、Servletでリクエストを処理した時の時間ではダメなのか?
多少の誤差は出るが、十分な気がするけど。
むしろ、クライアント側の時刻なんて各マシンの時刻だから信用できるものでもないし。

807 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:14:33 ]
よくわからんけど課題って習ったことを使えばできることなんじゃないの?


808 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 00:15:23 ]
>>806
>Servletでリクエストを処理した時の時間ではダメなのか?
そういう方法もあるんですね、十分だと思います
ていうかDateクラスで得られる時間って
自分のパソコンに設定されている時間だってことに気付かされました
ありがとうございました
>>807
ショッピングサイトならなんとか作れそうなんですけど
落ちこぼれなんで、皆と違うものをと思ったんですけど
自分で調べろ的な学校だし
大人しくショッピングサイトのほうがいいかもしれません

809 名前:デフォルトの名無しさん [2008/05/04(日) 01:51:50 ]
例えばArrayListなどのインスタンスを、メソッドに引数として渡し、
メソッドの中で、そのインスタンスに対して操作を行うことは、
Javaのマナー的に、やらない方がいいのでしょうか?

810 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 01:55:56 ]
モジュール結合度が上がる (共有結合になる) のであまり良くはない。
まぁクラス内に閉じていて private 宣言されているようなユーティリティメソッドとかなら良いんじゃないの。



811 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 02:37:03 ]
ケースバイケース
禁忌ではない

812 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 04:19:14 ]
むしろ、弄られないことを想定している場合は
(そのメソッドが継承できるように公開されている場合は)
呼び出し側でコピーを作って渡すべき

813 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 05:13:28 ]
操作を行うって書いてあんじゃん。
それにコピーなんか作らなくても Collections#unmodifiableList() で十分。

814 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 08:00:49 ]
>>812
呼び出し側でコピー作るのか?
普通は呼ばれた方(コンストラクタ等)でコピーを作るんじゃね?
ArrayList(Collection col) とかそうだろ?

815 名前:809 mailto:sage [2008/05/04(日) 17:29:19 ]
>>810
>>811
どうもありがとうございます。
禁忌じゃないけど、あまり良くないという感じでしょうか。
ケースバイケースで考えてみます。

816 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 18:45:08 ]
>>814
コンストラクタでコピーするのは、
生成されたインスタンスが内部に保持するフィールドを防御するためで、目的が違う。

それにコンストラクタは、明示的にクラスを指定しなければいけないから
何をするべきかは、ドキュメントをみて決定していいと思う。

>>813
unmodifiable〜で十分なのは、ごもっともで

817 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 18:56:07 ]
>>815
むしろ、何が行われるかをドキュメントに書くことが重要
外見は同じでも、

/** ソートしたリストを返す。元のリストはそのまま */
List sort(List list)

/** 引数の list を破壊的にソートした後、そのリスト自身を返す */
List sort(List list)

の2つじゃ、使う側のどきどき感が違う

818 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 19:19:44 ]
ドキュメントは重要は同意
設計の方針としては、どんな使われ方しても自分のバグにならないように保守的にするのが良い。
コンストラクタの中でのコピーはそういう観点でもある。

819 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 21:11:25 ]
>>818
でもそれを徹底し過ぎると、メモリを無駄に馬鹿食いする危険性も。
Objectに変更可否フラグがあれば良かったのかもしれんが……。


820 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 21:13:37 ]
たいしてつかわねーよw



821 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 23:05:10 ]
>>819 それがドキュメントであり、設計なのでは?
シャローかディープのコピーでも違いがあると思うけど。

822 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 23:51:52 ]
そんなふうに色々考えているうちに、頭のCPUがフル稼働して、自分が何に悩んでいるかすら忘れ、結局は一番簡単で手抜きの設計に落ち着くわけです

823 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 00:13:50 ]
まさにYAGNIの原則。


824 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 01:24:07 ]
防御コピーは徹底しろ。それが嫌な奴はオブジェクト指向言語など使うな。
どうせ、「オブジェクトを作ると遅くなる」とか言い出すのだろうし。

825 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 01:29:29 ]
極論バカが来ました

826 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 01:42:13 ]
防御コピーが極論か。
オブジェクト指向がこの世に出てから半世紀近く経っているのにな。

827 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 01:50:24 ]
オブジェクト指向覚えたての社会人 2 年目かよw
でも経験少ないから適材適所のような程度問題が判断できないんだよな。

828 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 03:09:17 ]
全てのオブジェクトをイミュータブルにしてしまえばいいんだよ
停止し結晶化した世界は美しいぜ

829 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 03:11:13 ]
吟遊詩人が現れた

830 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 04:22:00 ]
>>828
それ何てErlang? まぁErlangだとI18N/L10Nが絶望的なので、実用を考えるなら
Scalaでありとあらゆるオブジェクトをvalで宣言するのが良さげ。



831 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 09:24:54 ]
[問題]与えられた9個の変数(int型)の中から最大値と最小値を求め、表示しろ。
[解1]3つのメソッドを作る
void setData(int...data){// ここでmaxとminを求める}
int getMax() {}
int getMin() {}
// こんな単純な問題でメソッドを3つも使う必要があるのか?

[解2]変数maxとminを持った内部クラスを作る
class Data {
int max;
int min;
}
Data getData (int...oneDatas) {// 最大値、最小値を求めDataクラスに格納して返す}
// なんか気持ち悪い。

先輩方はこのような宿題を出されたら、どのように解答したらいいと思いますか?

832 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 09:57:32 ]
どういう状況で出された問題なのか解らないのではっきりとは言えないが、解答として間違っていないとは思われ。
クラスという概念になれるっていう場面ならば、解1の方が良いと思う。
だけど、setDataでmaxとminを求めるのではなく、フィールドに変数を格納しておき、getMax, getMinで最大(最小)を求める方が良い。

解2の方は内部クラスとして定義しているだけならば、本質は解1と何も変わらん。
1つのメソッドで2つ以上の値を返す時には普通に使う。

833 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 09:58:48 ]
表示しろだろ?
素直にそのままやろうぜー
max(int ...data)とmin(int ...data)を作っておいてそれを利用して普通に出力かな
2回も走査しないといけないじゃないか!って気持ち悪い場合は、これくらいのロジックだしその場で書く。

これくらいで新たなクラスやら、その結果専用のクラスを作るのはどうかと思う。

834 名前:832 mailto:sage [2008/05/05(月) 10:01:00 ]
補足。
解1でフィールドに保持しておくと、メモリ使用の点、最大最小を求めるコスト的な点ではデメリット。
だが、そのクラスに「平均値を取得するメソッドを追加しろ」という仕様変更に強いのがメリット。
全ての処理をsetDataでやっている場合、まったく異なる性質のメソッドを追加しているのにもかかわらず、最大最小を求めるメソッドがデグレを起こす可能性があるからね。

835 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 10:09:41 ]
APIの使い方の話題なのか、for文とif文レベルの話題なのか、832の書くようなクラス設計の話題なのか、問題文に記述するべきだな。

836 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 11:19:13 ]
>>831
本題には無関係だが、dataは複数形で、単数形はdatumだ。
(dataを単数扱いすることもあるらしいが、どちらにしろdatasにはならない)

837 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 17:27:12 ]
アプレットが初期化されていませんって言うのはいったい何のエラーなんですか?

あとアプレットをhtmlに組み込むのって<body>の中に何か書く必要ありますか?

838 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 17:44:42 ]
アプレットが初期化できていないってエラーだ。
www.google.co.jp/search?q=java+%E3%82%A2%E3%83%97%E3%83%AC%E3%83%83%E3%83%88+%E5%85%A5%E9%96%80

839 名前:デフォルトの名無しさん [2008/05/05(月) 20:40:18 ]
すんません、メソッドについて質問させてください。

Aクラス
・メンバ変数ふたつ(static)
・メソッド(実行すると引数をもとに計算してメンバ変数の内容を書き換えるメソッド)

適当なクラスファイルでAクラスのインスタンスを生成して、
メソッドに引数を渡して処理をし、その次の行にAクラスのメンバ変数ふたつを呼び出したところ、
変数はどちらも初期値のままでした。なにがいけないのか全くわかりません。
どなたか教えていただけませんか。

メソッドは戻り値はなく、メンバ変数を書き換えるだけなのでvoid宣言してありreturnは書いてません。

840 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 20:46:27 ]
>>839
書き換えてないからでしょう



841 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:01:26 ]
>>840
どうして書き換えられていないのか心当たりになるようなケースありますか?

842 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:04:37 ]
まずはコードを貼るんだ

843 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:06:00 ]
とにかく問題のコードを書いてくれ

844 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:11:16 ]
開始時刻と終了時刻を入力して経過時間とともに表示するプログラムです。

package XXXXXX;

public class ex134{
/* クラスフィールド */
public static int hh, mm;

public int subTime(int h1,int m1,int h2,int m2){
mm = h2 * 60 + m2;
mm = mm - (h1 * 60 + m1);

/* 終了時刻が翌日であるケースの修正 */
if (mm < 0){
mm = 24 * 60 + mm;
}

hh = mm / 60;
mm = mm % 60;
}
}

845 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:15:01 ]
import XXXXXX.*;

public class XXXXXX{
public static void main(String[] args){
/* 変数 */
String buf;

/* インスタンス生成 */
KeyIn key = new KeyIn();
ex133 ex = new ex133();

/* 時刻の入力 */
//入力文省略

/* 経過時間の計算と表示 */
//省略

ex.subTime(h1, m1, h2, m2);

buf = " " + ex.hh;
buf = buf.substring(buf.length() - 2);
System.out.print("経過時間 " + buf + " 時 ");

buf = " " + ex.mm;
buf = buf.substring(buf.length() - 2);
System.out.println(buf + " 分");
}
}

846 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:17:14 ]
すいません、貼り付けた直後に自己解決しました。
インスタンス生成するとこのクラスファイル名を間違えていました。
voidもintになってた!本当にすいません。

847 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:34:45 ]
これもカーニハンの言うテディベアの話と同じ原理なんだろうか

848 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 21:39:32 ]
マーフィーの法則w

849 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 22:07:38 ]
>>832,834
わかりやすい説明ありがとうございます

>>833
getMin(int...datum)、getMax(int...datum)の二つのメソッドを作って提出したいと思います。
ありがとうございます。

>>835
問題のレベルとしてはif文、for文を正しく使うレベルだと思います。
しかし、授業ではメソッドやクラスを使うところまでは学んだので、これを使って問題を解いてみようと考えてみたら上手にメソッド分けが出来なくて・・・

>>836
英語の勉強をがんばりますXD

850 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 22:23:25 ]
必要のないところにオブジェクト指向的なプログラミングをするのは
不必要な複雑さを導入するだけ



851 名前:デフォルトの名無しさん [2008/05/05(月) 22:31:45 ]
JSPでFormから入力された文字列をInteger.parseInt()で
int型の数字にして利用しているのですが、例外処理の書き方が判りません。

Integer.parseInt()に"12345q"とか入った時点でエラー吐いて止まってしまいます。
どのように回避すれば良いのでしょうか?

852 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 23:31:50 ]
parseIntで発生する例外をcatchするか、charにばらして1文字づつチェックするか、正規表現で数値かどうかをチェックするか、好きにしろ

853 名前:デフォルトの名無しさん [2008/05/06(火) 00:22:03 ]
Java SEのダウンロードページにアクセスできません
このままでは仕事が出来ないので誰かインストーラうpしてください><><<<

854 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 00:33:37 ]
またかよ・・・
バージョンの指定はないな。
ほれ
sakuratan.ddo.jp/uploader/source/date80855.zip

855 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 00:59:50 ]
(;゚д゚)ァ....
本当に聞いてくれるとは思わなかった。ありがとう。
とはいうものの、今更バージョン違うなんて言い辛いorz

856 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 01:38:35 ]
applis.servehttp.com/ の 00013292.exe
パスはjdk6

857 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 03:46:59 ]
journal.mycom.co.jp/column/java/023/index.html
を参考に勉強していたのですが
下のコードがバイトコンパイルを通らず困っています
バージョンを変えないといけないのでしょうか?

$javac GenericClass.java
GenericClass.java:1: '{' がありません。
public class GenericClass<E> {
^
GenericClass.java:3: '}' がありません。
}
^
エラー 2 個

環境は以下の通りです
java version "1.6.0_03"
Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
Java HotSpot(TM) Client VM (build 1.6.0_03-b05, mixed mode)

858 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 03:54:22 ]
本当に1.6のjavac使ってるか?
javac -version
で確認してみろ。
1.4とか出てきたならば、pathを確認してみるべし。

859 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 04:11:38 ]
…間違ってました。orz

パスを確認したら1.4 を呼んでました。
ちなみに 1.4 では javac -version が用意されてないようです

860 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 16:26:41 ]
>>859
javac -J-version



861 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 18:07:30 ]
linkedlistで最後の要素を追加、削除するときは、その処理を実行するたびに先頭からたどっていくのでしょうか?
それとも前回参照した値からたどっていくのでしょうか?

862 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 18:40:15 ]
一般的な実装であれば最後に追加するのに先頭からどうこうすることはない。
気になるならば、ソース読んでみたら?

863 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 18:50:01 ]
実装軽く読んだけど、まあ少なくとも線形探索はやってない感じ

864 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 19:18:53 ]
www.kab-studio.biz/Programing/JavaA2Z/Word/00000319.html
↑を読むと
ただし、LinkedListクラスの要素を取得する場合、インデックスナンバーから直接取得することはできず、
先頭に当たる要素からリンクをたどって数えていき取得することになる。
そのため、データの取得はArrayListクラスよりも遅い。

という風に書いてあったんですけど、先頭から削除しても、最後尾から削除してもすべての要素を削除するのに
かかる時間に違いがなかったので質問させていただきました。

で更にぐぐってみたら
www.stackasterisk.jp/tech/java/collection02_02.jsp
↑に
削除する要素が後半だったら、最後尾から探索するって書いてあったんで理解しました

865 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 19:26:17 ]
先頭と最後尾へのアクセスに特化させて効率をよくしたのがLinkedListなんだよ
基本的なデータ構造なんだから覚えておけ

866 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 19:30:23 ]
バカが現れた。

867 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 19:51:16 ]
いやいや、釣りだろw

868 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 19:56:03 ]
彼は僕達には理解できないLinkedListの真理に到達したに違いない

869 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 20:06:28 ]
あぁ、まりちゃんね。

870 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 20:35:31 ]
VMが落ちると出力されるコアダンプについてですが、
ファイルを見ても何がなんだかさっぱり分かりません?_?

最低限、コアファイルから分かる情報は拾えるようにしたいのですが
コアダンプについて詳細に解説してるサイトを教えてくださいm(__)m
できれば日本語のサイトが良いです。



871 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 20:50:16 ]
コアダンプというのは、簡単にいえば、プログラムが動いていたときの
そのプログラムが使っていたメモリの状態をファイルに落としたもの。
落ちたプログラムをデバッガにかけるときに、死んだときの状況を再現する
ためにコアダンプを与えることが出来る。単体ではあまり意味はない。

デバッガとかgdbとかdbxという単語とペアでぐぐればいいと思う。


872 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 21:11:46 ]
ありがとうございます。
コアダンプ単体では意味がないのですね。
教えていただいた単語も含めぐぐってみます。

873 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 01:19:20 ]
wavを再生する際の音量を調節するにはどうすればいいのでしょうか?
調べては見ましたがどうもそれっぽいのが出てこず・・・

www.google.com/search?q=java+%E9%9F%B3%E9%87%8F%E3%80%80wav&hl=ja&lr=&client=opera&rls=ja&hs=wF5&start=20&sa=N

874 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 06:03:01 ]
[form.jsp]の入力フォームに入力された値をtxtファイルに書き出したいのですが、うまくいきません。
エラー無く[form_ok.jsp]に移動はしてくれるのですが、data.txtがどこにもつくられません。
どこをどう直すべきでしょうか。(改行が多すぎるとエラーが出たので、妙な改行になっています。すみません。)

[form.jsp]
<form action="form_ok.jsp" method="post">
<input type="text" name="data"><input type="submit" value="送信">
</form>

[form_ok.jsp]
<jsp:useBean class="form.form" id="mail" scope="session"/>
<html><head></head>
<%
String data = request.getParameter("data");
form.main(data);
%>
<body>(以下略)

[form.java]
package form; import java.io.*;
public class Mail {
public static void main(String data) throws IOException {
try{
FileOutputStream fos = new FileOutputStream("data.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932");
BufferedWriter bw = new BufferedWriter(osw);
bw.write(data);
bw.close(); osw.close(); fos.close();
}
catch(Exception e){ e.printStackTrace();}
}
}

875 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 10:44:23 ]
long型を使って19桁までの計算はできましたが、20桁以上の計算のやり方がわかりません。
具体的に言うと12345678901234567890*12345みたいな計算です。
お願いします。


876 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 10:49:06 ]
BigDecimal

877 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 12:40:27 ]
整数だけでいいなら BigInteger

878 名前:875 mailto:sage [2008/05/07(水) 13:46:56 ]
>>876-877
レスサンクスです。
それらについて検索して、色々やってみます。

879 名前:デフォルトの名無しさん [2008/05/07(水) 19:17:43 ]
プログラミング学びたいんだけどC、C++、JAVAどれから始めればいい?あとなんかいい本ある?

880 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 19:26:50 ]
>>879
初心者のためのプログラミング言語ガイド Part8
pc11.2ch.net/test/read.cgi/tech/1208186034/

目的を書いた方がいいよ
何のためにプログラミングを学ぶのか、具体的に何を作りたいのか



881 名前:デフォルトの名無しさん [2008/05/07(水) 20:17:39 ]
就活で使いたいんだよねー
今年学部で就活してみてIT技術の大切さが分かったから院でまた就活するときに使えるように
ITコンサルいきたいって思ってるんだけどなにがいいかな?多分企業によっても違うんだろうけど、一番使い勝手がいいのは何?

882 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 20:27:39 ]
こうやってまた学校が屑を押し付けてくるのか

883 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 20:34:05 ]
Cは、その選択肢の基礎になる。
Cができれば、UNIXのカーネルも読めるし。

884 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 21:51:57 ]
Cができればカーネルが読める、
英語ができればカーネルさんと話せる

885 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 22:01:46 ]
javax.swing.tree.DefaultTreeModelの仕様について質問です。

DefaultMutableTreeNode n1 = new DefaultMutableTreeNode();
DefaultTreeModel t = new DefaultTreeModel(n1);
System.out.println(t.getRoot()); => null

なぜnullが出るのでしょうか?
コンストラクタはrootを要求しています。
なのでn1がrootとして取得出来ると思うのですが、
どうすればn1がrootとして取得出来るようになるのでしょうか?
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/javax/swing/tree/DefaultTreeModel.html

886 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 22:15:00 ]
追記です。
加えて
System.out.println(t.getRoot()==null); => false
になります。
nullではないと言ってるのにnullが出るのはなぜでしょうか・・

887 名前:デフォルトの名無しさん [2008/05/07(水) 22:35:55 ]
ファイルの書き込みをFileWriterでやるのはうまく出来たのですが
書き込むときにまっさらにして書き込みたい時はどうするのでしょうか?

ループの中で一行のテキストを書き込んでるのですが、追記じゃなくて、その時書き込んだものだけが残るようにしたいです。

File file = new File("path");
file.delete();
FileWriter fw = new FileWriter(file);
fw.write("書き込むテキスト");

とかやってみたけど、ファイルサイズ0になってしまいました。

お願いします

888 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 22:49:49 ]
closeしろ

889 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 23:40:15 ]
>>885-886
> DefaultMutableTreeNode には、ユーザオブジェクトへの参照、つまりユーザが独自に定義するオブジェクトへの参照も格納できます。
> DefaultMutableTreeNode に toString() を指定してその文字列表現を要求すると、そのユーザオブジェクトの文字列表現を返します。
を踏まえたうえで
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/javax/swing/tree/DefaultMutableTreeNode.html#toString()
こいつが呼ばれているからだと思う


890 名前:超初心者 mailto:sage [2008/05/08(木) 00:08:55 ]
すみません。
.jadファイルと.jarファイルをアップして、
携帯でDLして、正常に起動できるようにしたいのですが、
どうすれば、いいでしょうか?
とりあえず、2つのサーバーの内、一つのサーバーでは、
アップしたデータが携帯で正常に起動する事が出来たのですが、
もう一つのサーバーでは、ミスマッチと表示され、起動できませんでした。
.jarファイルは、URL認証がOKのサーバーじゃないと無理なのでしょうか?
ちなみに、.htaccessに.jadと.jarのmime-typeは、追加しています。
すみませんが、どなたかご教授お願い致します。m(__)m




891 名前:デフォルトの名無しさん [2008/05/08(木) 08:52:56 ]
お邪魔します。同じく超初心者です。 課題でハングマンをいう文字当てゲームのプログラムを書いてる所なんですが、 なにやらもうにっちもさっちもいきません。 見本の一部がこんな感じです。
Word: _ _ _ _ _ _ _ _ _ _ _ _ _ _
Misses:
Guess a letter: a

Word: _ _ _ _ _ _ _ A _ _ _ A _ _
Misses:
Guess a letter: e

Word: _ _ _ _ _ _ _ A _ _ _ A _ E
Misses:
インプットされた文字をcharにストアしてanswerと照らし合わせて‥ みたいなとこですでに行き詰まってます。
for (int i = 0; i <= answer.length; i++) {
if (answer.charAt(i) == input) {
System.out.prin(input);
} else if (answer.charAt(i) !=input) {
System.out.print("_");
} } }
前に予想した文字もプリントしようとすると際限なく長くなっていっちゃうんですが‥‥
しかも答えはランダムに選ばれるので答えの文字数は不明です。 どんなループに入れたらいいんでしょうか?
それと予想された文字を正誤順番問わず繋げてストリングにストアしろという ヒントも出してもらったんですが‥
課題の目的としては、Boolean method, while loop, text processing、 あたりの知識を理解しろということみたいです。
かなり適当な説明ですが、なにかしらご教示いただけるととっても助かります。

892 名前:デフォルトの名無しさん mailto:sage [2008/05/08(木) 09:02:33 ]
>>889
どうしてそうなるの?
getRootでなんでそんなものを呼び出すのか分からない。
理由がないだろ






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

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

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