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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 15:21:29 ]
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下の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質問・相談スレッド101【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1177938653/

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

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

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

970 名前:デフォルトの名無しさん [2007/06/27(水) 00:04:19 ]
GC時に処理させたいならファイナライザを使うのは間違いじゃないと思うがね
最後までその機会が来ないことがあることは想定しておかないといけないが

971 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:06:53 ]
>>970
この質問の場合はfinalizeに処理させるのは間違いだろ。
一般論で質問者を惑わせるな。

972 名前:デフォルトの名無しさん [2007/06/27(水) 00:31:11 ]
便乗ですが

Socket s = new Socket(hogehoge);
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream(), "UTF-8"));

見たいな処理したあとの解放って
s.close();
だけでいい?
br.close();
も必要?
あるいは
InputStreamReader の close() とかもしとかないとだめ?


973 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:32:02 ]
>>970
この場合はGCに任せて良いかどうか判断するのが難しいだろう。
javaのファイナライザがどういうためのものかちゃんと理解してないならなおさら。

974 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:47:58 ]
>>957
JavaにXMLパーザってついてなかったっけ?

975 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:51:00 ]
HTMLはSGMLアプリケーションなんだが。
XMLパーサにHTML食わせても整形式エラー吐くと思うぞ。

976 名前:デフォルトの名無しさん [2007/06/27(水) 00:56:20 ]
>>974
ドキュメント検索したらHTMLパーサも付いてましたね
HTML->JAVA
JAVA->HTML
HTML->HTML

でXMLも噛ませられれば操作上は十分になってきますね

XMLパーサとサーブレット&JSPを使うとXSLは必要なくなるんでしょうかね?

ご回答いただいた方々、まことに有難うございました
いただいた回答の中のRhinoは有用性が高そうなので
検討してみます。


977 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:57:40 ]
>>972
(1) 使ってるラッパークラスのコンストラクタが例外を発生しないこと
(2) ラッパークラスの close がラップしてるクラスの close を呼び出すこと
を確認して、最も外側のクラスの close を対処すればいい。

978 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:57:53 ]
javax.swing.text.html.parser



979 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:03:51 ]
>>972
s.close() すれば
s.getInputStream() で得られたストリームも自動的に close() される。

sclose() してない時に br.close() した場合、成功すれば、
s も勝手に close() される。

980 名前:デフォルトの名無しさん [2007/06/27(水) 01:06:08 ]
>>979
IDEによってはエラーを吐きますね。
明示的にクローズした方がいいと思います。

981 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:06:11 ]
>>978
あれパーサでパースして結果をレンダラに渡す程度の使い道しか想定してないからなぁ。
パース結果を自分でハンドリングするなら他のライブラリの方が良い。
まあ、それ以前にHotJavaのパーサは3.2finalの独自拡張なんで現行とは少し違うが。

982 名前:デフォルトの名無しさん [2007/06/27(水) 01:09:33 ]
パーサの存在を知らなくて自作してしまったorz


983 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:12:37 ]
SGMLのパーサを実装できるほど程の知識と腕があるなら自前が良いけどなw
正規表現なんかで実装しちゃだめだぜ。

984 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:16:45 ]
javaでbigintの変数を宣言するときにはどのようにすればよいのでしょうか?
bigint a; のような感じにしても認識してくれません

985 名前:デフォルトの名無しさん [2007/06/27(水) 01:20:31 ]
java.math.BigInteger

986 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:22:04 ]
前にもあったぞこのネタ

987 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:25:03 ]
このスレはネタとバグでできています

988 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:30:27 ]
long型でないと数値がオーバーするので、long型の配列を作りたいのですが、
long p[]=new long[(int) (n+1)];だと結局エラーが出てしまいます。どうすればよいでしょうか?



989 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:36:05 ]
>>988
何がどうエラーが出るんだ?
明確なエラーが出るのにその状況とエラーメッセージを書かないのは問題を解決したくないからか?

990 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:41:38 ]
エラトステネスのふるいのメソッドをlong型に変更して扱える最大数を増やしたいのですが、上手く行かないのです。

public static int Primes(int n){
int i,k;
int x[]={0};
int p[]=new int[n+1];
for(i=2; i<=n; i++) p[i]=1;{
for(i=2; i<=n; i++){
if(p[i]==1){
x[0]=i;
for(k=2; i*k<=n; k++) p[i*k]=0;
}
}
}
return x[0];
}

991 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:51:07 ]
>>990
エラーも書けよ

992 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:53:12 ]
エラーは

Exception in thread "main"

です

993 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:57:48 ]
小出しにするなよ、もっといろいろ出てるだろ

994 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:58:16 ]
>>990
配列サイズはintなのでlongは無理。
配列以外のコレクションを使うか、配列を複数用意して使う。
でも単純に考えてもint限界のInteger.MAX_VALUE*8バイトでもギガバイトをはるかに超えてることは認識してる?
そのプログラムのような単純なエラトステネスのふるいはかなり効率が悪いと思うし。

995 名前:デフォルトの名無しさん [2007/06/27(水) 03:03:04 ]
whileに直せばいいじゃん

996 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 03:17:50 ]
> for(i=2; i<=n; i++) p[i]=1;{
ここじゃね?
シンタックスエラー出てない?

997 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 03:19:52 ]
じゃあ1000取り合戦でもしますか

998 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 03:20:00 ]
>>996
文法的には問題ないはずだが、アルゴリズム的には知らん



999 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 03:20:33 ]
殺伐としてきたZE!!!!

1000 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 03:21:15 ]
いやっほーーーーーーーーーーーぅ!!!

1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






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

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

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