【初心者】Java質問・相談スレッド88【大歓迎】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2006/07/25(火) 22:43:16質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals を使え。
前スレッド
【初心者】Java質問・相談スレッド87【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1151678944/
/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。
JavaScriptの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc5.2ch.net/hp/
次スレは>>980あたりで。
0002デフォルトの名無しさん
2006/07/25(火) 22:44:55乙!
0003デフォルトの名無しさん
2006/07/25(火) 22:49:54グダグダ話まだ続けんの?
0004デフォルトの名無しさん
2006/07/25(火) 23:06:340005デフォルトの名無しさん
2006/07/25(火) 23:09:52乙
>>4
乙
0006デフォルトの名無しさん
2006/07/25(火) 23:11:11おう!!
ほら、はよはじめんかい。」
0007デフォルトの名無しさん
2006/07/25(火) 23:12:59激しく乙。
0008デフォルトの名無しさん
2006/07/25(火) 23:13:06乙
>>6
otu
0009デフォルトの名無しさん
2006/07/25(火) 23:15:06ou!!
ちゃんと見てるで!
はよせーやボケ!
0010デフォルトの名無しさん
2006/07/25(火) 23:15:37乙
>>6
巣へ帰れ
0011デフォルトの名無しさん
2006/07/25(火) 23:15:44Web関係に興味があるからStrutsを勉強しようと思って色々ググってみたのですが
JSP・サーブレットも勉強しないといけないのでしょうか?
StrutsはWebアプリを作成する上での外枠、セキュリティ等の部分を最初から考えなくて良いために
Struts(warファイル)を読み込んで、そこからプログラムを作成していくという風に捕らえました
認識の仕方として誤りがありませんか?
以上の二つを回答いただきたいです
0012デフォルトの名無しさん
2006/07/25(火) 23:34:04まあまあそういわんといてや
>>11
勉強できるんやったら全部やっとけ!!
あと自分に何が必要かまず考えたほうがいいんとちゃうか?
0013デフォルトの名無しさん
2006/07/25(火) 23:38:53とりあえずお前は3年ぐらいROMってろ。
0014デフォルトの名無しさん
2006/07/25(火) 23:39:16マジレス希望
0015名無し募集中。。。
2006/07/25(火) 23:40:13両方覚えろ
0016デフォルトの名無しさん
2006/07/25(火) 23:40:50マジレス希望なら、最終目標を書け。
0017デフォルトの名無しさん
2006/07/26(水) 00:05:50もうJavaは終りだよ
これ以上は何も望まない方がいい
これは、誰も否定しないことだし、薄々感じているだろ?
おとなしくC#やってろ
0018デフォルトの名無しさん
2006/07/26(水) 00:32:24Strutsの前にServlet/JSPはやっておけ。
Strutsは廃れても基盤となるServlet/JSPは残るから。
0019デフォルトの名無しさん
2006/07/26(水) 04:20:45html+アプレットでスレッドの中でループさせているアプリなんですが、これってIEのページが切り替わると
スレッドが破棄されると今まで思っていました。
ところが、なにやらかのタイミングで全く別のhtmlをロードしてクラスが変わっても、前に読み込んだスレッドが
動き続けることが希に出てくる…MS_VMならこんなことはなかったが…
やっぱり、destroy()の中にスレッドを止める動作を仕込まなくてはいけないのでしょうかね?
0020デフォルトの名無しさん
2006/07/26(水) 05:17:580021デフォルトの名無しさん
2006/07/26(水) 09:41:00double s=0;
for(int i=1;i<=10;i++){
s+=1/i;
System.out.println(i+":"+s);
}
}
s+=1/i;
を
s+=1/(double)i;
にしたらうまくいったのですが(double)にどういう意味があるのでしょうか?
iはintであって、sはdoubleなのだからわざわざ入れる必要ないと思うのです
0022デフォルトの名無しさん
2006/07/26(水) 09:49:07そのintの結果を代入時にdoubleにキャストしている
0023デフォルトの名無しさん
2006/07/26(水) 10:02:48ここで質問するなとまでは言わないが、その程度の話なら、s += 1/i; の前に
System.out.println("i: " + i + "1/i" + 1/i); とか挟み込むとかして、
ある程度自分でプログラムの動向を探る努力ぐらいはしろよ。
自分で原因を探す力も付けていかないと、後々痛い目みるのは自分だし。
0024デフォルトの名無しさん
2006/07/26(水) 11:35:55s+=1/i;
は、
s = s + 1 / i;
になるわけだけど、
1 / i の結果は、>>22の言うとおりint。
つまり、たとえば、1/2が行われたとき、結果は0.5だが、
intは小数点以下を確保出来ないため、0
s = s + 0;
となる。
s+=1/(double)i;
だと、i = 2のとき、
s = s + 1 / 2.0となる。
1 / 2.0の様に型の違うもの同士の演算は、
javaの仕様で、大きいほうにあわせられるため、int / doubleの結果はdouble。
つまり、s = s + 0.5;となり、
正常に動くと。
(double)はキャスト(型変換)を意味するが、それをしないと計算時に精度が落ちる。
0025デフォルトの名無しさん
2006/07/26(水) 11:40:10エクリプスで作った場合
ビジュアルエディターで作るのが一般的なんでしょうか?
なんか取っ付きにくいし本もあまりないよな・・・
やっぱり皆さんはwide Studioとか使っているのでしょうか?
0026デフォルトの名無しさん
2006/07/26(水) 12:39:030027デフォルトの名無しさん
2006/07/26(水) 13:02:14実際ゼロから書くのとあんまりかわらんけど。
0028デフォルトの名無しさん
2006/07/26(水) 14:37:53s = s + 1 / i;
のように半角スペース入れるのはなぜですか?
0029デフォルトの名無しさん
2006/07/26(水) 14:45:010030デフォルトの名無しさん
2006/07/26(水) 14:45:41入れなくても文法上問題ない
演算子の前後に空白を入れるというコーディングスタイルをとっている人間が書くとそうなる
コーディングスタイルは個人の趣味だったりグループの趣味だったりその他いろいろなので
そのときがきたら悩め
0031デフォルトの名無しさん
2006/07/26(水) 15:47:000032デフォルトの名無しさん
2006/07/26(水) 19:20:08at java.util.SubList.addAll(Unknown Source)
っつーのが出てきたのだが、API見てもソース探ってもjava.util.SubList
なんてクラスがいないのだが、こいつってどちらさん?
どっかのInnerクラス?
0033デフォルトの名無しさん
2006/07/26(水) 19:25:06それコンパイルエラーじゃなくて実行時エラーじゃないの?
0034デフォルトの名無しさん
2006/07/26(水) 19:34:23すまぬ、実行時エラーだった。。。
ついでに、なんとか所在も判明した。
後でみる人のために書いておくと、AbstractListの中にいる、パッケージ
スコープのクラス。
0035デフォルトの名無しさん
2006/07/26(水) 21:31:53可能ならば、やり方を教えてください。
0036デフォルトの名無しさん
2006/07/26(水) 21:42:08003735
2006/07/26(水) 21:46:09getResource()した場合、URLが戻ってくるのでFileクラスでインスタンス化できません。
何か良い方法ありませんか?
0038デフォルトの名無しさん
2006/07/26(水) 21:49:29でいいんじゃね? Class#getResource(String)は
オブジェクトのクラスローダに委譲されることだし
0039デフォルトの名無しさん
2006/07/26(水) 21:52:500040デフォルトの名無しさん
2006/07/26(水) 21:55:40URLなら表せるけど
004135
2006/07/26(水) 22:00:58テキストのデータをファイルから読み出したいのですが、jarの中のテキストファイルからテキストデータを読み込むにはどうすればよいのですか?
0042デフォルトの名無しさん
2006/07/26(水) 22:04:43なり
getClass().getResource("リソース名")
なりでそのテキストへのURLをとって
URL#openStream()
でInputStreamを開いてInputStreamReaderで読むなりさらにBufferedReaderで囲むなりしてくれ
0043デフォルトの名無しさん
2006/07/26(水) 22:05:430045デフォルトの名無しさん
2006/07/26(水) 22:09:08じゃだめ?
Fileオブジェクトで取り出すのは無理。
(Javaの標準ライブラリだと
アーカイブ内のエントリはファイルとは扱いがちがう)
0046デフォルトの名無しさん
2006/07/26(水) 22:13:46getClass().getResource("test.txt").openStream()
よりも
getClass().getResourceAsStream("test.txt")
の方がスマートだ
0047デフォルトの名無しさん
2006/07/26(水) 22:22:27ダウンロードできる場所おしえてください。よろしくお願い思案す。
0048デフォルトの名無しさん
2006/07/26(水) 22:59:14フローチャートを上手くコードに落とす方法が思いつきません。
こんなデザインパターン使え、的なものってないですか?
ゴリゴリ書くと死ぬ・・・
0049デフォルトの名無しさん
2006/07/26(水) 23:07:44お前は>>1も読めないのか。半年ROMってろ。
0050デフォルトの名無しさん
2006/07/26(水) 23:07:520051デフォルトの名無しさん
2006/07/26(水) 23:12:30フローチャート(シーケンス図?)は直接コードに落とすものじゃないだろう。
その書き方じゃ、果たしてオブジェクト指向で設計してるのかどうかも
疑わしい。そうなるとデザインパターン以前の問題。
UMLを見直して、もう一度整理してから再質問汁
0052デフォルトの名無しさん
2006/07/26(水) 23:22:47JAR内のアプレット間で通信する方法ってどんな手が
ありますか?
一応JavaScriptを使った方法はあるのですが、他に
何かいい手はないでしょうか。
0053デフォルトの名無しさん
2006/07/26(水) 23:24:40ダウンロード Java 2 Platform Standard Edition 5.0 (J2SE)をDLすれって書いてありました。
ですが、http://java.sun.com/j2se/1.5.0/ja/download.html開かなかったです。
みなさんはなんのソフトつかってますか?
0054デフォルトの名無しさん
2006/07/26(水) 23:29:34原因は知らんが、とりあえず文字コードをUTF-8に汁
0055デフォルトの名無しさん
2006/07/26(水) 23:34:16ご相談させてください。
今自分の現場で�@のようなソースをいくつか見ます。
たまたま絶対にWHEREに足しこむ値は一つだけのようなのですが(ループで足したりは無いです)
すべて�A(または違ったロジック)のように書き直したほうが良いのですか?
経験豊富な皆さん教えてください。(コンパイラは通してないので間違ってたらすいません)
前提として
引数でString型のvalueをもらいます。
�@
String sql = "SELECT ....";
sql += "WHERE A = '" + value + "'";
executeQuery(sql);
�A
StringBuffer sql = new StringBuffer("SELECT ....");
sql.append("WHERE A = '");
sql.append(value);
sql.append("'");
executeQuery(sql.toString());
0056デフォルトの名無しさん
2006/07/26(水) 23:36:26秒間何万回と繰り返さない限り、違いなんぞわからんよ。
0057デフォルトの名無しさん
2006/07/26(水) 23:39:24文字コードをUTF-8に汁ってどうゆうことですか?
0058デフォルトの名無しさん
2006/07/26(水) 23:44:29前者。
理由その1
昨日の話にもあったが、最適化されてほとんど同じになる。
理由その2
改めてソースを見直すときに、普通に読みにくい。
理由その3
同じようなコードを書く際、結局そのStringBufferインスタンスを
生成するのだろうから、可読性を犠牲する上に立つメリットが見あたらない。
0059デフォルトの名無しさん
2006/07/26(水) 23:44:46とか
0060デフォルトの名無しさん
2006/07/26(水) 23:45:22コンピュータ概論とか超基礎教科書から勉強し直せ。
0061デフォルトの名無しさん
2006/07/26(水) 23:46:011行が80文字を超えない限りにおいて、激しく支持
0062デフォルトの名無しさん
2006/07/27(木) 00:00:56すいませんまだ学生なので
教えてください
0063デフォルトの名無しさん
2006/07/27(木) 00:10:260064デフォルトの名無しさん
2006/07/27(木) 00:11:44学生とか理由じゃないだろ。
お前は不可解なことがあれば、とりあえずググルなりして調べようという
発想にならないのか。DLページを探す件についてもそうだ。
そんな他力本願100%なやつにプログラミングなんか無理だ。
よかったな、環境を整える前に自分がプログラミングとかの自己努力が
大きく要求される分野に全く向いていないということが判明して。
0065デフォルトの名無しさん
2006/07/27(木) 00:12:54SQLのパラメータ指定するのなら、PreparedStatement使いましょう。
SQLインジェクションにもなってハッピーです。
0066デフォルトの名無しさん
2006/07/27(木) 00:24:51SQLインジェクションになったらHappyなのか?
と揚げ足取ってみた。
0067デフォルトの名無しさん
2006/07/27(木) 00:56:17>>55
WEBアプリでなくともパラメータつき使うのはデフォ
また、連結するのが決まっているなら前者のほうが早いし視認性もいい
0068デフォルトの名無しさん
2006/07/27(木) 01:09:320069デフォルトの名無しさん
2006/07/27(木) 01:33:39そのページ(ダウンロードページ)を開くのにIE6を使ってるなら、「表示」→「エンコード」のところで
「Unicode(UTF-8)」を選ぶ。
または他のブラウザで見る。Firefox、Operaなど。
0070デフォルトの名無しさん
2006/07/27(木) 02:39:21set classpath=C:\なんとか\かんとか.jar;C:\なんとか\かんとか2.jar...
って塩梅でずらずら並べるしかないんでしょうか?
0071デフォルトの名無しさん
2006/07/27(木) 03:47:25その50のファイルを1つのフォルダにまとめれば?
0072デフォルトの名無しさん
2006/07/27(木) 04:02:340073デフォルトの名無しさん
2006/07/27(木) 07:24:18基本的には、そのとおり。
0074デフォルトの名無しさん
2006/07/27(木) 09:57:52Inflaterクラスで解凍し、Stringとして返す関数を作っているのですが
Inflater.inflateメソッドで解凍された情報を確保する為のbyte配列(byte []result)は
あらかじめ適当なサイズで初期化して確保しておくしかないのでしょうか?
できれば動的にサイズを確保したいのですが・・・。
以下が現在のソースです。
final int maxBufSize = 100000;
public String decompressString(byte[] input)
{
//Decompress the bytes
Inflater inf = new Inflater();
inf.setInput(input);
byte[] result = new byte[maxBufSize];
int resultLength;
try{
resultLength = inf.inflate(result);
}catch(Exception e){
return null; }
inf.end();
//Decode the bytes into a String
String outputString;
try{
outputString = new String(result,0,resultLength,"UTF-8");
}catch(Exception e){
return null; }
return outputString;
}
0075デフォルトの名無しさん
2006/07/27(木) 10:17:17ByteArrayOutputStreamを使うんだ
007674
2006/07/27(木) 11:50:11回答ありがとうございます。
ByteArrayOutputStreamとByteArrayInputStream、InflaterInputStreamを
組み合わせる事で何とかうまく行きました。
ありがとうございました。
0077デフォルトの名無しさん
2006/07/27(木) 13:12:29アニメ BEST100
ttp://www.animedepot.biz/DVDlist/2005years_best.htm
1位
http://www.animedepot.biz/DVDlist/title/KVDVD0542.htm
2位
http://www.animedepot.biz/DVDlist/title/KVDVD0518.htm
3位
http://www.animedepot.biz/DVDlist/title/A18D2492.htm
4位
http://www.animedepot.biz/DVDlist/title/KVDVD0533.htm
5位
http://www.animedepot.biz/DVDlist/title/A18D2480.htm
6位
http://www.animedepot.biz/DVDlist/title/KVDVD0512.htm
7位
http://www.animedepot.biz/DVDlist/title/KVDVD0502.htm
8位
http://www.animedepot.biz/DVDlist/title/KVDVD0521.htm
9位
http://www.animedepot.biz/DVDlist/title/KVDVD0505.htm
10位
http://www.animedepot.biz/DVDlist/title/KVDVD0508.htm
0078デフォルトの名無しさん
2006/07/27(木) 14:58:30困ったことに、終了させたら出るものでトレースも困難でつorz だれかココがアヤスィって判りませんでしょうか。
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: component argument pData
at sun.awt.windows.Win32SurfaceData.initOps(Native Method)
at sun.awt.windows.Win32SurfaceData.<init>(Unknown Source)
at sun.awt.windows.Win32SurfaceData.createData(Unknown Source)
at sun.awt.Win32GraphicsConfig.createSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer$2.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
0079デフォルトの名無しさん
2006/07/27(木) 16:48:24画像をjLabelに表示しているのですが、その画像データを直接byte[]に出力することが出来ないかと。
ImageIcon img = new ImageIcon(thum); // byte[] thum (jpegデータを格納済み)
jLabelThum.setIcon(img); //jlabelに画像を表示
・・・・・(適当な処理)・・・・
この後、画像データを jLabel --> byte[] に入れてしまいたいのです。
現状では、FileOutputStreamで一度ファイルに落としてから、
再度読み込みで、byte[]に格納しているので、無駄を省きたく思っています。
どのクラスを使ったら良いかのヒントだけでも良いので、お願いします。
0080デフォルトの名無しさん
2006/07/27(木) 18:06:32FileOutputStreamで書き出せるのなら
かわりにByteArrayOutputStreamでバッファへ書き出して
toByteArray()でbyte配列へ吐き出せばいいと思うが
0081デフォルトの名無しさん
2006/07/27(木) 18:16:08FileOutputStreamでファイルに落とせるってことは元々byte[]とかで持ってるってことじゃないのか?
0082デフォルトの名無しさん
2006/07/27(木) 18:52:090083デフォルトの名無しさん
2006/07/27(木) 18:54:47OutputStreamWriter(OutputStream out, String charsetName)
008482
2006/07/27(木) 18:59:26System.out.println(args[0]);みたいなコードを
-Dfile.encoding=UTF-8で実行してるのですが、
UTF-8の文字列をSJISとして解釈したものを
UTF-8に変換してるみたいで化け化けです。
0085デフォルトの名無しさん
2006/07/27(木) 19:08:08008682
2006/07/27(木) 19:12:580087デフォルトの名無しさん
2006/07/27(木) 19:42:010088デフォルトの名無しさん
2006/07/27(木) 19:44:370089デフォルトの名無しさん
2006/07/27(木) 21:08:16-D を使うな
009082
2006/07/27(木) 21:10:390091デフォルトの名無しさん
2006/07/27(木) 21:14:320092デフォルトの名無しさん
2006/07/27(木) 21:16:40本当に引数の文字列はUTF-8なのか?
本当にShiftJISとして解釈しようとしてるのか?
0093デフォルトの名無しさん
2006/07/27(木) 21:33:42クライアントに画面表示させてるJSPから、そのServletに非同期通信で
リクエストを送ってレスポンスを待ちたいです
AjaxのXmlHttpRequestみたいな感じですね
ピュアJavaでは、どうやって実装するのがベターでしょうか?
調べてるんですが、JMSとやらを使えばできるのかなーって感じで
イマイチ把握できていません
よろしくお願いします
0094デフォルトの名無しさん
2006/07/27(木) 21:48:24SJIS じゃなくて euc-jp だったりしてー
009582
2006/07/27(木) 22:14:14しかたないのでnkfでeucにしてから処理することにしました。
0096デフォルトの名無しさん
2006/07/27(木) 22:25:56いったい何をやってるのかまったくわからないのだが、答えは >>83 か?
0097デフォルトの名無しさん
2006/07/27(木) 22:42:01深く考えすぎ
URLクラスのAPIをまずはよーくみてみよう
0098デフォルトの名無しさん
2006/07/27(木) 23:11:14import.awt.*;
の後に
import.awt.event.*;
と記述されていたりするんですが、下の方をぬいてみても別段かわりはありませんでした。
この1行を足す意味はあるんでしょうか。
0099デフォルトの名無しさん
2006/07/27(木) 23:12:38http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/net/URL.html
ですよね?
同期非同期の話が見あたらないんですが…httpリクエストは同期だし
0100デフォルトの名無しさん
2006/07/27(木) 23:21:38AJAXがどういう意味で非同期かわかってないような
0101デフォルトの名無しさん
2006/07/27(木) 23:27:58ある。というか、変わりなかったというのがおかしい。
純粋に使われていなかっただけか、コンパイルエラーを見逃してるかの
どちらかだ。
0102デフォルトの名無しさん
2006/07/27(木) 23:30:57たまたまjava.awt.eventパッケージのクラスを使ってないなら無くてもかまわない。
GUI使うからとりあえず、という感覚で常に両方書く人はいる。
ただし、importはドット(.)による階層の包含関係という概念はないので、
import java.awt.*; は
import java.awt.event.*; を「含まない」ので、java.awt.eventパッケージ
のクラスを省略名で使いたいなら、後者も書く必要がある。前者だけでは
後者の働きを含まない。
0103デフォルトの名無しさん
2006/07/27(木) 23:50:32XmlHttpRequestクラスを用いてPOST/GETメソッドでサーバにリクエストを送信して
レスポンスが返ってきたらXmlHttpRequestオブジェクトの状態が変化して
そのときにイベントハンドラonreadystatechangeが呼び出されて
onreadystatechangeに関連づけられてるメソッドを呼び出し時に実行することで
画面の表示の状態を書き換える
レスポンスがあったかどうかはイベントハンドラが拾ってくれるので待ってる必要が無い
ので通信状態と画面の状態を同期させなくて良い
→ブラウザの制御が通信状態に影響を受けない
と解釈しています
0104デフォルトの名無しさん
2006/07/28(金) 00:27:520105デフォルトの名無しさん
2006/07/28(金) 01:05:57purejavaでやりたいということはクライアントはブラウザではないってことか?
なら自由にスレッド使えばよろしい
0106デフォルトの名無しさん
2006/07/28(金) 01:11:06クライアントはブラウザです
WebインターフェースをJSPで作った場合の話です
Javaは一応囓ってはいるのですが、ネットワーク関係には全く触れなかったので
おかしなこと言ってたら指摘してください
0107デフォルトの名無しさん
2006/07/28(金) 01:46:30質問です。
int i = Integer.parseInt(str); というのはよく使ってましたが、
String型の配列をint型の配列に型変換することはできるのでしょうか?
public static void main(String[] args){
int[] i = Integer.parseInt(args);
}
というようなプログラムを作成してみたところ、コンパイルエラーでした。
メソッドparseIntというシンボルを見つけられないそうです。
Q.どうやればString型の配列をint型の配列に変えれますか。
0108デフォルトの名無しさん
2006/07/28(金) 01:54:41int[] i = new int[args.length];
for(int j=0; j<args.length; j++){
i[j] = Integer.parseInt(args[j]);
}
配列はあくまでもオブジェクト・参照型であるということを心得るべし。
それがわかってれば Integer.parseInt(args) なんて試す前から
コンパイルエラーの叫びが聞こえてくるのがわかる。
0109デフォルトの名無しさん
2006/07/28(金) 02:24:57ありがとうございます
たまたまだったんですね・・肝に銘じておきます
0110デフォルトの名無しさん
2006/07/28(金) 03:44:56for分で回すんですね〜
勉強になりました
直接配列から配列にぶち込めるメソッドかなにかあればいいのになー
0111デフォルトの名無しさん
2006/07/28(金) 03:45:57ローカルにあるファイルをサーバー上に保存させるアプレットを作成しようと考えています。
通信経路はHTTP,FTPです。
アップロード中、今Xバイト送信し終わった等の動的な取得はできるのでしょうか?
0112デフォルトの名無しさん
2006/07/28(金) 03:56:13配列が多いので管理に困ってるのですが、
配列名にx0[],x1[],x2[],x3[]と名前をつけてあるとして、
for文を使用して
for(int i=0;i<=3;i++){
value[] = ("x" + i)[];
}
というような配列名のiの部分だけをインクリメントして
繰り返しをするような都合の良い方法はないでしょうか?
これだと有無を言わさずエラーが出るのは分かってるのですが。。。
0113デフォルトの名無しさん
2006/07/28(金) 04:05:36OutputStream で送信したバイト数を数えればいい。
>>112
どうしてもしたければ配列の配列にしろ。
0114デフォルトの名無しさん
2006/07/28(金) 06:21:47メソッドが無ければお菓子を作ればいいのよ
public class IntegerArray {
public static int[] parseInt(String[] s) {
int[] i = new int[s.length];
for (int j = 0; j < s.length; j++) {
i[j] = Integer.parseInt(s[j]);
}
return i;
}
public static int[] parseInt(String[] s, int radix) {
int[] i = new int[s.length];
for (int j = 0; j < s.length; j++) {
i[j] = Integer.parseInt(s[j], radix);
}
return i;
}
}
0115デフォルトの名無しさん
2006/07/28(金) 06:40:00複数のappletクラスがあって、IE上で表示している場合にawtか何かでボタンをクリックしたら、
今表示しているappletを切替える方法って何か良い命令ありませんか?
0116デフォルトの名無しさん
2006/07/28(金) 06:41:48JavaScript でヤレ
0117デフォルトの名無しさん
2006/07/28(金) 06:42:28ちょw
011893
2006/07/28(金) 07:08:240119デフォルトの名無しさん
2006/07/28(金) 07:19:38根本的におかしい、切り替えるべきはAppletじゃなくてPaneだろ
>>93
XMLHttpRequestで非同期なのはブラウザなのであって
サーバからしてみれば同期通信しかしてないぞ
意味が分かるか?ようはスレッドだ
0120デフォルトの名無しさん
2006/07/28(金) 07:19:380121デフォルトの名無しさん
2006/07/28(金) 07:20:370122デフォルトの名無しさん
2006/07/28(金) 07:21:11普通に作れってだけだな
0123デフォルトの名無しさん
2006/07/28(金) 07:46:41こんなのでどうよ?
HashMap<String,int[]> hm = new HashMap<String,int[]>();
int[] x0 = new int[10]; hm.put("x0", x0);
int[] x1 = new int[11]; hm.put("x1", x1);
int[] x2 = new int[12]; hm.put("x2", x2);
int[] x3 = new int[13]; hm.put("x3", x3);
for (int i = 0; i < 4; i++) {
int[] v = hm.get("x" + String.valueOf(i));
System.out.println(v.length);
}
0124デフォルトの名無しさん
2006/07/28(金) 08:05:14HashMap<String,int[]> hm = new HashMap<String,int[]>();
for (int i = 0; i < 4; i++) {
int[] x = new int[10 + i]; hm.put("x" + String.valueOf(i), x);
}
for (int i = 0; i < 4; i++) {
int[] v = hm.get("x" + String.valueOf(i));
System.out.println(v.length);
}
0125デフォルトの名無しさん
2006/07/28(金) 08:11:19>>123
順序があるんだから、普通に配列かListで括ればいいだろ。
0126デフォルトの名無しさん
2006/07/28(金) 09:26:00こんなのどうよ
for(int i = 0; i <= 3; i++) {
System.out.println("int[] v = x%d")
System.out.println("System.out.println(v.length);");
}
これ実行して出てきたのをコンパイル
0127デフォルトの名無しさん
2006/07/28(金) 09:26:41System.out.println("int[] v = x%d", i);
0128デフォルトの名無しさん
2006/07/28(金) 09:27:50素直に二度寝します …… orz
0129デフォルトの名無しさん
2006/07/28(金) 10:40:40モーダルではなくて、常に親ウィンドウよりも手前に表示されていて、
MDIとは違って親ウィドウの外にも移動できるようにしたいのですが。
0130デフォルトの名無しさん
2006/07/28(金) 12:48:52java.awt.Window#setAlwaysOnTop(boolean)でいいのかな?
こんな感じで
JFrame f = new JFrame("parent");
JDialog d = new JDialog(f, "child");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
d.setAlwaysOnTop(true);
f.add(new JTextField());
d.add(new JTextField());
f.setSize(300, 300);
d.setBounds(50, 50, 100, 50);
f.setVisible(true);
d.setVisible(true);
0131115
2006/07/28(金) 13:03:37つまり、appletを表示するhtmlを沢山ズラズラ書いて、appletとJavaScriptと変数か何かで通信させて、
何かのトリガで.location=xxxx.htmで切り替えすよね。
その方法なら判るのですが、もっとスマートに逝かんもんかと思いまして(^^ゞ
>>119
教えて君でスンマソ。kwsk
0132デフォルトの名無しさん
2006/07/28(金) 13:05:55FileWriter fw = new FileWriter(ファイルのパス);
fw.write(書き出す文字列);
このwrite()メソッドについて質問があります。
FileWriterは出力のキャラクターストリームであるため、
BufferedWriterのようにバッファリングをして書き込むのではなく
一文字ずつファイルにアクセスし書き込まれるのではないのですか?
にもかかわらず、fw.flush()などをつかってバッファをフラッシュしないとファイルに
書き込まれないのは、FileWriterもバッファリングして書き込んでるのでしょうか?
FileWriterはバッファリングをしないものだと教わったので良く分かりません。
ご教授お願いします。
0133デフォルトの名無しさん
2006/07/28(金) 13:35:10write() メソッドに渡される文字はバッファに入らないが、
このメソッドを呼び出すたびにエンコーディングコンバータが呼び出されて、
この結果がバッファに蓄積されてから出力ストリームに書き込まれる。
つまり、write()の度にコンバータを呼び出して処理するという意味でバッファリングしないということ。
だからwrite()呼び出しの頻度が高いならバッファリングするWriterでラップすべきだと思う。
0134デフォルトの名無しさん
2006/07/28(金) 13:38:54スペースで区切られた内容の[ふ ん こ ろ が し]
というデータを取り出す時に最後の「もち」だけを
くっつけて表示したい場合はどうすればいいんでしょうか?
教えてください。
0135134
2006/07/28(金) 13:43:530136デフォルトの名無しさん
2006/07/28(金) 13:46:29ところで文字列を[]で囲う表現をちらほら見掛けるけど出自はどこかね?
0137デフォルトの名無しさん
2006/07/28(金) 13:48:22StringTokenizerは使わないでString#split()を使う。
0138134
2006/07/28(金) 13:52:06StringTokenizerで他の文字だけを抜き出して
[がし]だけをString#split()でだせばいいのでしょうか??
0139デフォルトの名無しさん
2006/07/28(金) 13:54:10それだと、常に全てのウィンドウよりも前に
出てきてしますのですが、
やりたいのは「常に親ウィンドウよりも前に」
出すことです。
0140デフォルトの名無しさん
2006/07/28(金) 13:54:50split()を使えばStringTokenizerを使う必要はないだろう。
0141デフォルトの名無しさん
2006/07/28(金) 13:55:17StringTokenizer st = new StringTokenizer("ふ ん こ ろ が し");
ArrayList<String> list = new ArrayList<String>();
while (st.hasMoreTokens()) {
list.add(st.nextToken());
}
for (int i=0; i<list.size()-2; i++) {
System.out.println(list.get(i));
}
System.out.println(list.get(list.size()-2)+list.get(list.size()-1));
0142デフォルトの名無しさん
2006/07/28(金) 13:57:10正規表現の指定がちょっと複雑化も。
そもそも、[ふ ん こ ろ が し]は、文字も、文字数も固定なのか?
前提が曖昧。
0143デフォルトの名無しさん
2006/07/28(金) 13:58:09String[] result = "ふ ん こ ろ が し".split(" ");
for (int i=0; i<result.length-2; i++) {
System.out.println(result[i]);
}
System.out.println(result[result.length-2]+result[result.length-1]);
0144134
2006/07/28(金) 14:09:05最初と最後に$マークが付いている文字列です。
0145デフォルトの名無しさん
2006/07/28(金) 14:15:33文字数も、文字も可変なら、
くっつけたいのは最後の2文字ってことでいいの?
0147デフォルトの名無しさん
2006/07/28(金) 14:39:19じゃあ、前にレスしてくれている人がいるように、
StringTokenizerでもsplit()でも使って分割した後に、
あらためて最後の2要素をくっつければいいだけじゃないの?
0148134
2006/07/28(金) 14:51:39ここからどう変更すればでるでしょうか・・・
if (str.startsWith("$start")) {
int counter = 0;
String temp = null;
String s = "";
StringTokenizer st = new StringTokenizer(str);
while (st.hasMoreTokens()) {
counter++;
String token = st.nextToken();
if (counter == 2) {
DataType.add(token);
}
if (counter == 3) {
DataType.add(token);
}
if (counter == 4) {
DataType.add(token);
}
while(token.equals("$end")){
s = st + " " + token;
DataType.add(s);
}}}
0149134
2006/07/28(金) 14:59:29ありがとうございました。
0150デフォルトの名無しさん
2006/07/28(金) 16:39:21うるさいうるさいうるさい!>>130でもちゃんと「常に親ウィンドウよりも前に」あるんだから!
日本語の不自由な平民を相手にするなんて、あんた、感謝しなさいよね。
複雑に考え過ぎるのはあまり頭によくないんだゾ!ずっきゅ〜ん
JFrame f = new JFrame("parent");
JDialog d = new JDialog(f, "child");
JDialog d2 = new JDialog(f, "child2");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new JTextField());
d.add(new JTextField());
d2.add(new JTextField());
f.setSize(300, 300);
d.setBounds(50, 50, 100, 50);
d2.setBounds(70, 70, 100, 50);
f.setVisible(true);
d.setVisible(true);
d2.setVisible(true);
0151デフォルトの名無しさん
2006/07/28(金) 16:46:34ずっきゅ〜んって…w
勢いにワラタw
0152デフォルトの名無しさん
2006/07/28(金) 16:52:43シャナなのかルイズなのかはっきりさせろよw
0153デフォルトの名無しさん
2006/07/28(金) 16:58:29http://www.amazon.co.jp/gp/product/4873112788/503-7295059-4599152
6章を読み切れば、応用でその希望は実現できるだろうし、
他にもお前みたいなことを考えるやつにはヨダレが出るような
内容が満載だと思うぞ。特にファイルチューザハックとか。
0154デフォルトの名無しさん
2006/07/28(金) 17:09:01シャナ
ルイズ
りんご?
0155デフォルトの名無しさん
2006/07/28(金) 17:10:23子が常に親の上だけど他のアプリに切り替えれば隠れる
130は余計なことしてるんだ
0156デフォルトの名無しさん
2006/07/28(金) 17:22:31これだと親ウィンドウをアクティブにしたら
子ウィンドウが隠れちゃいませんか?
最初これやってみてできなかった気がするんですが。
もう一回やってみます。
0157デフォルトの名無しさん
2006/07/28(金) 17:23:35FileWriter であるすでに存在する、かなり大きなファイルを上書きしている最中で、close命令の
前に何らかの原因でアプリケーションが落ちたり、コンピュータの電源が落ちた場合、ファイルの
中身は消えています。かなり初歩的な質問で申し訳ありませんが、回避するにはどうしたらよい
でしょうか?宜しくお願いします。
0159デフォルトの名無しさん
2006/07/28(金) 17:29:53環境はWinXP+SE1.5
0160デフォルトの名無しさん
2006/07/28(金) 17:39:28決してDialog同士の関係を見たかったわけではないっ!
そんなこと私が知るか!じゅ〜すぃ〜
0161129
2006/07/28(金) 18:01:37ありがとうございました。
0162デフォルトの名無しさん
2006/07/28(金) 18:04:20知っている人いますか?
0163デフォルトの名無しさん
2006/07/28(金) 19:40:32何か、マニフェストのクラス名が化けちゃうんですが
誰かこんなのやった人いませんか??
0164デフォルトの名無しさん
2006/07/28(金) 20:20:530165デフォルトの名無しさん
2006/07/28(金) 20:28:090166デフォルトの名無しさん
2006/07/28(金) 20:32:580167デフォルトの名無しさん
2006/07/28(金) 20:33:35いくら夏だからって可哀相だろ、お前も最初は何も知らなかったわけだろ
>>164
仕事
0168デフォルトの名無しさん
2006/07/28(金) 20:42:12そんな質問の仕方じゃまともな回答は得られないと思われ
あえてマジレスするなら、プロジェクトに関わってるチームはJavaを常に持ち歩いている
最近は暑くなってきたしJavaは営業に行くときも欠かせないよ
0169デフォルトの名無しさん
2006/07/28(金) 21:02:070170デフォルトの名無しさん
2006/07/28(金) 21:04:19URLとか全部載ってるじゃん
structure101でぐぐってみな
0171デフォルトの名無しさん
2006/07/28(金) 21:11:54じゃあ、マジレスを
プログラミング
0172デフォルトの名無しさん
2006/07/28(金) 23:33:24テンポラリファイルに書き出してリネームする。
あと「Rename atomic テンポラリ」でググれ。
0173デフォルトの名無しさん
2006/07/29(土) 00:26:33さんくすこ。手元に本ないのよ。
立ち読みして名前とかでグぐれるかと思ったらうまく引っかからなかったの。
0174デフォルトの名無しさん
2006/07/29(土) 01:53:11プログラミングなんて、目的があって勉強し始めたやつじゃないと
普通に挫折するから、深入りせんでいいよ。乙
0175デフォルトの名無しさん
2006/07/29(土) 02:00:35社会人になってからはやたら趣味グラムが楽しい・・・
周囲のレベルに合わせなくて良いというのがこんなに快感だなんて
0176デフォルトの名無しさん
2006/07/29(土) 03:27:48独習Javaで問題を解いていこうと思っているのですが、独習Java持っている方いますか?
どのような問題が出るのか知りたいです
0177デフォルトの名無しさん
2006/07/29(土) 03:44:18応用力とか言うなら、UML・デザインパターンを勉強してオブジェクト指向脳を
構築していく方がいいと思うぞ。
ぶっちゃけ、1冊通したぐらいじゃ、オブジェクト指向言語が他とどう違って、
どのように有効なのかわかってないだろ?
Javaでデザインパターンを解説してる本は多いし、それを読んでるうちに
勝手に文法力も強化されてくる。
これなんか読んでみれ。
http://www.amazon.co.jp/gp/product/4797327030/503-7295059-4599152
0179デフォルトの名無しさん
2006/07/29(土) 08:50:54わかるな〜
漏れも仕事でjavaやっていたが、精神的に疲れたので、無関係な職種に転職した。
すると、自分のペースでするプログラミングが楽しくて楽しくてw
趣味グラマー最高!
0180デフォルトの名無しさん
2006/07/29(土) 13:57:02と
System.out.println(data[data[2]]);
と
System.out.println(data[data[data[2]]]);
のちがいってなんなんでしょうか?
0181デフォルトの名無しさん
2006/07/29(土) 14:01:060182デフォルトの名無しさん
2006/07/29(土) 14:04:56System.out.println(data[2]);
では、3が表示されるんですよね?
となると、System.out.println(data[data[1]]);を実行したらなにが表示されるんでしょうか?
0183名無し募集中。。。
2006/07/29(土) 14:13:33それぐらい実行しろバカ
0184デフォルトの名無しさん
2006/07/29(土) 14:14:440185デフォルトの名無しさん
2006/07/29(土) 14:17:03dataを2,1,4,5,3でおくと1が表示され
5,3,1,4,2でおくと4が表示されてどういったものが表示されるのかがわからないんです
0186デフォルトの名無しさん
2006/07/29(土) 14:21:400187デフォルトの名無しさん
2006/07/29(土) 14:22:110188デフォルトの名無しさん
2006/07/29(土) 14:24:27System.out.println(data[data[1]]);で4と表示されるのがどうしてもわかりません。
なぜ3でなく4なんでしょうか
0189デフォルトの名無しさん
2006/07/29(土) 14:31:38>>187
0190デフォルトの名無しさん
2006/07/29(土) 14:35:340191デフォルトの名無しさん
2006/07/29(土) 14:41:08data[data[1]]はdata[1]が3だから置き換えると結局data[3]になるよな。
data[3]は4だ。だから4と表示される。
わかんねーなら0番から始まる下駄箱の絵を書いて考えろ。
0 1 2 3 4配列の添え字
5 3 1 4 2格納されてるデータ
0192デフォルトの名無しさん
2006/07/29(土) 14:51:070193デフォルトの名無しさん
2006/07/29(土) 15:06:51画像を取得したりクリックしたりできませんか?
0194デフォルトの名無しさん
2006/07/29(土) 15:15:240195デフォルトの名無しさん
2006/07/29(土) 16:30:300196デフォルトの名無しさん
2006/07/29(土) 17:09:031.4 では、マップの内容を一覧するような場合
Map map = new HashMap(); // キー、値ともに String
// map に何か入れる処理
Iterator ite = map.keySet().iterator();
while ( ite.hasNext() ) {
String key = (String) ite.next();
String value = (String) map.get( key );
System.out.println( value );
}
のような記述になると思うのですが、これの宣言部分を、 Java5 で、
Map <String,String> map = new HashMap <String,String> (); // キー、値ともに String
のような宣言に変えた場合、後半の while文の内容はどう変わる(変えることができる)のでしょうか?
String value = (String) map.get( key );
のキャストが要らなくなる、というのはわかるのですが、それ以外は変わりませんか?
0197デフォルトの名無しさん
2006/07/29(土) 17:18:550198デフォルトの名無しさん
2006/07/29(土) 17:21:500199デフォルトの名無しさん
2006/07/29(土) 17:22:37for ( String key : map.keySet()) {
String value = map.get( key );
System.out.println( value );
}
そもそも値しかイテレートしないときは 1.4 でも map.values() 使う方が効率的。その場合は
// 1.5
for ( String value : map.values() ) {
System.out.println( value );
}
0200デフォルトの名無しさん
2006/07/29(土) 17:28:580201デフォルトの名無しさん
2006/07/29(土) 17:45:37なるほど、やはり便利になっていますね。
助かりました!ありがとうございます。
0202デフォルトの名無しさん
2006/07/29(土) 19:20:39うまくいきません、何が問題なのでしょうか・
下記が、コードです。
if(session.getAttribute("DBM")==null)
{
DBC DBM=new DBC();//DBモジュールの生成
DBM.open()//DBのオープン
session.setAttribute("DBM",DBM);//session変数に格納
}
else
{
DBC DBM = (DBC)session.getAttribute("DBM");//sesion変数より受け取り
}
これで、受取ったDBクラス使用しDBセッションを持ちまわしたいのですが
エラーが発生してしまいます。。
一度、生成を行ったクラスを持ちまわすのにsession変数を
用いようと考えましたが、このような場合には別の方法の方が良いのでしょうか?
0203デフォルトの名無しさん
2006/07/29(土) 21:17:07でないならそういう設計は拙い
0204デフォルトの名無しさん
2006/07/29(土) 21:41:14レスありがとうございます。
先ほど自己解決できました。
構文の書き方に問題があったようです。
下記の様に改変した所問題なく動作いたしました。
DBC DBM = (DBC)session.getAttribute("DBM");//sesion変数より受け取り
if(DBM==null)
{
DBC DBM=new DBC();//DBモジュールの生成
DBM.open()//DBのオープン
session.setAttribute("DBM",DBM);//session変数に格納
}
ありがとうございました。
0205デフォルトの名無しさん
2006/07/29(土) 22:31:59暗号化してみたくて
ttp://d.hatena.ne.jp/trash717/20050625
このページのソースコピってやってみたのですが、
上の方で暗号鍵を指定しているようなのですが、
String key = "abc";
その下でもテキストがあるのですが、
byte[] ivbb = "testiv".getBytes(); ←ここってなんでしょうか?
IvParameterSpec ivspec = new IvParameterSpec(ivbb);
// Triple-DES encryption
Cipher cipher = Cipher.getInstance("DESede");
cipher.init(Cipher.ENCRYPT_MODE, myTripleDesKey,ivspec);
↑ここを なくしても暗号化出来るのですが、第2キーみたいなモノなのでしょうか??
0206デフォルトの名無しさん
2006/07/30(日) 00:59:34DES-EDEのための乱数列の初期化ベクトルを指定している
暗号鍵とは別物
0207デフォルトの名無しさん
2006/07/30(日) 03:20:20ありりです
java難しいです
0208デフォルトの名無しさん
2006/07/30(日) 05:01:190209デフォルトの名無しさん
2006/07/30(日) 05:35:50Cipher cipher = Cipher.getInstance("DESede");
この部分だけどCBCモードを使用するように変えたほうがいいよ。
Cipher cipher = Cipher.getInstance("DESede/CBC/PKCS5Padding");
理由はSunJCEプロバイダのデフォルトモードがECBモードのため。
0210デフォルトの名無しさん
2006/07/30(日) 09:55:550211デフォルトの名無しさん
2006/07/30(日) 10:11:130212デフォルトの名無しさん
2006/07/30(日) 10:14:45ってやろうとしたら「汎用配列を作成します」とかってコンパイラに
怒られて、他にも色々試したものの、しっくりくる結果が得られなかった。
ArrayList<E> の配列ってどうやっても作成不可能なの?
0213デフォルトの名無しさん
2006/07/30(日) 10:50:350214デフォルトの名無しさん
2006/07/30(日) 14:12:370215デフォルトの名無しさん
2006/07/30(日) 14:18:010216デフォルトの名無しさん
2006/07/30(日) 14:18:100217デフォルトの名無しさん
2006/07/30(日) 14:25:000218デフォルトの名無しさん
2006/07/30(日) 14:55:30X=A+(B+C)/(D+E**(F*G))を
Polish記法で表すと
=X+A/+BC+D*E**FG
逆Polish記法で表すと
XABC+DEFG***+/+=
でよろしいでしょうか?
もしスレ違いなら、お手数ですが誘導お願い致します
0219デフォルトの名無しさん
2006/07/30(日) 14:58:130220デフォルトの名無しさん
2006/07/30(日) 15:05:12まあスレ違いではあるな。分かっていてやってるうんこは逝ってよし
ところで、
=X+A/+BC+D*E**FG
は
X=A+(B+C)/(D+E*(F**G))
の意味だと思うが。
逆に
XABC+DEFG***+/+=
は
X=A+(B+C)/(D+E*(F**G))
とも解釈できるので、こちらはambiguousじゃないのか?
0221デフォルトの名無しさん
2006/07/30(日) 15:21:29どうもレスありがとうございました
=X+A/+BC+D**E*FG
XABC+DEFG* **+/+=
と書くと正解なのでしょうか?
0222デフォルトの名無しさん
2006/07/30(日) 15:31:53うんこは優しくするとすぐこうだ
がんばって板なりスレなり探せ
0223デフォルトの名無しさん
2006/07/30(日) 15:34:41うっとおしいならスルーするなりあぼんするなりしておけよチンカス君
>>221
それでおk
0224デフォルトの名無しさん
2006/07/30(日) 15:39:11マンカスくんに言われたくないな
>>221
逆Polish記法の処理系による
空白を無視するような処理系なら意味がない
**の代わりに^とかで表記すべきかも
FORTRANとかの文を処理するのなら仕方ないが
0225デフォルトの名無しさん
2006/07/30(日) 16:32:12遅レスすまん
StringBuilder に次々と追加していって OutOfMemoryError が起こる限界です
0226デフォルトの名無しさん
2006/07/30(日) 16:39:220227デフォルトの名無しさん
2006/07/30(日) 16:41:21OutOfMemoryでいいのなら設定しだいで8KBくらいでだせるんじゃ
0228デフォルトの名無しさん
2006/07/30(日) 18:17:53前半は別に構わないが、後半の発言でお前も厨認定
0229デフォルトの名無しさん
2006/07/30(日) 23:50:11C++に転向するときに苦労しそうです。。。
特にオブジェクトの開放とか忘れそうです。Javaなら
使い終わったオブジェクトにnullを代入すればGCが
かき集めてくれるんですけどね。
0230デフォルトの名無しさん
2006/07/30(日) 23:52:500231デフォルトの名無しさん
2006/07/31(月) 00:04:31>オブジェクトにnullを代入すれば
ここに間違いが2点ほど
>GCがかき集めてくれる
ここに落とし穴が1点ほど
0232デフォルトの名無しさん
2006/07/31(月) 00:19:46乙。俺もどう突っ込めばいいものやら途方に暮れていたところだ。
0233デフォルトの名無しさん
2006/07/31(月) 00:36:09説明プリーズ
0234デフォルトの名無しさん
2006/07/31(月) 00:42:530235デフォルトの名無しさん
2006/07/31(月) 00:46:00「オブジェクトにnullを代入」→間違い。代入できるのは変数。
どこからも参照されなくなったオブジェクトがGCの対象となる、というだけ。
他の変数から同一オブジェクトを参照していればこの限りではない。
変数のスコープを抜ければnullを代入する必要なんて無い。
むしろ、「nullを代入したから大丈夫」という、変な安心感を与えてしまい
実は他所からの参照が保持され続けていた、という状態を引き起こしかねない。
0236231
2006/07/31(月) 01:03:31『どのタイミングで回収されるか分からない』 って点。
本当に GC に任せていいのなら、Input/OutputStream の close とか Frame の dispose は要らない。
0237デフォルトの名無しさん
2006/07/31(月) 01:51:52開放する事はできない仕様になってるよ。
だから231もちょいと違うかも。。。
0238デフォルトの名無しさん
2006/07/31(月) 02:41:09>>236とは、どう内容が違うのだ?
0239132
2006/07/31(月) 09:50:320240デフォルトの名無しさん
2006/07/31(月) 13:00:31(tomcat5.5.17,JSTL1.1.2)
${sessionScope.ほげほげ} で自分でセッションに設定したプロパティについては、既に値が取れているにもかかわらず、
${sessionScope.maxInactiveInterval} では値が取れません。
HttpSessionにはgetMaxInactiveIntervalメソッドがあるので、bean規約にしたがえばプロパティ名maxInactiveIntervalで
取得できると思ったのですが、なぜ取れないのでしょうか。それともこれは仕様ではなく、なにか設定に問題があるのですか。
0241デフォルトの名無しさん
2006/07/31(月) 15:02:260242デフォルトの名無しさん
2006/07/31(月) 16:09:44それはHttpSessionのインスタンスじゃないよ。
${pageContext.session.maxInactiveInterval}
で、できると思う。
0243デフォルトの名無しさん
2006/07/31(月) 16:55:33たしかにいけました。
EL式のsessionScopeとpageContext.sessonは、インスタンスとして同じものだと思ってました。
なんだか非常に根本的なところで知識が不足している気がしますので、
本かって勉強します。どうもありがとうございました。
0245デフォルトの名無しさん
2006/07/31(月) 23:10:26<%page import = クラス名
で読んでいるんだけど、クラスを呼ぼうとするとjspの中を見に行ってしまう。
0246デフォルトの名無しさん
2006/07/31(月) 23:19:10いろいろ突っ込みどころはあるのですが、おおむねそのとおりです。
0247質問age
2006/07/31(月) 23:35:24typedef struct{
charuseFlag;
charname[10];
intprice;
} typHoge;
という記述はクラス変数にしちゃえばいいと思うのですが、
typHoge hoge[3]={
{1,"cola",120},
{0,"fanta",110},
{1,"coffee",130}
};
のように初期値を一気に記述する方法が解りません。
hoge[0].useFlag=1;
のように一々書かなくてもいいスマートな記述方法をどなたかご教授ください。
0248デフォルトの名無しさん
2006/07/31(月) 23:48:15残念ながら無い
……それからクラス変数にする意味が分からない
0249デフォルトの名無しさん
2006/07/31(月) 23:52:11class Hoge {
boolean useFlag;
String name;
int price;
public Hoge(boolean useFlag, String name, int price) {
this.useFlag = useFlag; this.name = name; this.price = price;
}
}
にして
Hoge hoge = new Hoge[] {
new Hoge(true, "cola", 120),
new Hoge(false, "fanta", 110),
new Hoge(true, "coffee", 130),
}
ならできる
0250247
2006/08/01(火) 00:24:35おぉ!ありがとうございます。
ぐーぐる先生に教えてもらった方法でもコンストラクタで書く方法(↓)はあったのですが、
ttp://www.crew.sfc.keio.ac.jp/lectures/2002s_oo_programming/kougi/kougi4/text04.pdf
配列、となるとどう書いたもんか試行錯誤してました。
> 確かに C 並の簡潔さは無いけど
コレは言語が違うので多くは望みません。大量のマトリックスをエクセルで編集して
簡単にプログラムに反映させたかったので、十分用は成します。ありがとうございました。
0251176
2006/08/01(火) 03:31:43デザインパターン入門買ってみました、凄い濃い内容ですね
まだDPの概念が理解しきれておらず、序盤のIteratorをやっていて気づいたのですが
DPというのはクラスを継承したりインターフェースを作って、それを元に様々なプログラムが利用でき
それが再利用性に繋がり、そのパターンを皆で共有すればお互いのソースが理解しやすい
という風に考えていいのですかね
とりあえず今はIteratorを理解するのに必死です、まだ一つめなのに苦労してます・・・
0252デフォルトの名無しさん
2006/08/01(火) 03:40:56Strategy から読み始めることを勧めてみる
0253デフォルトの名無しさん
2006/08/01(火) 09:53:390254デフォルトの名無しさん
2006/08/01(火) 10:01:01デザパタで設計してる気分にかなり浸れるね。
0255デフォルトの名無しさん
2006/08/01(火) 10:23:270256デフォルトの名無しさん
2006/08/01(火) 11:02:44jspに自分で作ったカスタムタグが2つ書いてあって
最初に呼ばれるタグがSKIP_PAGEを返してるのに
2つめのタグも呼ばれてしまいます。
これって仕様???
0257256
2006/08/01(火) 11:11:46doEndTag()で返さないと行けないのね・・・
doStartTag()でSKIP_PAGE返してもだめなんだな。
0258デフォルトの名無しさん
2006/08/01(火) 11:19:17alert(100*5.1);とかやると大変なことになるのね・・・
0259デフォルトの名無しさん
2006/08/01(火) 11:24:050260デフォルトの名無しさん
2006/08/01(火) 11:35:250261デフォルトの名無しさん
2006/08/01(火) 12:23:41なんだかなあ。
C言語とCシェル混同する人は見たこと無いのに(笑)
0262デフォルトの名無しさん
2006/08/01(火) 12:41:16混同してねーよ禿
0263デフォルトの名無しさん
2006/08/01(火) 12:51:05スレ違いどころか板違いなんだよ法経
0264デフォルトの名無しさん
2006/08/01(火) 13:39:21JavaがわかればJSもわかると思ってる時点で混同だよ、アホ
0265デフォルトの名無しさん
2006/08/01(火) 16:49:09とりあえずたくさんプログラム書いて徐々に覚えて行くの
ではどちらのほうがいいんでしょうか?
0266デフォルトの名無しさん
2006/08/01(火) 16:52:200267デフォルトの名無しさん
2006/08/01(火) 17:10:53途中から前者に切り替える。
0268デフォルトの名無しさん
2006/08/01(火) 17:13:45ある1行で'b0101 aaa
次の行で 'b0001 aab
見たいな感じの文章のaaaとかaabだけを取り出す時に
if (str.startsWith("'")) {
String s1 = (str.substring(str.indexOf(" ")));
これでやると空白まで取れちゃうんですが、空白を抜いたaaaやらaab
いう値だけは取る方法ってないでしょうか。
空白は変わらないんですが、aaaとaabは可変するように考えてやりたいんですが
どうしたら実現できますか??
0269デフォルトの名無しさん
2006/08/01(火) 17:14:10人によって、学習方法にも向き不向きがあるからね。
0270268
2006/08/01(火) 17:31:42substringに+1すれば良いことだったんですねorz
0271デフォルトの名無しさん
2006/08/01(火) 17:41:45住みません。だろが
0272デフォルトの名無しさん
2006/08/01(火) 17:52:30ワロタ
0273デフォルトの名無しさん
2006/08/01(火) 18:17:300274デフォルトの名無しさん
2006/08/01(火) 18:22:300275デフォルトの名無しさん
2006/08/01(火) 18:31:13そのオブジェクト自体
0276デフォルトの名無しさん
2006/08/01(火) 18:50:05JavaAppletでファイルをDnDして、そのファイルをphpか何か介してうpしたいと思っている。
だが、DnDでファイル読むとか基地外な事をやろうとする時点で詰まってる。正直わからん。
なんかRad Upload Liteとかいうフリーウェアが同じことやってるらしいが解析不可能。
ぼすけて。
0277デフォルトの名無しさん
2006/08/01(火) 18:53:38日本語でおk
0278デフォルトの名無しさん
2006/08/01(火) 18:56:01質問させて下さい。
JavaAppletを用いて、ファイルをドラッグアンドドロップさせてそのファイルを読み取り、
phpやaspxに投げてファイルをアップロードしたいと考えています。
アップロードのロジックは出来ているのですが、JavaAplletでのファイル読み込みの方法がわかりません。
JavaAppletでのドラッグアンドドロップ、ファイル読み込みの方法について分かる方いらっしゃいましたらご教授願います。
0279デフォルトの名無しさん
2006/08/01(火) 23:51:35emという名前のパッケージにあるMaxGameというクラスを起動したいと思います。
emの上のディレクトリにいると
java em.MaxGame
で起動できました。たいていの本にもそんなことが書いてあります。
しかし、
java em/MaxGame
でも起動できてしまいます。これは私が見た範囲の本には書いてありません。
どっちでもいいと言えばそうなんでしょうが、他の環境(私の環境はWinXP、Java5です)でも
そうなのか不思議です。
あるいは、この辺の仕組みを書いたドキュメントを教えていただけないでしょうか。
よろしくお願い致します。
0280デフォルトの名無しさん
2006/08/02(水) 00:00:53java em.MaxGame ⇒ em.MaxGame が起動
java em/MaxGame ⇒ MaxGame が起動
0281デフォルトの名無しさん
2006/08/02(水) 00:11:150282デフォルトの名無しさん
2006/08/02(水) 00:14:37前にソースを見たときはデフォルトのクラスローダは "." を "/" に置き換えて
クラスパスからクラスファイルを読み込んでた気がする。
ホントは置き換え前に "/" があったらエラーにすべきなんだろうけど
単純に "." の置き換えしかやってないみたいだからどっちでも通るんだろう。
0283デフォルトの名無しさん
2006/08/02(水) 00:35:49確かにそうだね。
たとえば、em.MaxGameを削除して実行すると、「em/MaxGameはありません」って出るよね?
ということは>>282が正解のような気がする。
0284デフォルトの名無しさん
2006/08/02(水) 02:20:12Aplletだからローカルへのファイルアクセスは出来ません。
もしそのようなことが出来たら、ディスク上のユーザの情報を抜き取るような
アプレットが作れてしまいます。
仮に苦労して出来たとしても、それはVMのセキュリティホールを突くような裏技的なものでしょう。
早晩パッチが出て動かなくなるのが関の山です。
0285デフォルトの名無しさん
2006/08/02(水) 02:22:12署名付きAppletって知ってる?
0286デフォルトの名無しさん
2006/08/02(水) 02:39:360287デフォルトの名無しさん
2006/08/02(水) 03:02:19おお、俺には未知の領域だ・・・orz
0288デフォルトの名無しさん
2006/08/02(水) 05:49:47自分がやっているIteratorパターンは本棚の中に本を入れ、その本の名前を順番に表示するものです。
Aggregate.java/Iterator.java/Book.java/BookShelf.java/BookShelfIterator.java/Main.java
以上の6つのクラスから成り立っているのですが、この6つの中身を追っていくのが難しいです
全てのソースを自分の中で把握出来ないというか、こういうクラス達をどう捉えていいか分かりません
やさしいJavaやデザパタ入門著者のJavaプログラミングレッスン上下をやって
忘れた、又は出てこなかった文があります。
例えばMain.javaのbookShelf.appendBook(new Book("Bible"));など自分が知らない形をしたものがでてきます
newをしているのでオブジェクトを生成してBookにappend(追加)としてると予想出来るのですが
基礎から今やってるものがどのように繋がってるか分からなくなります
オブジェクト生成の応用なのか、はたまた***.append***(new ***("***"))という形そのものが文として存在するのか
コンストラクタとメソッドも似ているではないですか、最初は同じ物だと思っていましたし
こういう分からない文は虱潰しにGoogleなどで一つ一つ調べてるのですが
たまに今自分がやってる事が正しいのか、無駄な事してるのか不安になるときがあります
…質問がずれてしまいました、俺には今なにが必要なのでしょうか( ;∀;) エスパーサンタスケテ
0289デフォルトの名無しさん
2006/08/02(水) 06:11:46AudioClipってwaveも使えますか
0290デフォルトの名無しさん
2006/08/02(水) 06:21:17IteratorではなくVisitorから始めなさい。
0291デフォルトの名無しさん
2006/08/02(水) 08:04:53そのだらだらした書き込みを見ると、
デザインパターンを勉強しても
活かせない気がするのは俺だけ?
とりあえず、デザインパターンのスレにどうぞ。
0292紹介したやつ
2006/08/02(水) 09:30:00イチイチ質問してたらラチあかなさそうだし、紹介したなりに責任感じるし、
疑問点があったら話聞くわ。捨てアド作ったから連絡汁。
do_you_want_to_java @ yahoo.co.jp
0293デフォルトの名無しさん
2006/08/02(水) 10:21:23音楽やりたいならJavaSound使え
ネイティブと同じ程度まで自由につかえるぞ
ゲームならOggVorbis使うとか
0294デフォルトの名無しさん
2006/08/02(水) 11:34:55とりあえず、
・Iterate 対象のオブジェクト
・Iterator 本体
・Iterator を使ってごにょごにょする処理
の3つに分けて考えるんだ。
0295デフォルトの名無しさん
2006/08/02(水) 12:15:47本屋でちらっと見てもよしわるしがわかりません。
あと、ゲームを作りながら覚えるみたいのがありましたが
その手本はまずいですか?
0296デフォルトの名無しさん
2006/08/02(水) 12:20:430297288
2006/08/02(水) 12:46:02変な気遣いをさせてしまって申し訳ないです、あの段階では右も左も分からなかったので
DPという物を知ったと言うだけでも大きな利益になりました、責任を感じるなんて滅相もない
>>291氏が指摘するように、DPを使うまでに至っていないからだと思います
メアドまで取ってもらったのに申し訳ないですが、基礎に戻ってもう一度頑張ってみます
>>290 >>294
参考にさせて頂きます。
0298デフォルトの名無しさん
2006/08/02(水) 13:27:460299デフォルトの名無しさん
2006/08/02(水) 13:35:560300デフォルトの名無しさん
2006/08/02(水) 13:40:220301デフォルトの名無しさん
2006/08/02(水) 13:52:260302デフォルトの名無しさん
2006/08/02(水) 15:00:06いや、その理屈はおかしい。
Script はお手軽なんだから、Java だろ。
0303デフォルトの名無しさん
2006/08/02(水) 15:26:530304デフォルトの名無しさん
2006/08/02(水) 15:31:00マルチスレッドプログラムの作りにくさでJavaScript。
Javaでやるほうが断然簡単。
0305デフォルトの名無しさん
2006/08/02(水) 16:13:180306デフォルトの名無しさん
2006/08/02(水) 17:22:04最近ホームページにjavaがついたのがありますが、これは解析できるんですか?
たとえば時計とか・・・
世界の時刻ってありますよね、そのデータをリアルタイムで取得したいんですが
java勉強すればデータを取得できますか?
ちなみにjavaはまったく勉強してません
0307デフォルトの名無しさん
2006/08/02(水) 17:50:470308デフォルトの名無しさん
2006/08/02(水) 18:13:36右上の×ボタンが押されたら,アプリケーションが終了する際に
windowClosing(WindowEvent e)
が呼ばれると思うのですが,この時に終了するか否かの確認ダイアログを表示し,
YESだった場合にのみ終了するようにしたいのです.
つまり,NOのときは終了を中断したいと思っています.
ウィンドウのクローズを中止するような手法が確かあったと記憶しているのですが,
探しても見付けることができませんでした.ご存知の方,どうかご教授くださいませ.
0309デフォルトの名無しさん
2006/08/02(水) 18:16:40終了のときはSystem.exit(0);
0310デフォルトの名無しさん
2006/08/02(水) 18:20:25「windowClosing」でぐぐったら7番目にそのもののサンプルが
あったyo!
setDefaultCloseOperation()
0311デフォルトの名無しさん
2006/08/02(水) 18:26:06うまくいかないですね...
断片的なのですが,下記のように記述しています.
//----コンストラクタ中
this.addWindowListener(new WindowAdapter(){ // コントロールのクローズボタンが押された場合
public void windowClosing(WindowEvent e){
programExit(); // プログラムの終了処理呼び出し
}
});
//----
public void programExit() { // プログラムの終了処理を行うメソッド.
int value = JOptionPane.showConfirmDialog(this , "終了しますか?","終了" , JOptionPane.OK_CANCEL_OPTION);
if (value == JOptionPane.YES_OPTION) { // 終了が選ばれたとき
System.exit(0); // プログラム終了
} else { // そのほかの場合
; // 何もしない
}
}
これで,NOを選んだ時にもウィンドウが閉じられてしまうのですが,
何かおかしいでしょうか?このprogramExit()は,
ボタンを押した時にも呼ばれるようにしているのですが,
このボタンから終了を選んだ時には正常に機能しています.
ですが×ボタンだとダメなようです...
0312デフォルトの名無しさん
2006/08/02(水) 18:29:110313デフォルトの名無しさん
2006/08/02(水) 18:30:48J2SE5.0をインストールしようとすると文字化けしてしまうのですが
どうすれば直るのか教えてください
0314312
2006/08/02(水) 18:31:20ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/javax/swing/WindowConstants.html
0315デフォルトの名無しさん
2006/08/02(水) 18:31:45でおk
0316308
2006/08/02(水) 18:33:29いや,お恥ずかしいです...
こんなところでミスってたとは....
setDefaultCloseOperation()
を設定していませんでした.;;
ということで設定したら,意図通りの動作をするようになりました.
ありがとうございました.
0317デフォルトの名無しさん
2006/08/02(水) 18:35:18どこが文字化け?
何にインストールしようとしてるの?
313は国語から勉強ね。(・∀・)
0318デフォルトの名無しさん
2006/08/03(木) 00:14:570319デフォルトの名無しさん
2006/08/03(木) 00:28:270320デフォルトの名無しさん
2006/08/03(木) 02:13:010321デフォルトの名無しさん
2006/08/03(木) 02:29:390322デフォルトの名無しさん
2006/08/03(木) 02:39:21これは失礼。
0323デフォルトの名無しさん
2006/08/03(木) 02:42:090324デフォルトの名無しさん
2006/08/03(木) 03:04:03初心者は初心者でも、自発性のカケラも見られないクズがやたらと多いからな。
0325デフォルトの名無しさん
2006/08/03(木) 03:07:46・ちょっと調べてみればすぐにわかることを聞く
・他力本願
・教えてもらって当然という態度&思い通りの答えがもらえないと逆ギレ
・日本語がまともに使えない
・Javaの初心者じゃなくて社会とのコミュニケーションの初心者
こういう奴は願い下げだね。
0326デフォルトの名無しさん
2006/08/03(木) 03:19:440327デフォルトの名無しさん
2006/08/03(木) 03:22:23日本語でおk
0328デフォルトの名無しさん
2006/08/03(木) 03:28:41fj にでも引っ込んでればいいのに。
0329デフォルトの名無しさん
2006/08/03(木) 04:07:56全ての配列要素を intValue() するしかない?
0330デフォルトの名無しさん
2006/08/03(木) 04:11:220331デフォルトの名無しさん
2006/08/03(木) 09:07:34下記のプログラムの実行結果が
"aaa" しか通らないんだけど、なにか心当たりある方居ますか?
public static void function() throws IOException {
try{
// 処理
System.out.println("aaa");
}catch( IOException e ){
System.out.println("eee");
if( _DEBUG )
System.out.println( "function() : 失敗しました。" );
throw e;
}finally{
System.out.println("bbb");
try{
// 後始末
}catch( IOException e ){}
System.out.println("ccc");
}
System.out.println("ddd");
}
0332デフォルトの名無しさん
2006/08/03(木) 10:42:16jcpadでソース打ってエラーも出ず実行もするのですが
その際に出るコンソールがすぐに出て消えてしまいます・・・
本来ならずっと出ているはずなのに!
実行結果も確認できるのですが瞬間的にしか見れません
原因がわかりません
0333デフォルトの名無しさん
2006/08/03(木) 11:15:59どのようなものがあるのでしょうか?
お手数ですが、教えていただけないでしょうか。
0334デフォルトの名無しさん
2006/08/03(木) 11:18:080335デフォルトの名無しさん
2006/08/03(木) 11:20:05中身を全部取り出して比較
0336デフォルトの名無しさん
2006/08/03(木) 11:34:38比較の仕方ってどうするのでしょうか?
質問ばっかりですみません。
0337デフォルトの名無しさん
2006/08/03(木) 11:49:48Collections.sort メソッドを使おう。
0338デフォルトの名無しさん
2006/08/03(木) 12:38:23最大値知るのにソートはいらないよ
Collections.max使おうぜ
0339デフォルトの名無しさん
2006/08/03(木) 12:40:44ごめん!
0340デフォルトの名無しさん
2006/08/03(木) 12:45:30サーブレットからクライアントにあるexeファイルを実行させる命令をだしたいのですが
そういった事は可能でしょうか
よろしくお願いします。
0341デフォルトの名無しさん
2006/08/03(木) 12:57:17違うのはサーバ側だけです。まず、仕組みを理解しましょう。
0342デフォルトの名無しさん
2006/08/03(木) 12:59:220344デフォルトの名無しさん
2006/08/03(木) 16:40:28ArrayList<Image>にBufferedImageからgetScaledInstanceで取り出したImageをaddしたいのですが、NullPointエラーがでます。
何がいけないのでしょうか。ソースの該当部分は↓
public static int Unit_img_read(String path){
int i=0;
File f=new File(path);
Image img;
try {
BufferedImage bi = ImageIO.read(f);
global.nation.img.add(bi.getScaledInstance(global.chipsize,global.chipsize,Image.SCALE_SMOOTH));
i=global.nation.img.lastIndexOf(bi.getScaledInstance(global.chipsize,global.chipsize,Image.SCALE_SMOOTH));
}
return i;
}
}
どうかよろしくお願いします
0345デフォルトの名無しさん
2006/08/03(木) 17:12:18無いんでしょうか?
というかfillPolygonを実際に処理してるのはどの部分なんでしょうか?
Graphics.javaはabstractだったのでわかりませんでした
何卒宜しくお願いします。
0346デフォルトの名無しさん
2006/08/03(木) 18:03:22エラーメッセージも投稿汁
0347デフォルトの名無しさん
2006/08/03(木) 18:06:40真っさらなコンポーネントに描画して、色が違うところをカウントすりゃ
いいんじゃないか?
0348344
2006/08/03(木) 18:41:39Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at file.imgread.Unit_img_read(imgread.java:34)
と出ました
それと、global.nation.imgはpublic ArrayList<Image> img=new ArrayList<Image>();です。
0349デフォルトの名無しさん
2006/08/03(木) 19:07:59bi が null になってしまっているかどうか調べてみて。
こういう場合、
どのオブジェクトが例外を発生させているのか
まず特定しないと。
0350デフォルトの名無しさん
2006/08/03(木) 19:24:24これと同じ処理で、ArrayList<Image>ではなくて、Imageに代入しているものがあるのですが、そちらではエラーは出ず、Imageの中身もしっかりと存在します。
pathも確認しましたが大丈夫でした。
ArrayList<Image>の各要素が何か特別なのでしょうか…
0351デフォルトの名無しさん
2006/08/03(木) 19:50:05ゲームで使ってるんで同じ色の別のポリゴンがかぶってしまうんです。
そういう面積を求めるメソッドって無いですか?
0352333
2006/08/03(木) 21:33:25Collections.maxのおかげで最大値は分かるのですが
これを比較に用いることはできないのでしょうか?
ArrayList count = new ArrayList();
ArrayList<String> list = new ArrayList<String>();
count.add(list.size());
int a = 0;
if(a < (Collections.max(count))) {
〜〜
}
という処理をしたいのですが、比較のところでエラーがバンバン出ますorz
説明が分かりにくくてすみませんが「もしかしたらこれじゃない?」と
言うのがありましたらご指摘お願い致します<(_ _)>
0353デフォルトの名無しさん
2006/08/03(木) 21:41:07エラーぐらい書けハゲ
0354デフォルトの名無しさん
2006/08/03(木) 21:41:47fillPolygonの引数から自前で計算するのではダメかな。
0355デフォルトの名無しさん
2006/08/03(木) 22:08:15ArrayList<Integer> count = new ArrayList<Integer>();
これでコンパイル時の型エラーが消えるはず。
0356333
2006/08/03(木) 22:30:31<Integer>でしたか。
<int>で試して無理だったので頭抱えてた自分は馬鹿ですね('A`)
感謝感謝です。
ところで皆さんに質問なのですが
参考書とかは何か使っていますか?
ArrayListが載っている本は少ない気がするのですが・・・・
「お前みたいな無知はこれでも読んでろ!」っていう本はありますか?
0357デフォルトの名無しさん
2006/08/03(木) 22:44:56一昔前の書籍だと Vector を使っているのが多いような希ガス。
最近のだと ArrayList が載っているんじゃかいかとは思うけど、実態まではさすがに……。
Java言語仕様 (ISBN: 4894713063)
Sun Certified Programmer for the Java2問題集 (ISBN: 4797324902)
とかはわりとおすすめ。初心者向けじゃないし、5.0 には対応してないけど。
0358デフォルトの名無しさん
2006/08/03(木) 22:55:34無料だし、造り主だし。
ArrayList というよりは、Collections というキーワードになるかな。
5.0 での追加機能関連は
外部の解説ページはあちこちにあると思う。
こういうのどう?
www.javainthebox.net/laboratory/J2SE1.5/LangSpec/Generics/Generics.html
0360デフォルトの名無しさん
2006/08/03(木) 23:34:17本もそうですが、態度というか、心構えで。
エラーメッセージが出たら、具体的になんとでているか読み取る努力をして、わからなければメッセージの意味を
調べるような探究心が大切です。
あ、エラーだ、で流してしまうひとは、本を買っても進歩がいまいちでしょう。
l
0361デフォルトの名無しさん
2006/08/03(木) 23:50:41意味が伝わっていなかったみたいだな。
本来の描画対象とは別に計算用の描画対象コンポーネントを作っておいて、
その計算用に対して、
真っ白にする→描写する→描写された領域を計算する
ってやれば良いのではないかと。そうすればそれまでに描写されている
データは関係ないだろ? コンポーネントも、インスタンスを1つだけを
(次の計算までの間隔が短いなら、BufferStrategyと同じ要領で複数の
インスタンスを)使い回せば、それほどひどいコストは発生しないだろうし。
0362デフォルトの名無しさん
2006/08/04(金) 00:00:39この期に及んで、初級の本でVectorを基本にしてる書籍なんかないだろ。
お前は本を全て古本屋で、しかも300円以下のコーナーで探してるんじゃないか?
まともに勉強する気があるなら、ちゃんと最新書籍を買え。
少なくとも、Ver 1.2 以前のやつはやめろ。
0363デフォルトの名無しさん
2006/08/04(金) 00:03:48何を悩んでいるのか知らないが、ピクセル数を知りたいのか、面積を知りたいのか。
もしピクセル数を知りたいのなら境界上のピクセルはどう扱うのかはっきりしろ。
もし面積を知りたいのなら、fillPolygonはどうやって描いたんだ。
頂点の座標が分かってるなら多角形の面積の公式くらい中学校で習っただろうに。
0364デフォルトの名無しさん
2006/08/04(金) 00:10:51>>345はピクセル数って書いてるじゃん。
しかも境界上って、それはピクセル数か面積かの違いだろ。
ピクセル数前提になってないじゃん。
相手をバカにしすぎだろ。
0365デフォルトの名無しさん
2006/08/04(金) 00:15:13境界上のピクセルはピクセル数に含めるかどうかを聞いているだけなんだが
0366デフォルトの名無しさん
2006/08/04(金) 00:21:030367345
2006/08/04(金) 00:23:20ゲーム用なので境界とかは大雑把でよかったんです。
最初は公式でやってたんですが図形が@←こんな状態の時内側の面積も
足されてしまっていたので困ってたんです。
今ちょっと自前でスキャンラインを実装して、遅いけど何とか動いたんで自己解決です。
ありがとうございました。
0368デフォルトの名無しさん
2006/08/04(金) 00:25:27>>366
0369356
2006/08/04(金) 02:11:45アドバイス感謝です。
今度書店に行ったら探してみます。
ネットにも色々あるみたいなので、それも探してみたいと思います。
>>360
探究心ですか。
確かに調べる気が無いと駄目ですよね。
今後、意識して探求していきたいと思います。
皆さん、貴重なご意見ありがとうございました。
重ね重ねお礼申し上げます。
0370デフォルトの名無しさん
2006/08/04(金) 02:18:34http://www.qrcodeblog.com/
ここで紹介しているQRコードはどのように作成しているのでしょうか?
http://sourceforge.jp/projects/qrcode/
上のリンクのデコードソフトでまともに読めるQRコードがこのBlogで紹介しているQRコードだけなんです。
文字コード関係っぽいのですが、よくわかりません。。。
0371デフォルトの名無しさん
2006/08/04(金) 02:19:02がんばれよー
0372157
2006/08/04(金) 06:46:21本当に随分レスおそくなりました。
ありがとうございました。
0373344
2006/08/04(金) 11:56:57global.nation.imgにアクセスするだけでNullPointErrorが出てしまいます。
Imageの初期値がNullだからかなと思ったりもするのですが、
どのようにすればこのエラーが出ないようになるでしょうか
いろいろ調べたりもしましたが、まったくわかりません
どうかよろしくお願いします
0374デフォルトの名無しさん
2006/08/04(金) 12:19:10が開かないのは俺だけ?
ソースを見てみるとちゃんとあるんだけど、
セキュリティーとかプライバシーとか最低にしても何も表示されない…。
0375デフォルトの名無しさん
2006/08/04(金) 12:20:42このまえからIEで見れない。
0376375
2006/08/04(金) 12:22:41http://java.sun.com/javase/downloads/index.jsp
0377デフォルトの名無しさん
2006/08/04(金) 12:23:36どのように戻して良いかわかりません。
過去のファイルを更新して更新日時を変えると出来るみたいなんですが、
更新せずに最新ファイルを過去ファイルに入れ換える方法を教えて下さい。
WebLogicを使用しています。
0378デフォルトの名無しさん
2006/08/04(金) 12:24:06なぜか今はIEでも見られる
0379デフォルトの名無しさん
2006/08/04(金) 12:55:08過去ログ嫁
0380デフォルトの名無しさん
2006/08/04(金) 15:50:45>>53-54,>>69
0381デフォルトの名無しさん
2006/08/04(金) 18:14:47JITコンパイラ?ってどこでダウンロードできるんですか?
0382デフォルトの名無しさん
2006/08/04(金) 18:15:34ブラウザをFirefoxにしたら閲覧する事ができたよ。
0383デフォルトの名無しさん
2006/08/04(金) 18:22:510384デフォルトの名無しさん
2006/08/04(金) 19:43:39ベクターのJavaカテゴリを適当に漁れ。
>>383
ブラウザの問題じゃない場合も多い。
HTMLの書き方が不適切だったり、httpサーバーの設定が狂ってたり。
それに、css絡みでFirefoxではまともに閲覧できないサイトの方が多いだろ。
0385デフォルトの名無しさん
2006/08/04(金) 19:58:15Java ソフトウェアが
http://ex16.2ch.net/test/read.cgi/news4vip/1154687811/
0386デフォルトの名無しさん
2006/08/04(金) 20:00:200387デフォルトの名無しさん
2006/08/04(金) 20:02:13実はお前だろw
0388デフォルトの名無しさん
2006/08/04(金) 20:09:070389デフォルトの名無しさん
2006/08/04(金) 20:56:07おいおい、突撃されるぞ。
0390デフォルトの名無しさん
2006/08/05(土) 10:36:14IEで思ったとおりに表示させようとして、一般的でない書き方をしたcss
がごろごろしてるからかな。
そういうのをテクニックとして紹介してるサイトもあるし。
0391デフォルトの名無しさん
2006/08/05(土) 13:16:55IE7でのCSS修正は比較的正しい方向への修正ぽいね。
0392デフォルトの名無しさん
2006/08/05(土) 15:53:09が例外になるときってどんな時ですか?
Fileはnullじゃないです。API見てもわかりませんでした。
この文で例外を投げているのは間違いないのですが
0393デフォルトの名無しさん
2006/08/05(土) 15:59:55・ファイル形式がサポートされてない形式のとき。UnsupportedAudioFileException
0394デフォルトの名無しさん
2006/08/05(土) 17:20:190395デフォルトの名無しさん
2006/08/06(日) 00:55:46クラス変数、クラスメソッドとインスタンス変数、
インスタンスメソッドの違いがいまいちわかりません。
あとオブジェクトとは厳密にはclassを指すものではないの?
俺の中では1つのclassをオブジェクトだと補完してるんだけど。
多分オブジェクトとclassを同義と捕らえてるからわからないんだと思う。
どうかご教授ください。
0396デフォルトの名無しさん
2006/08/06(日) 01:04:01厳密に言わなくてもまったく違うものだ。
あと教えてもらうときは「教示」という。教えてあげるときは「教授」という。
0397395
2006/08/06(日) 01:09:32レスありがとう。
オブジェクト=モノの「モノ」って何ですか?
実際にあるものじゃなくあるものと想定した「モノ」なんですか?
あれれ?
クラスの中にオブジェクトがあるってこと?
どういうものがオブジェクトとか具体例とかって出せたらお願いします。
今まで教授だと思ってた教示なのねありがと。
0398デフォルトの名無しさん
2006/08/06(日) 01:26:30クラスはオブジェクトの設計図と思えばいい。
俺はよく車に例えるんだが、
車の設計図がクラスで、
その設計図をもとに作られた車がインスタンス
車の実体もオブジェクトだし、設計図自体もオブジェクト
んー、難しいな。
0399デフォルトの名無しさん
2006/08/06(日) 01:26:50まずインスタンス変数、インスタンスメソッドはnewしたオブジェクトにおいて使える。
「変数名」「ドット」「変数/メソッド名」で使用できる。
str1 = new String("貪"); // インスタンスの生成
str2 = new String("瞋"); // 生成したものについて使用できるのがインスタンス変数/メソッド
str1.charAt(0); // 貪
str2.charAt(0); // 瞋
たいして、クラス変数、クラスメソッドはnewしておらずとも使える。
「クラス名」「ドット」「変数/メソッド名」で使用できる。
String.valueOf(1000); // valueOfメソッドはクラスメソッド
インスタンスメソッドは、「インスタンス」ありきで想定された処理であり、
つまり、「インスタンス+処理」がインスタンスメソッド。
クラスメソッドは「処理」のみ。
なんに使うかは考えてけれ。
0400デフォルトの名無しさん
2006/08/06(日) 01:37:53こういうのってJavaの絵本見たいのとかに載ってるよね!
一回読むべきかも…。
オブジェクトの定義がいまいち掴めない…。
>>399
凄く丁寧に説明してくれてるんだけどいまいちわからない…。
クラスメソッドの方が限定された場合に使うってことなのかな?
0401デフォルトの名無しさん
2006/08/06(日) 01:51:10「オブジェクト」 は 「クラス」 と 「インスタンス」 をまとめて指す言葉。
大抵は 「オブジェクト」 って言ったら 「インスタンス」 のほうを指すんだけど、
ドキュメントだと区別しない場合も多いからね。
「Point オブジェクトを返す」 って書いてあったら 「Point クラスのインスタンスを返す」
って意味だからねぇ。
ちなみに、クラスは Class クラスのインスタンス。
0402デフォルトの名無しさん
2006/08/06(日) 01:56:23わかりやすくありがとう。
なんとなくだけどわかりそうだよ。
ここのみんな優しいな。
やっぱ独学なら独習Javaとか買うべきなのかな?
今使ってるのが基本情報技術者試験Java完全合格教本
って奴。
もう一冊はじめてのJavaプログラミング改訂版基本編
って持ってるけどこっちはまだ手をつけてない感じ。
1冊終わってからのつもりだったけど平行してってのも必要かな?
目標はないけどとにかく頑張る!
0403デフォルトの名無しさん
2006/08/06(日) 02:07:51概念の学習は、あまり急がないほうが良いよ。
じっくりやるとよろし。
それから、『オブジェクト指向は1通りではない』 ってことは注意しなきゃいけないかと。
ケイのオブジェクト指向を先に覚えてから、ストラウストラップのオブジェクト指向を学ぶことを個人的にオススメするよ。
とりあえず前者を覚えると、「オブジェクト」 が何を指すのか理解できるとおもう。
0404デフォルトの名無しさん
2006/08/06(日) 02:16:18ケイとかストラウストラップ?とか種類があるんだね。
大変そうだ。
取り合えず基礎の文字列、配列、制御構文、メソッドあたりは大丈夫。
クラスは概念から何から不安次は何を学ぶべき?
MathクラスIntegerクラスとかも速めに覚えるべき?
継承とかかね。
軽く一通りは覚えたいんだよね。
0405デフォルトの名無しさん
2006/08/06(日) 02:32:14例えばインタフェイスや多態を使うとどんな感じに何ができるのかとかを。
大体完了したら、次はそれを定義する方法を学ぶ。
0406デフォルトの名無しさん
2006/08/06(日) 03:32:000407デフォルトの名無しさん
2006/08/06(日) 03:33:570408デフォルトの名無しさん
2006/08/06(日) 04:05:23HPを作成しているのですが一つのページを斜めに区切りたい場合、
HTMLのTABLEタグ等で二段のテーブルを作った場合に
真ん中の罫線を斜めにする事はできませんか?
0409デフォルトの名無しさん
2006/08/06(日) 04:23:00なぜその質問をこのスレでする?
0410デフォルトの名無しさん
2006/08/06(日) 04:29:270411デフォルトの名無しさん
2006/08/06(日) 06:18:26ケイ
→Alan Kay Smalltalkのひと
ストラウストラップ
→Bjarne Stroustrup C++のひと
0412デフォルトの名無しさん
2006/08/06(日) 06:28:46→Bjarne Stroustrup 禿
0413デフォルトの名無しさん
2006/08/06(日) 07:16:05オブジェクト指向っつーよりは、UMLを勉強するべきなんじゃない?
0414デフォルトの名無しさん
2006/08/06(日) 09:42:46String name;
public void init(){
name = getParameter("imgName");
}
というぷろぐらむのString nameの所は、
String型の変数nameを宣言して、
name = getParameter("imgName")のところで
オブジェクトを作成して、その変数を使えるようにしていると考えて良いのでしょうか?
0415デフォルトの名無しさん
2006/08/06(日) 10:12:2830点。
それは新たにインスタンスを生成しているとは限らない。
Javaにはプリミティヴ型と参照型しか存在しない。
プリミティヴ型というのは、int とか double とか char とかの
基本的なデータ型のこと。
で、参照型っていうのは、メモリ上のどこにインスタンスがあるかという
情報を格納したもの。
例えば、
SomeClass someClass = new SomeClass();
という文があったとして、new 演算子はメモリ上に新たなインスタンスを
生成する。で、変数 someClass にはそのインスタンスがどこにあるのか
という情報だけが格納される。
で、以降 someClass.someMethod(); という風に利用することで、
メモリ上のインスタンスを辿ってメソッドを実行できるという流れ。
で、String 型はあくまでも参照型であって、その getParameter(String)
メソッドで返されるのも、やっぱり参照型。
もしそのメソッドが
return new String("xxx");
という風に、新たにインスタンスを生成してその参照型を返したなら
まだ良い。
0416続き
2006/08/06(日) 10:13:32public class SomeClass{
private String myName;
public String getName(){
return myName;
public void setName(String name){
myName = name;
}
}
}
というクラスのインスタンスがあったとして、getName() メソッドで
String 型の返値を得たとしよう。
しかし、その返値はあくまでも「この文字列情報は、SomeClass の
インスタンスの中にありますよ〜」って情報しか持ってないから
(具体的に文字列の内容が何なのかという情報を持っていない)、
もし setName(String) メソッドが使われて myName に何らかの
変更が加わった場合、それを参照している変数にも影響が及ぶ。
だから、返値は何でもかんでも新しく生成されて出てくるものと
思うのはやめるべし。
0417デフォルトの名無しさん
2006/08/06(日) 10:23:45まあ、そうだね。
String name; だけでは中身のないものを宣言しているだけ。
name = getParameter("imgName");の部分ではオブジェクトを作成しているかどうかはわからないが、
どこかで作成されたStringオブジェクトを、変数nameの中に入れて使用できるようにしていると考えていいね。
0418414
2006/08/06(日) 11:53:28感動です。
実は、javaあんまり知らないのに人に教えることになって、
苦しんでたんです。
もしよければ、つくったレジュメ見てもらえませんか?
http://strawberry.web-sv.com/cgi/up/bib.html
のnm1070.zipという奴です。
なかみは、.doc形式です。
0419デフォルトの名無しさん
2006/08/06(日) 12:53:00そのテキストファイルから取得した情報を画面に表示するという処理を行おうと思っています。
しかしアップロードされるテキストファイルのエンコードに何が指定されるかがわからないため、
文字化けに苦労しています。
テキストファイルのエンコードを知る方法というものはあるのでしょうか?
0420デフォルトの名無しさん
2006/08/06(日) 14:21:410421デフォルトの名無しさん
2006/08/06(日) 14:33:49ArrayList<String> list = new ArrayList<String>();
list.add("a,b,c");
list.add("de,fg,hi");
for(String s:list)
for(String t:s.split(","))
System.out.println(t);
0422デフォルトの名無しさん
2006/08/06(日) 15:02:12文字コードがJIS,SJIS,EUC-JPだけなら、
InputStreamReaderで与える文字セットにJISAutoDetectを指定すると一応自動判別してくれる。
0423デフォルトの名無しさん
2006/08/06(日) 15:08:03iteratorインターフェース実装済みのオブジェクトのみと思ってた。。。
0425デフォルトの名無しさん
2006/08/06(日) 15:17:54推敲はしたのか?
今読み始めたところだが、最初の数行で国語的に微妙だぞ。
内容も大事だが、文章が適切でないといくら頑張っても相手に伝わらんぞ。
他人が読んでるつもりで、もう一度全体を見直して、再うpしる。
0426デフォルトの名無しさん
2006/08/06(日) 15:22:57IteratorインターフェースでなくIterableインターフェースを実装しているクラス。
もしくは配列。
ttp://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.14.2
0427420
2006/08/06(日) 15:50:08おかげさまでプログラムはできたのですが
少々質問が。
for(String s:list)
この処理ですが「listをString型のsに入れる」ですよね?
for文は繰返処理のみと思っていたのですが。
お手数ですが、少しだけ解説してもらえないでしょうか。
0428デフォルトの名無しさん
2006/08/06(日) 15:54:39for(String s:list) は list の各要素を順々に s に代入していくという意味だ。
0429デフォルトの名無しさん
2006/08/06(日) 15:57:290430デフォルトの名無しさん
2006/08/06(日) 15:57:37listそのものではなく、listの要素を順番にsに代入して繰り返す処理。
for(Iterator i=list.iterator(); i.hasNext();){
String s = i.next();
:
:
}
のような処理を行っている。
0431デフォルトの名無しさん
2006/08/06(日) 15:58:090432デフォルトの名無しさん
2006/08/06(日) 15:59:16・・・
}
と
for(int i=0; i<list.size();i++){
String s = list[i];
・・・
}
は同じって考えれ。
0433432
2006/08/06(日) 16:00:000434デフォルトの名無しさん
2006/08/06(日) 16:00:11それが指定される文字コードがまったくわからない状況なので・・・
ポルトガル語を含んだよくわからない文字コードのファイルやら、
ハングルが入ってるテキストファイルやら・・・
テキストファイルから「推測」はできても「判別」はムリそうですね。
ありがとうございました。
0435430
2006/08/06(日) 16:02:28for(Iterator i=list.iterator(); i.hasNext();){
は
for(Iterator<String> i=list.iterator(); i.hasNext();){
0436デフォルトの名無しさん
2006/08/06(日) 16:08:42それは国際色豊かな……
そこまでバリエイションがあるなら、
いっそのことUNICODEに変換してからアップしてほしいと
ユーザに頼んでおくとかの運用面での対処が現実的かもしれない。
0437420
2006/08/06(日) 16:16:18解説ありがとうございます。
続けて質問ですが、皆さんはどこで知識を得たのでしょうか?
私は「Javaの道」などのサイトを閲覧する程度ですが・・・。
0438デフォルトの名無しさん
2006/08/06(日) 16:28:15SUNのJavaサイトのドキュメント
0439デフォルトの名無しさん
2006/08/06(日) 16:28:39楽しそうなので俺も>>418を読んでみた。
まず、段落をしっかり分けたほうがいい。
読み手が、複数の事柄をひとつの長文でズルズルと、
読まされていく感じの構成になっているので非常に読みにくい。読み手が頭の整理がしにくいと思う。
もう少し、文章を事柄によって、区切りを付けて書いたほうがいい。
以下は例。こんな感じでなくてもいいけど。
□コメントとは
なんたらかんたら
□インデントとは
なんたらかんたら
□インポートとは
なんたらかんたら
0440デフォルトの名無しさん
2006/08/06(日) 16:44:28とにかく色々なソースを読みまくる。
とにかく色々な書籍を読みまくる。
とにかく色々とEclipseに怒られまくる。
0441デフォルトの名無しさん
2006/08/06(日) 18:30:28javac と殴り合いながら親睦を深めていくのです。
あとは経験と慣れ。
文法とか単語覚えるのも重要だけど、実際に会話してみなきゃ話せるようにならないってことで。
0442418 エコ
2006/08/06(日) 18:43:30二名の方が読んで下さったようで嬉しいです。
プログラムの内容は釧路の地図を読み込んで、
それに○を付けて線を引くっていう単純なものなんですけれど、
教えるとなると・・・
一応レジュメとプログラムを印刷して、このプログラムの機能は
こういう意味だよってレジュメを添えて教えるつもりです。
しかし、相手がパソコンのパも知らない上に、
自分もJavaの勉強をはじめて2週間なので、このレジュメを書くために
死ぬほど本とインターネットでしらべました。嘘教えるわけにはいかないので。
ホントは、JavaっていうのはSun microsystemsが開発した言語で、
プラットフォームに依存しないとかも教えなきゃいけないんでしょうけど、
いかせん時間がなくて。
文章が支離滅裂なのは徹夜で書いたと言うことで勘弁して下さい。
では、頑張って教えてきます。
0443デフォルトの名無しさん
2006/08/06(日) 19:08:140444デフォルトの名無しさん
2006/08/06(日) 22:29:51「教える」のであれば、前もって大層な資料を作っても無駄だと思うけどな。
質問してくる内容に丁寧に回答すればよし。
うまい講師ほど、その人にあった内容を選択して話す。
0445デフォルトの名無しさん
2006/08/06(日) 22:55:43研修でちょこっとjavaやってブロック崩しもどきのようなものを作った程度
オブジェクト指向がよく理解できていない
javaでゲームを作ろうと思ってます。どういう点に気をつければいいでしょうか
0446デフォルトの名無しさん
2006/08/06(日) 23:01:47最近、ShaniXMLParserというXMLパーサを見つけ、
これを使って整形式ではないHTMLをDOMで扱いたいと考えていますが、
Xercesパーサと違い情報が少なくてどのように使うのかがわかりません。
使い方ご存じの方ぜひ教えてください。
0447デフォルトの名無しさん
2006/08/06(日) 23:06:58もう少し状況を詳しく書いて欲しいな。
どういった事情で2週間の準備期間のみで教えるとかいう状況になって
しまったのかはよくわからんが、その教える相手がどこまで達成できれば
良いのかって目標もレジュメ作りの大事なところだからな。
単にそのアプレットの仕組みを理解できれば十分ってだけなら、
そのアプレットのソース中で難解と思われる部分だけ抑えれば良いし、
そのアプレットを基礎にJavaの何たるかを教えにゃならんのなら、
要点を虫食いにした穴埋めレジュメを作るなんてのも方向の一つとして
考えられる。
俺も独学バカだから知識面はある意味微妙だが、何かあったら
>>292にでも気軽にメールくれ。
0448デフォルトの名無しさん
2006/08/06(日) 23:08:14特に悩みもない場合は、教えるものも特にない。
プログラム組んでればどういう点に気をつければいいか、何が足りないか、おのずと見えてくる。
そのときに、何か質問したいことがあったらここで聞くといい。
0449デフォルトの名無しさん
2006/08/06(日) 23:12:11具体的にどういうゲームを作りたいのだ?
大規模であればあるほど、ある意味 Java の細かいことなんか一旦
忘却の彼方へぶっ飛ばして作らなければ、うまく行かない可能性もあるからな。
0450デフォルトの名無しさん
2006/08/06(日) 23:38:29class Test{
public static void main(String args[]){
System.out.println("nurupo");
}
}
これを実行しようとすると
Exception in thread "main" java.lang.NoClassDefFoundError: Test
というエラーが出ます。
何が間違っているのかわけがわかりません
0451デフォルトの名無しさん
2006/08/06(日) 23:51:42>>1
0452404
2006/08/07(月) 00:00:26UMLが何かよくわからないんですけど今日UMLの本買ってきました。
Java優先で時間あったら学んでみます。
0453デフォルトの名無しさん
2006/08/07(月) 00:14:39JDKがダウンロードできなくて。
「J2SE5.0(日本語)」がないんですよね。
いろいろさまよって探しても、それらしきページは真っ白に・・・
最近はじめられた皆さん、ダウンロードはどうされましたか?
0454446
2006/08/07(月) 00:18:000455デフォルトの名無しさん
2006/08/07(月) 00:18:18JAVAで携帯のゲームを作ろうと思っています。
それで、新しくパソコンを買いたいのですが、
こういう機能があったほうがいいとかオススメのパソコンがあったら教えてください。
0456デフォルトの名無しさん
2006/08/07(月) 00:20:550457デフォルトの名無しさん
2006/08/07(月) 00:35:45パソコン周りゴチャゴチャしてて本なんて置くスペースないんだよね。
だからノーパでやってたんだけどノーパも打つのが安定しない。
いい方法無い?
0458デフォルトの名無しさん
2006/08/07(月) 00:41:231.周りを整理して本を置くスペースを作る
2.専用のスタンドがあるのでそれを使う
0459デフォルトの名無しさん
2006/08/07(月) 00:46:48スピーカー、タワー型本体、モニター、スピーカー
って並んでるからこれ以上机の上は片付かないんだ。
専用のスタンドか…いちいち手放してセットするのもめんどそう。
やっぱ足の上しかないのかな…。
俺は机だけどパソコンラックだともっとスペースないよね?
みんな頑張ってるんだな。
0460デフォルトの名無しさん
2006/08/07(月) 00:46:58>>380 (>>69)
0461デフォルトの名無しさん
2006/08/07(月) 00:52:20タワー型なら机の下に置く
スピーカーはモニターと一体型の物にするか、ヘッドフォンにする
所謂パソコンデスクってのは使い勝手が悪いからプログラム打ちには向いてない
0462デフォルトの名無しさん
2006/08/07(月) 00:54:321.42とどっちがいい?
やっぱ最新の1.5?
Eclipseのコンパイラは1.42にしてあるんだけど。
あとどうでもいいけどCDついてる本て読みにくいよね。
CD抜いてなくすのも嫌だしこれも悩む。
0463デフォルトの名無しさん
2006/08/07(月) 00:56:44だよね。
机の下は30Wの結構でかいギターアンプが置いてあって移動できないんだ。
スピーカーもコンポのスピーカーの上にPCのスピーカーでどうしようもない状態。
が、がんばるよ!
0464デフォルトの名無しさん
2006/08/07(月) 01:00:26俺的にはパソコンはちゃぶ台の上で使うのが一番だとおもう
0465462
2006/08/07(月) 01:01:540466デフォルトの名無しさん
2006/08/07(月) 01:13:55メソッドを使う時同じクラス内で使うのと他のクラスから
呼び出すのどっちで覚えた方がいい?
1冊目は他のクラスから呼ぶ
Method mt;
mt = new Method();
mt.Method1();
みたいな感じだったんだよね。
2冊目の本だと
public class Method {
〜main〜 {
printMessage1();
public static void Method1() {
System.out.println("これはメソッド1");
}
みたいな感じ。
別クラスからのだと void メソッド名() だったのに対して
同クラスからのだと public static void メソッド名() になってたから戸惑った。
とりあえずはどっちで覚える方が幸せになれる?
0467466
2006/08/07(月) 01:23:45publicとstaticの用途はなんとなく学んだ。
別クラスからだとvoid メソッド名()で大丈夫なのに
同じクラスからだとvoid メソッド名()でエラーでたのが意味わからなかった。
だから聴いたけどやっぱ用途によるよね。
0468デフォルトの名無しさん
2006/08/07(月) 01:27:04お前は自分の勉強法を見直せ。
public static void main(String[] args) 程度のフレーズを省略書きしてる
時点で、言語勉強に対する心意気が足りないのが目に見えてわかるぞ。
printMessage1() なんてメソッドも存在しないしな。
お前の書いてることは、どちらが better かという問題じゃない。
static 修飾子を理解していないから、どちらが necessary かというのを
判断できていないだけの話だ。
頭の中入れ替えて出直してこい。
0469デフォルトの名無しさん
2006/08/07(月) 01:29:32エラーが出る意味が分からないというのならば、public の意味が分かってない。
public で宣言する意味が分からないというのであれば、オブジェクト指向が分かってない。
あと static は、初心者はあまり使わんでいい。
0470デフォルトの名無しさん
2006/08/07(月) 01:30:540471デフォルトの名無しさん
2006/08/07(月) 01:34:07コンパイラは5.0を入れておけばいい。
1.3までは下位Versionもコンパイルできる。
ここの source オプションを参考にしる。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/tooldocs/solaris/javac.html
0472デフォルトの名無しさん
2006/08/07(月) 01:38:56但し、このスタイルをとる場合は冬場は、気を付けろ!
息詰まると寝っ転がって、そのまま Fallin' asleep!
by 長井 秀和
0473466
2006/08/07(月) 01:40:18省略したのはmainクラスの中ってわかれば良いと思ったから。
上の記述にはクラス出てこないから対照にするのは変になると思ったからだ。
あとprintMessage1();は元の文章だったスマン。
Method1();の間違い。
staticについてはオブジェクト指向云々で余り理解できていないのは事実だ。
初心者なんでスマン。
>>469
publicはクラス外部からアクセスが出来るってことでしょ?
1つ目はpublicをclassで宣言しているから書かなくていいって事?
でも逆に考えたら他のクラスなんだからpublicが必要な気がする。
逆に2個目は同じクラス内なのになんで宣言する必要があるのかがわからなかった。
オブジェクト指向があんまりわかってないのは事実だ。
概念は後でいいって言われた。
この後UML勉強するつもりだ。
0474デフォルトの名無しさん
2006/08/07(月) 01:49:14じゃあ今は悩まなくていいよ。
UMLを勉強してから、それでもわからなければ悩めばいい。
あと、後者に関しては幸せな方法を教えておいてやるよ。
public class NulPo{
public static void main(String[] args){
new NulPo();
}
public NulPo(){
this.someMethod();
}
public void someMethod(){
System.out.println("ぬるぽ");
}
}
0475デフォルトの名無しさん
2006/08/07(月) 01:51:21UML 勉強するよりも、オブジェクト指向の概念を先にやりなさいな
正確には、UML でも Java でも何でもいいからやってみて、オブジェクト指向の概念を体感しなさいな
class Foo {
void Hoge() {
Method mt;
mt = new Method();
mt.method1();
}
void Fuga() {
Method.method1();
}
}
class Method {
public static void main() {
method1();
}
public static void method1() {
System.out.println("これは Method1()");
}
}
コンパイル通してないけど、これはエラーが起きないはず。
0476デフォルトの名無しさん
2006/08/07(月) 01:55:05まあ良いや
0477デフォルトの名無しさん
2006/08/07(月) 01:58:44はい。
public NulPo(){
this.someMethod();
}
の部分はメソッドなの?
オブジェクトって奴?
なんとなくわかるんだけどまだ難しいようだ。
わざわざありがとう。
>>475
void Fuga() {
>>395
0478473
2006/08/07(月) 02:00:34>>475
void Fuga() {
Method.method1() {
}
の部分もよくわからない。
mt.method1()にはならないの?
0479デフォルトの名無しさん
2006/08/07(月) 02:00:45>の部分はメソッドなの?
コンストラクタ
0480デフォルトの名無しさん
2006/08/07(月) 02:02:24『 mt 』 って、Fuga の中にあると思いますか?
無さそうだと分かれば mt.method1(); がありえない事が想像できるはず。
キーワードは 『スコープ』
0481473
2006/08/07(月) 02:03:35把握。
やっぱまだ見ただけじゃわからないや。
なんとなく暗記みたいな感じになってるし。
やっぱいっぱい書いて読めるようにならなきゃだよね。
>>477の奴の>>395ってのは昨日の俺です。
それでオブジェクト指向わからないならUMLやればって言われたので。
0482474
2006/08/07(月) 02:04:590483デフォルトの名無しさん
2006/08/07(月) 02:05:500484デフォルトの名無しさん
2006/08/07(月) 02:06:230485デフォルトの名無しさん
2006/08/07(月) 02:13:14クラス名.メソッド名になってるって事でしょ?
それはわかるけどMethod.method1();になるのがいまいち。
これって結局mainたどって行くとmethod1();しかでてこ無いじゃん?
だからclass Fooっていらないじゃん?とはならないの?
逆にclass MethodからHoge()とFuga()を呼び出すなら
Foo fo;
foo = new Foo();
foo.Hoge();
foo.Fuga();
という考え方はあってる?
>>483
俺のせいだゴメンwwwww
もう少し読み解いて出直してくる。
0486デフォルトの名無しさん
2006/08/07(月) 02:18:40人に聞くのが必ずしもいいことではないけど、探究心があるのは喜ばしいことだろうね。
ただ企業でそれやるとウザがられるから注意だけど。
class Foo を作ったのは、class Method の外部からのアクセスを示したかったから。
別に外部クラスだったら Foo じゃなくても良いかと。
foo.Hoge() と foo.Fuga() は合ってる。
じゃ、Hoge() と Fuga() が static だったら、Foo.Hoge() と Foo.Fuga() は可能だとおもう?
また、public が省略されていたら、どこからアクセスしようとした際にエラーが出ると思う?
0487デフォルトの名無しさん
2006/08/07(月) 02:24:54だよな。
学生の今のうちに吸収しておきたくて。
staticの仕様がまだいまいち理解できてないからそれはわからない。
publicは書かなくてもpublicなの?
privateとかprotectedとか何かしら書かないといけないと思っている。
何も書かないとどのような状態なのかがわからない。
0488デフォルトの名無しさん
2006/08/07(月) 02:27:39メソッドとフィールドのアクセス宣言は
1: public
2: protected
3: (省略)
4: private
の4種類
http://www.y-adagio.com/public/standards/tr_javalang/6.doc.htm#62395
0489デフォルトの名無しさん
2006/08/07(月) 02:28:142冊通してるのに理解しなさすぎ。
0490デフォルトの名無しさん
2006/08/07(月) 02:31:01それからもう1つ。
public などのアクセス宣言を行う意味や static を用いる意味は、ちゃんと学んでおくべき。
「これにするとエラーが消えます」 しか理由が言えないのならば、そのプログラマは初心者。
0491デフォルトの名無しさん
2006/08/07(月) 02:37:33pritected とデフォルトアクセスは、パッケージについて学ぶときに一緒に学べば良いかと。
あと、static はあまり使わない。初心者は static を使わないようにクラス設計するのが吉。
ただ、こっちは覚えなくちゃいけない要素だけど。
0492デフォルトの名無しさん
2006/08/07(月) 02:38:42サンクス。
クラス又はインタフェース型を public 宣言していれば,それを宣言しているパッケージに
アクセス可能な任意のJavaコードによってアクセス可能とする。
クラス又はインタフェース型を public 宣言していなければ,
それを宣言しているパッケージ内からだけアクセス可能とする。
2個目の意味がわからない。
"public宣言していなければ、それを宣言している"って矛盾してない?
省略している部分って意味?
>>489
まだ2冊通したわけじゃない。
1冊目で詰まったから2冊目にワープしたところ。
記述が少ないのか記述の仕方が悪いのかわからないからね。
間違いなく勉強不足でしょう。
それか本がブックオフで中古の少し古い本だからか。
授業で使ってた「やさしいJava」買えばよかったなって思った。
教科書全く買ってないんだよね。
>>490
おうありがとう。
今の所は漠然と基本情報を取ろうと思って勉強している位なんだ。
漠然とした理由なのが悪いのは間違いない。
あと勉強の遅れを取り戻そうと一気にやっているのが悪いかな。
0493デフォルトの名無しさん
2006/08/07(月) 02:39:08ちなみに protected はパッケージじゃなくて継承でした。すまんねちくしょう。・゚・(ノД`)・゚・。
0494デフォルトの名無しさん
2006/08/07(月) 02:41:46>それを宣言しているパッケージ内からだけアクセス可能とする
↑これは、宣言されたクラスを指してます。
ただ、これはクラスのアクセス指定についての話。
フィールドやメソッドの話は、『メンバ』 としてひとまとめに書かれているから注意ね。
0495デフォルトの名無しさん
2006/08/07(月) 02:51:44優しいし可愛いよwwww
publicとprivateはなんとなくわかる。
staticが敵。
>>494
なんとなくわかりそう。
とりあえずもう少し頑張って勉強してみる。
教科書悪いと思ったらやさしいか独習買うかな。
また迷惑掛けにくると思うからその時はまたよろしくだよ!
超初心者のバカな質問に付き合ってくれてありがとう。
お前ら愛してるぜ!
ノシ
0496デフォルトの名無しさん
2006/08/07(月) 04:05:16間違っちゃいないのかも試練が間違っているように見えるよ。
0497418 エコ
2006/08/07(月) 05:01:47先生に出された課題は、「釧路の地図に○と線を書くプログラムを二人で作る。」だったんですけど、
相方は本当にパソコン初心者だったんで、自分がプログラムを書いて、相方にそのプログラムの仕組み
とプログラミングの考え方を教えて出来たことにしよう!と考えたわけです。
たぶん先生も相方が出来ないのは承知で自分にプログラムを教えさせることで、自分の知識の固定化と
自分がどの程度理解しているか調べたかったんだと思います。
教えた方法は、まず「CPUの創りかた」という本を見せて、コンピューターが1と0しか分からないこと。
人間に1と0でプログラムを書くことは無理なので、アセンブラ、そしてプログラミング言語が
出てきたこと。その話題に絡めてコンパイラの説明。
Javaの紹介。
Javaの特徴の一つとしてプラットフォームに依存しないこと。
(MacとWinで課題のプログラムを実行してみせた。)
依存しない理由として、JavaVMという仕組み。
携帯電話でJavaが使われる理由。(iアプリでJavaのマークが出るところを見せた)
一息付けるためにJavaの利権問題。(SunとIBMのもめ事。eclipseを例に)
で課題のプログラムの説明。
最後に、javac hanamogera.javaと打ってもらって、
hanamogera.classが出来るところを確認。
終了という流れで行きました。
相方は頑張ってくれて、プログラムの概念と課題のプログラムを
なんとなくですが理解してくれたみたいです。
なんかこのスレの人たちはみんな親切で、本当に感動しました。
どうも有り難うございました。
0498デフォルトの名無しさん
2006/08/07(月) 06:13:17みんなでvip実況スレを盛り上げよう
ニュー速VIP
ttp://ex16.2ch.net/news4vip/
FF4→5→6 リレー実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154895492/
ゲームセンターCX ttp://ex16.2ch.net/test/read.cgi/news4vip/1154888213/
エロゲ実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154839702/
おまいらが指定したゲーム実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154896516/
RPG実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154857556/
女神転生とかを実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154776872/
実況!アニメ流すぜ!3本目 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154877307/
【東方】弾幕実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154852500/
ファミコンジャンプ実況スレ ttp://ex16.2ch.net/test/read.cgi/news4vip/1154878214/
エロゲ実況すればいいじゃねーか ttp://ex16.2ch.net/test/read.cgi/news4vip/1154885750/
大神実況してみる その4ttp://ex16.2ch.net/test/read.cgi/news4vip/1154880537/
ICO実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154896258/
好きなゲームを実況するスレ ttp://ex16.2ch.net/test/read.cgi/news4vip/1154861584/
ToHeart2系実況ttp://ex16.2ch.net/test/read.cgi/news4vip/1154774247/
かまいたちの夜x3を実況してみるttp://ex16.2ch.net/test/read.cgi/news4vip/1154863755/
映画実況するのかも ttp://ex16.2ch.net/test/read.cgi/news4vip/1154895107/
FF4→5→6→7 リレー実況 ttp://ex16.2ch.net/test/read.cgi/news4vip/1154898127/
0499デフォルトの名無しさん
2006/08/07(月) 10:28:490500デフォルトの名無しさん
2006/08/07(月) 11:04:331年半ぐらい前からちょくちょくチェックして試してみてる。
実業務では無い。あたりまえだけど。
0501デフォルトの名無しさん
2006/08/07(月) 12:22:30StrutsやSpringと比べてどんな感じ?
0502デフォルトの名無しさん
2006/08/07(月) 12:41:28Strutsよりは間違いなく高機能・多機能。
ShaleはSpringと組み合わせて使うフレームワークなので比べる対象ではない。
高機能・多機能過ぎ。
煩雑・複雑。覚えることが多すぎる。
どう考えてもこのままでは現場に導入できるシロモノとは思えない。
0503デフォルトの名無しさん
2006/08/07(月) 12:46:24文字列の読み込み、書き込みが上手くいかず、読み込みの際に
java.io.UTFDataFormatException
と出てしまいます。
APIを見ても「UTF-8形式に変換したデータに問題が発生したとき」と
記載がありますが、具体的にどういうことなのでしょうか?
書き込んじゃいけない文字列が存在するのでしょうか?
0504デフォルトの名無しさん
2006/08/07(月) 13:06:43読み込み、書き込みの具体的な処理をplz
0505デフォルトの名無しさん
2006/08/07(月) 15:04:34読み込もうとしているバイトストリームがUTF-8形式になっているかどうか1バイトごとに確認。
書き込もうとしているUTF-8と思っている文字列が正しい形式かどうか1文字ごとに確認。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/io/DataInput.html#modified-utf-8
0506503
2006/08/07(月) 17:08:11//グローバル
//■読み込み
DataInputStream dis = null;
dis = Connector.openDataInputStream(SP + 100);
sStr_0 = dis.readUTF();
sStr_1 = dis.readUTF();
dis.close;
//■書き込み
DataOutputStream dos = null;
dos = Connector.openDataOutputStream(SP + 100);
dos.writeUTF(sStr_0);
dos.writeUTF(sStr_1);
dos.close;
こんな感じなんですが…。どうでしょうか?ほんとに初心者なんでorz
>>505
UTF-8なのかどうなのか調べるにはどうしたら?すいません。
0507デフォルトの名無しさん
2006/08/07(月) 22:50:23「代入1」のところでコンパイルがこけてしまいます。 ]
public class foo { ]
char[][] m = new char[3][3]; // クラス定義 ]
}
foo[] bar = new foo[2]; // 作ったクラスの配列を定義
a[0].m = {{"a","b","c"},{"d","e","f"},{"g","h","i"}};//代入1
a[1].m = {{"1","2","3"},{"4","5","6"},{"7","8","9"}};//代入2
0508デフォルトの名無しさん
2006/08/07(月) 22:51:250509デフォルトの名無しさん
2006/08/07(月) 22:53:190510デフォルトの名無しさん
2006/08/07(月) 23:01:55コケた時にコンパイラーは何か言ってた?
0511デフォルトの名無しさん
2006/08/07(月) 23:06:040512デフォルトの名無しさん
2006/08/08(火) 00:29:13そこに出ている全ての二重引用符を引用符に変更して、
配列を初期化しているところの{{...の前にnew char[][]をつけてごらん。
0513507
2006/08/08(火) 00:33:200514デフォルトの名無しさん
2006/08/08(火) 05:43:01代入できてるの!?」って思ってたら、インスタンス変数に
直でアクセスしてたのか。。。
カプセル化ぶち壊しだから、あまり良い書き方じゃないと思うがな。
0515デフォルトの名無しさん
2006/08/08(火) 09:04:48自作クラス(ホントはもっと複雑なメンバ変数を持つ)のオブジェクトに、
ファイル等から読み込んだデータを一括して代入したかったんです。
0516デフォルトの名無しさん
2006/08/08(火) 10:36:31SWTの中のTree機能を使用してTreeを表示させてるんですが
Treeの行間隔は変更とかはできないのでしょうか??
0517デフォルトの名無しさん
2006/08/08(火) 11:28:53今、Benas関係をやっているのですが、
おなじBeansパッケージのクラスを使おうとすると上記エラーが出ます。
なぜなんでしょう。
package Beans;
public class Data{
private String Name;
private String Code;
--- メソッドその他 ----
}
-------- Data.java -----------------------
package Beans;
public class aaa
{
public Data [] SearchData( String filter ){
Data ret[] = new Data[2];
return ret;
}
}
------aaa.java--------------------------
エラー内容:
aaa.java: : シンボルを見つけられません。
シンボル: クラスData
場所 : Beans.aaa のクラス
public Data[] SearchData( String filter )
^
aaaクラスから、Dataクラスを使用するにはどうしたらいいのでしょうか。
よろしくお願いいたします。
0518デフォルトの名無しさん
2006/08/08(火) 12:08:48import Beans.*;汁
0519デフォルトの名無しさん
2006/08/08(火) 12:14:16importもやってみましたが同じでした。
ちなみに、Data.javaとaaa.javaは同じBeansのフォルダにあります。
デフォルトパッケージからはBeansパッケージは利用できたけど、
同じパッケージ内にあるクラスどうしは利用出来ない・・・はずはないですよね・・
何が悪いんだろう。
完全修飾でもやってみたけど同じだったし
0520デフォルトの名無しさん
2006/08/08(火) 12:20:39もしくは循環参照があるとか
0521デフォルトの名無しさん
2006/08/08(火) 12:30:07カレントディレクトリ直下にBeansディレクトリを作って、
javac Beans/aaa.java
なら問題なくコンパイルされる。
もし、カレントディレクトリ直下でなく、
例えば、srcディレクトリの下にBeansディレクトリがあるのなら、
javac -sourcepath src src/Beans/aaa.java
としないと、当然コンパイラはData.javaを見つけることはできない。
0522デフォルトの名無しさん
2006/08/08(火) 12:34:47お察しの通りでした。
Beansフォルダに移動してコンパイルかけてましたorz
あぁ、ぜんぜん疑っても見なかった・・・
無事コンパイルが通り先に進むことが出来ます
>518 >520 >521
ありがとうございました。
0523デフォルトの名無しさん
2006/08/08(火) 14:55:320524523
2006/08/08(火) 14:58:41糞レスすまんかった
0525デフォルトの名無しさん
2006/08/08(火) 15:01:47ググるよりも
ここに書き込む方が
操作が簡単なのかな?
0526デフォルトの名無しさん
2006/08/08(火) 15:07:13たぶんホームページがここなんだ
0527デフォルトの名無しさん
2006/08/08(火) 16:11:22勝手にォアウトって読んでたが。
0529デフォルトの名無しさん
2006/08/08(火) 19:04:00ググれ。
0530デフォルトの名無しさん
2006/08/08(火) 19:54:00オートだよ。
0531デフォルトの名無しさん
2006/08/08(火) 20:35:020532デフォルトの名無しさん
2006/08/08(火) 20:45:12志村!スレタイ!スレタイ!
>>530
スゲ
0533デフォルトの名無しさん
2006/08/08(火) 21:32:03system.out.println("HelloWorld");
↑
なんでかな?Linuxなんだけど。
0534デフォルトの名無しさん
2006/08/08(火) 21:40:430535デフォルトの名無しさん
2006/08/08(火) 21:40:460536デフォルトの名無しさん
2006/08/08(火) 21:48:25……気持ちは分かるんだけど、もう少しエラーメッセージ親切にならないかなぁ。
0537デフォルトの名無しさん
2006/08/09(水) 10:05:360538デフォルトの名無しさん
2006/08/09(水) 10:33:06Systemはクラスだけどsystemはクラスじゃないので無理
0539デフォルトの名無しさん
2006/08/09(水) 10:44:16SunJavaWebServerをサーバとすることになったんですが、
jspでの記述で、htmlタグ要素の、例えばlength内にスクリプトレットやタグライブラリで、
length="<bean:write name="hogeForm" property="hoge"/>"
とすると、ダブルクォーテーションが正常に認識できないって言われたんですが、調べてもそんな現象話題になってなくて困ってます;;
ちなみに上記の場合はlength='〜'とすることで一応解決します。
jspがjavaとしてのコードよりhtmlタグを優先して見るなんて聞いたことなくて…
どなたか教えて下さい!
0540デフォルトの名無しさん
2006/08/09(水) 12:51:490541デフォルトの名無しさん
2006/08/09(水) 12:56:25単純なパターンマッチングの文字列置き換えじゃなくて、invaildなXML以上になってないと処理できないと思ったほうが良い
0542デフォルトの名無しさん
2006/08/09(水) 16:37:23Javaでアプリケーションを作った場合に、
アプリケーションの背景画像ってどうやって指定すればいいんでしょうか?
0543デフォルトの名無しさん
2006/08/09(水) 16:46:130544デフォルトの名無しさん
2006/08/09(水) 17:01:090545539
2006/08/09(水) 17:23:330546デフォルトの名無しさん
2006/08/09(水) 17:55:59コンテンツ区画のpaintComponent(Graphics)をオーバーライドすれば後腐れがない。
public class a extends javax.swing.JFrame {
public static void main(String[] args) { new a(); }
public a() {
setContentPane(new javax.swing.JPanel(){
private java.awt.Image image = new javax.swing.ImageIcon("back.jpg").getImage();
public void paintComponent(java.awt.Graphics g) {
super.paintComponent(g);
g.drawImage(image, 0, 0, getWidth(), getHeight(), null);
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(300, 300);
getContentPane().add(new javax.swing.JButton("button1"));
getContentPane().add(new javax.swing.JButton("button2"));
getContentPane().add(new javax.swing.JTextField(20));
setVisible(true);
}
}
デフォルトのコンテンツ区画みたいにBorderLayoutマネージャにしたければ、
JFrame#setLayout(LayoutManager)で変更する。
0547デフォルトの名無しさん
2006/08/09(水) 18:09:490548デフォルトの名無しさん
2006/08/09(水) 18:36:110549デフォルトの名無しさん
2006/08/09(水) 18:38:480550デフォルトの名無しさん
2006/08/09(水) 21:44:44説明をみてもわかりづらかったので詳しく教えてください
0551デフォルトの名無しさん
2006/08/09(水) 21:59:37文字ってことだが、言語によっては、2文字に見えても実は特別に1文字で扱う組
み合わせってのがあって(たとえば、APIで例に出ているLj)、そういうのは、こう
いう場合にLJでもljでもなくLjと書く。それ専用の合字がUnicodeでは割り当て
られている。
組み合わせで書けるのに専用なんてずるいと思うかもしれないけど、日本語でも
「か」+「゛」の合字なんてのが割り当てられてるし、まぁいいんじゃないかね。
0552デフォルトの名無しさん
2006/08/09(水) 22:02:13Character.isTitleCase なら、文字が Unicode の TitleCase 文字ならば true を返すメソッド
ぶっちゃけ使いどころはあまりないはず
0553デフォルトの名無しさん
2006/08/09(水) 22:09:15サンクス
0554デフォルトの名無しさん
2006/08/09(水) 22:55:490555デフォルトの名無しさん
2006/08/09(水) 23:40:46はい次の質問。
0556デフォルトの名無しさん
2006/08/10(木) 00:12:15リダイレクトしたいのですがどのようすればできますか?
0557デフォルトの名無しさん
2006/08/10(木) 00:16:26アプレットビューワー使えば?
0558デフォルトの名無しさん
2006/08/10(木) 00:21:57"\\"と入れるにはどうしたら良いのでしょうか
0559デフォルトの名無しさん
2006/08/10(木) 00:22:330560デフォルトの名無しさん
2006/08/10(木) 00:33:59その方法でやってもうまくいかない…
ちなみにファイルから読み込んだString A = "\"を
A.replaceAll("\","\\")てな具合に"\"を"\\"に置き換えたいんですが
\\\\で置換して、置換後の文字列を見ても、\が一つしかない
0561デフォルトの名無しさん
2006/08/10(木) 00:44:00こうだよ?
String A = "\\";
String B = A.replaceAll("\\\\", "\\\\\\\\");
System.out.println(A + " : " + B);
\の数を間違えないようにね
0562デフォルトの名無しさん
2006/08/10(木) 00:50:57間違えてないか?
0563デフォルトの名無しさん
2006/08/10(木) 00:55:25replaceAllは正規表現だから、これでいいんジャマイカ。
0564デフォルトの名無しさん
2006/08/10(木) 00:58:00その通り
実際に実行して確かめてから誤りは指摘した方がクール
0565デフォルトの名無しさん
2006/08/10(木) 01:01:24そもそもの問題と思う。
0566デフォルトの名無しさん
2006/08/10(木) 01:04:16プログラム自体には何も問題はないと思うが。
0567デフォルトの名無しさん
2006/08/10(木) 01:54:010568デフォルトの名無しさん
2006/08/10(木) 01:58:500569デフォルトの名無しさん
2006/08/10(木) 02:01:28あまり需要なさそうだけど
0570デフォルトの名無しさん
2006/08/11(金) 09:32:26「"2006","08","19","提出"」
「" "," 期日","厳守","by田岡"」
の2行が入っているのですが、文字の前後にある""を取り払い、,ごとに
文字を区切り、
「2006 「08 「19 「課題
(空白)」 期日」 厳守」 田岡」
↑の様に4つに分解してtxtに書き込みたいのですが、どうすれば良いのでしょうか?
Splitでは""の部分をうまく消せず、arrayListを用いてStringTokenizerを上手く使えず凹んでおります。
下のプログラムからあーでもないこーでもないを繰り返して早1週間。
申し訳ありませんが、お力を貸してくださいorz
ArrayList<String> readList = new ArrayList<String>();
BufferedReader fileReader = new BufferedReader(new FileReader("./ans.txt"));
String read;
while((read = fileReader.readLine()) != null) {
}
0571デフォルトの名無しさん
2006/08/11(金) 10:16:58まず split メソッドで分割してから、各 String インスタンスについて
indexOf メソッドでダブルクォーテーションの位置を検知、
そして substring メソッドで当該文字列を抜き出し。
書き込みは自分で書けるよな?
0572デフォルトの名無しさん
2006/08/11(金) 12:03:070573デフォルトの名無しさん
2006/08/11(金) 12:09:45CompositeRuler ruler = new CompositeRuler();
ruler.addDecorator(0, new LineNumberRulerColumn());
SourceViewer viewer = new SourceViewer(parent, ruler, SWT.BORDER|SWT.V_SCROLL|SWT.H_SCROLL);
とすると一瞬GUI画面が出てviewerがNullPointerExceptionで落ちる
rulerの部分をnullにすると落ちない
どうすればCompositeRulerを使用してSourceViewerを扱えますか?
0574デフォルトの名無しさん
2006/08/11(金) 12:20:22ボタンを縦に並べたいのでsetBoundsを使って座標指定してみたのですが、全く
無視されているようです。どこで間違えていますか?
import java.applet.Applet;
import java.awt.*;
public class t1 extends Applet{
int i;
Button[] lir;
public void init() {
lir = new Button[10];
for (i=1 ; i<10 ; i++) {
add(lir[i]=new Button());
lir[i].setBounds(20,10+30*i,330,22);
lir[i].setLabel("No." + i);
}
}
}
0575デフォルトの名無しさん
2006/08/11(金) 12:25:59レイアウトマネージャの設定
0576デフォルトの名無しさん
2006/08/11(金) 12:40:11そうだった。下敷きがいるのをすっかり忘れてた。
ありがとうございました。
0577デフォルトの名無しさん
2006/08/11(金) 12:48:31そんなあなたに正規表現
0578デフォルトの名無しさん
2006/08/11(金) 12:52:57意味がわからん。
それは純粋にサポート外の形式なんだから、2つ目のダブルクォーテーションを
捕捉できなかった時点で例外を投げるべきところ。
今回の話題からすれば的はずれな意見なわけだが。
0579デフォルトの名無しさん
2006/08/11(金) 12:57:44572 じゃないけど、俺は一目見て >>570 が csv のように思えたが。
少なくとも 「文字に , は含まれない」 とはどこにも書いてないけどな。
>>570 ちとまっててー
0580デフォルトの名無しさん
2006/08/11(金) 13:14:17レイアウトマネージャを null にせいや。
0581デフォルトの名無しさん
2006/08/11(金) 13:30:07汚いけど一応動く。あとはがんばって
ArrayList<String> result = new ArrayList<String>();
StringBuilder sb = new StringBuilder();
for(int i = 0; i < text.******(); i++) {
switch (text.******(i)) {
case '\"':
i++;
for(; i < text.******(); i++) {
char c = text.******(i);
if (c == '\"') {
if (text.******() <= i + 1 || text.******(i + 1) != '\"') break;
i++;
}
sb.******(c);
}
break;
case ',':
result.***(sb.********());
sb = new StringBuilder();
break;
}
}
if (0 < sb.******()) {
result.***(sb.********());
}
・ "" で囲まれていない文字は認識してない
・ "" の中の , は区切り文字に使ってない
・ "" の中では2連続の " を " に置き換えてる
0582デフォルトの名無しさん
2006/08/11(金) 14:11:370583570
2006/08/11(金) 15:09:53現在>>571さんのレスから
while((read = fileReader.readLine()) != null) {
String[] arrayRead = read.split("\\,");
for(int i = 0; i < 4; i++) {
StringTokenizer sToken = new StringTokenizer(arrayRead[i],"\"\"");
〜〜
}
}
↑の用な形にすることで、,で区切り尚且つ""を消すことができました。
>>581さん
StringBuilderというのは初めて見ました。
折角作ってくださったのに読めなくて申し訳ありません。
0584デフォルトの名無しさん
2006/08/11(金) 16:07:07ついてないStringBuffer。
0585デフォルトの名無しさん
2006/08/11(金) 16:55:58CSVTokenizerでぐぐるといろいろ実装されているので探してみれ
0586デフォルトの名無しさん
2006/08/11(金) 17:28:580587デフォルトの名無しさん
2006/08/11(金) 17:45:010588デフォルトの名無しさん
2006/08/11(金) 17:56:58ttp://www.rfc-editor.org/rfc/rfc4180.txt
あったんだね。知らなかった。
0589デフォルトの名無しさん
2006/08/11(金) 18:02:40あと、行のセパレータはCRLFなんだね。さすがRFC
0590デフォルトの名無しさん
2006/08/11(金) 18:54:380591デフォルトの名無しさん
2006/08/11(金) 19:16:10利点: スコープ関連。
欠点: 特になし。というか欠点があったら使わなきゃいいだけじゃね?
0592デフォルトの名無しさん
2006/08/11(金) 20:21:45Arrays.asList メソッドが返すのは List となっているが、こいつは
内部で定義されている ArrayList (java.util.ArrayListとは別物)の
インスタンスを返していて、APIに実装が出ていないから詳細を知るには
わざわざソースを見に行かなければならない。
そこまで頭が行かないやつは、コンパイルエラーで「ArrayList」って
出てきて、なおさら混乱する。
内部クラスのインスタンスを返している仕様が問題なのかもしれんが
(というか、なぜそんなことをしているのかがイマイチよくわからん)。
0593デフォルトの名無しさん
2006/08/11(金) 20:33:16特定クラスの実装に依存しようという態度が問題かもね。
0594デフォルトの名無しさん
2006/08/11(金) 21:12:44それはどういうことだ?
0595デフォルトの名無しさん
2006/08/11(金) 21:20:23API の実装によっては
中身は ArrayList じゃないことも有り得る、という考え方。
抽象化プログラミングが何なのか解っていれば
この辺りのことは納得できると思う。
0596デフォルトの名無しさん
2006/08/11(金) 21:47:32俺は ArrayList に沿ってプログラミングしてるなんて一言も言ってないけど。
List インターフェースに沿ったプログラミングをして支障を来した
経験があるから言ってるわけだが。
0597デフォルトの名無しさん
2006/08/11(金) 21:56:25インタフェースベース開発はベンダーに依存するからこそ威力を発揮する。
ServletとかXMLParserとかもその恩恵を受けてるしね。
0598デフォルトの名無しさん
2006/08/11(金) 21:57:53> わざわざソースを見に行かなければならない。
0599デフォルトの名無しさん
2006/08/11(金) 22:00:35>>592のコンパイルエラーがどういうものか知りたい。
0600デフォルトの名無しさん
2006/08/11(金) 22:10:14それは本当に List インタフェイスに沿ったプログラムというのかと小一時間
0601デフォルトの名無しさん
2006/08/11(金) 22:14:58> 指定された配列を基にする固定サイズのリストを返します。
とも書いてあるし、当然そんなことするわけないよな。
0602デフォルトの名無しさん
2006/08/11(金) 22:20:270603デフォルトの名無しさん
2006/08/12(土) 01:28:57そもそも外部クラスと内部クラスの話でもないし。
0604デフォルトの名無しさん
2006/08/12(土) 04:56:531を入力した場合に正方形の、2を入力した場合は円の面積を求めるプログラムを作ります。
その場合は switch文 を使うのが望ましいと思うんですけど
if文 で作ることはできますか?
1、2以外の値が入力された場合の問題で。
if(i[0] ! (1 && 2))という文は使えないんですか?
switchならばdefalt;を使えば良いんだと思います。
まだ勉強中なので色々なパターンを知る方が良いと思いまして。
よろしければご教示お願いします。
0605604
2006/08/12(土) 04:59:20補足で自分で試したところではエラーが出ました。
よろしくお願いします。
0606デフォルトの名無しさん
2006/08/12(土) 05:01:00いろいろなパターンを知る前にもっと基礎を勉強しましょう。
0607デフォルトの名無しさん
2006/08/12(土) 05:22:44private String material;
コンストラクタ
public ToyFactoryBean() { material = null; productCount = 0; }
//materialプロパティ(Write Only)
public void setMaterial (String material) {
this.material = material;
}
このマテリアルのプロパティメソッドがよく理解できません、materialという文があちらこちらにあって混乱します
(String material)は引数としてどこのmaterialを受け取っているのですか?
0608デフォルトの名無しさん
2006/08/12(土) 05:24:07&& はboolean型にしか使えないんですか?
1と2以外の値ということを考えこういう結果に至りました。
ありがとうございました。
出直してきます。
0609デフォルトの名無しさん
2006/08/12(土) 07:21:10BufferedReader input =
new BufferedReader(new InputStreamReader(System.in));
0610デフォルトの名無しさん
2006/08/12(土) 07:32:37>>609はミスなんでスルーしてください。
java.io.*;
public class Abc {
public static void main(String[] args) throws IOException {
String str[] = new String[2];
int i[] = new int[2];
double d;
BufferedReader input =
new BufferedReader(new InputStreamReader(System.in));
}
としている場合に他のメソッドで標準入力を扱う場合はどうしたらいいですか?
public static void mathfoo {
str[0] = input.readLine();
i[0] = Integer.parseInt(str[0]);
switch(i[0]) {
case 1:〜
case 2:〜
}}
}
としたいのですが変数が使えない様なので
this.str[0] などにしてみても static で this は使えない様なので困っています。
特に input の扱いがいまいちわかりません。
解決策がわかりましたらどうかよろしくお願いします。
0611デフォルトの名無しさん
2006/08/12(土) 07:34:120612610
2006/08/12(土) 07:44:45即レスありがとうございました。
java.io.*;
public class Abc {
public static void main(String[] args) throws IOException {
mathfoo();
}
public static void mathfoo() throws IOException {
BufferedReader input =
new BufferedReader(new InputStreamReader(System.in));
String str[] = new String[2];
int i[] = new int[2];
double d;
str[0] = input.readLine();
i[0] = Integer.parseInt(str[0]);
switch(i[0]) {
case 1:〜
case 2:〜
}}
}
としたら問題なく動きました。
この場合 main メソッドがとても無駄に思えるんですけどこんなもんですか?
繰り返し使いたいので main だけにはできませんでした。
0613デフォルトの名無しさん
2006/08/12(土) 10:05:46そんなの、わかるわけがないだろ。
どこかでそのクラスのインスタンスが生成され、そのメソッドが使われた
場合に material に文字列がセットされる。セットされる文字列を
知っているのは、そのメソッドを呼び出したやつ。それ以上でも
それ以下でもない。具体的に呼び出された文がなければ
どこの material を受け取ってるかなんて不明。
0614デフォルトの名無しさん
2006/08/12(土) 10:16:19BufferedReader をクラススコープで静的に宣言すればいい。
つまり、
private static BufferedReader input;
という宣言をメソッドの外に書けば良い。
>>610 のままでは、メソッドスコープで宣言されてるから、外のメソッドから
変数 input を参照できないだけだ。
ただ、こう書くと初心者は「そうか、変数はメソッドの外で宣言すれば
便利なのか!」と勘違いしやすいから気を付けろ。
様々なメソッドが参照できるということは、その変数に関連したバグの
一つでも発生すれば、他のメソッドの動きにも支障を来す可能性だって
考えられる。
必要もないのに大きなスコープで変数宣言することをしてはいけない。
可能な限り最小にとどめるべき。
常日頃から変数宣言するときは、「なぜここで宣言するのか」って
哲学をしてれば、プログラミング上達の一助になる。
0615デフォルトの名無しさん
2006/08/12(土) 10:34:48web上でGUIで編集できてそのままURL張れば楽譜が表示される
ようなサーバーってどっかにないかなあ。
0616デフォルトの名無しさん
2006/08/12(土) 11:04:32あると良いな。作ろうぜ!
0617ss
2006/08/12(土) 11:15:20今javaのtest中
だれかたすけてください。かってなこといってすみません
*金種計算の問題
1.金種計算はメソッド(Keisan)でおこなう
2.金種は配列、int[]kinsyu={10000,5000,1000,500,100};にある
3.100円未満は切り上げ
実行結果
名前をにゅうりょくしてください:青木
金額を入力してください:37865
青木さんは:10000円は3枚 5000円は1枚 1000円は・・・です。
むちゃくちゃいそいでます。おねがいします
0618デフォルトの名無しさん
2006/08/12(土) 11:25:40class Abc2{
String str[] = new String[2];
int i[] = new int[2];
double d;
BufferedReader input;
public Abc2(InputStream is){
input = new BufferedReader(new InputStreamReader(is));
}
public void mathfoo() throws IOException {
str[0] = input.readLine();
i[0] = Integer.parseInt(str[0]);
}
}
public class Abc{
public static void main(String[] args) throws IOException {
Abc2 abc2 = new Abc2(System.in);
abc2.mathfoo();
}
}
0619デフォルトの名無しさん
2006/08/12(土) 11:28:410620612
2006/08/12(土) 12:43:51レスありがとうございます。
public class Abc {
private static BufferedReader input;
public static void main(String[] args) torows IOException {
って事でいいんですか?
あと特別 private にした意味ってありますか?
以下は
input =
new BufferedReader(new InputStreamReader(System.in));
でいいのかな?
でもそうしたら二度手間?
>>618
最初は別クラスにしようとも考えました。
特に大げさなプログラムではなく switch が default の場合のみ繰り返す(再入力を求める)
という簡単な処理なのでクラスは一つにまとめた方がわかりやすいかと考えました。
もっと何度も使うようなメソッドであるならクラスは分けるべきですよね?
0621デフォルトの名無しさん
2006/08/12(土) 12:47:50出力結果が
[I@19821f
[I@addbf1
[I@42e816
の様になってしまいます。
どこを改善したら良いでしょうか?
public class Foo {
public static void main(String[] args) {
System.out.prinln(bitValue(10, 10));
}
public static int[] bitValue(int dec, int length) {
int i, j;
int a[] = new int[length];
for (i = a.length - 1, j = 0; i >= 0; i--, j++) {
if (((dec >> i) & 1) != 0)
a[j] = 1;
else
a[j] = 0;
}
return a;
}
0622デフォルトの名無しさん
2006/08/12(土) 13:04:57[I@19821f
[ は配列を表す接頭辞
I は int
@19821f は配列アドレス
…… つまり、表示されたのは 19821f 番地の int 型の配列
だから、
System.out.prinln(bitValue(10, 10));
を、「配列の中身を出力する」 ように変更する必要がある。
0624デフォルトの名無しさん
2006/08/12(土) 13:12:57お兄さん、お兄さん、配列はオブジェクト。あんだすたん?
0625デフォルトの名無しさん
2006/08/12(土) 13:28:09正直なところ、配列の中身を一度に表示させる println メソッドはないんですわ。
1つ1つ取り出して、println で表示させなさい。
1つ1つの取り出し方は、もちろん知っているよね?
1つ1つの代入を使ってるんだから。
0626621
2006/08/12(土) 13:41:30あまりあんだすたんじゃないです><
>>625
for(j = 0; j <= a.length; j++) {
System.out.print(a[j]);
}
みたいな感じですか?
ランダムで発生させた数値を2進数化したいんですよね。
現実問題難しそうですね…。
int i = Integer.toBinaryString(String str);
だとStringからじゃないとダメなんですよね?
困りました…。
0627デフォルトの名無しさん
2006/08/12(土) 13:46:13System.out.println(Integer.toString(dec, 2));
でいいんだけどね。
0628デフォルトの名無しさん
2006/08/12(土) 13:48:16>>626 どこから String だと思ったよ。
0629621
2006/08/12(土) 13:56:07みなさんすみません。
>>627
いまいちわかりません。
それだとreturn a;の値は関係なくなりませんか?
>>628
型の不一致 Stringからintには変換できませんって吐かれたんで…。
多分俺のやり方が悪いんだと思います。
0630デフォルトの名無しさん
2006/08/12(土) 13:58:54これ以上のレスは効果なし。
0631デフォルトの名無しさん
2006/08/12(土) 14:00:22>それだとreturn a;の値は関係なくなりませんか?
bitValue そのものが必要なくなっちゃったけどね。
>型の不一致 Stringからintには変換できませんって吐かれたんで…。
それは、toBinaryString が String を返すのに、それを int 型の変数に代入しようとしているから。
エラーは引数じゃなくて代入のところで起こっていた罠。
0632621
2006/08/12(土) 14:00:48と
System.out.println(Integer.toBinaryString(50));
どちらも2進数表示できました。
ご迷惑おかけしました。
ありがとうございます。
0633デフォルトの名無しさん
2006/08/12(土) 14:22:47String[] a = {"AA","BB","CC"};
System.out.println(java.util.Arrays.asList(a));
0634デフォルトの名無しさん
2006/08/12(土) 14:51:56List は配列じゃねぇw
0635デフォルトの名無しさん
2006/08/12(土) 14:54:250636デフォルトの名無しさん
2006/08/12(土) 15:11:12「文字列表現〜」 だけだと中身含まない恐れもあるし
0637デフォルトの名無しさん
2006/08/12(土) 15:14:59>正直なところ、配列の中身を一度に表示させる println メソッドはないんですわ。
Arrays.toString ってのはある。
0638デフォルトの名無しさん
2006/08/12(土) 16:33:41サンプルを見ながら作成しているのですが、実行時に以下のエラーが出てしまいます。
javax.faces.el.EvaluationException: ExceptionConverter: java.io.IOException: The document has no pages.
javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
Document の宣言は以下のように宣言しています。
Document doc = new Document(PageSize.A4, 50, 50, 50, 50);
何がいけないのでしょうか。
0639デフォルトの名無しさん
2006/08/12(土) 16:45:28>>private にした意味
大有り。アクセスレベルがデフォルト以上だと、外部のクラスから
Abc.input
ってやられると input にダイレクトにアクセスされる可能性がある。
現実で言うなれば、その辺の通行人が自分の職場のパソコンを勝手に
触れてしまえるっていう、非常に奇異な世界ができてしまう。
変数宣言の位置を哲学しろって言ったばかりだけど、これも同じ事。
不用意に外部からのアクセスを許可するのは良くない。
>>new BufferedReader(new InputStreamReader(System.in)); の位置
とにかく、input の変数宣言がクラススコープでなされていれば、
あとはなんでも構わない。宣言文で直接初期化してやってもいいし、
main メソッド内で初期化しても良い。
あてずっぽうだけど、宣言文で直接初期化すれば少しパフォーマンスが
良くなるような気はする。が、1回ずつなのでたいした差はでないと
見積もれるので、結局どうでもいい。好きなようにどうぞ。
0640続き
2006/08/12(土) 16:46:41そうとは限らない。というか、使用頻度を基準に分けようという考えが誤り。
言うなれば、使用頻度が高いからといって、パソコンの Enter ボタンだけ
キーボードから切り離すようなもの。でも、やっぱり Enter ボタンは
キーボードにくっついてるべきでしょ?
互いに結びつきが強いと思われるものに関しては、やはり1つの枠組みに
納めておくべき(専門チックに言えば、「凝集性を高める」)。
逆に、パソコンとプリンターみたいに、やるべき責任が異なるものは
きっちりと切り離すべき(専門チックに言えば、「結合性を疎にする」)。
一昔前にあった後ろにプリンターのくっついたワープロ専用機ってあるけど、
あれってプリンターもフロッピードライブも据え付けで、どれかが
故障すると無力化してたでしょ。
ああならないように、やっぱり責任の違う物は切り離しておく方が
保守性のためを考えると長期的には利点が多い。
(まあ現実世界では一緒に持ち歩く労力なんてのもコスト計算に入って
くるわけだが、そこは突っ込まないように。)
この辺の話も、やっぱり普段から哲学してないと感覚が身に付かない。
でも、自分で勝手に哲学すると悪いパターンを身に染みこませてしまうから
ちょっとエロい人と意見交換してみるとか、とにかく書籍を読み漁るとかの
努力を要する。
今はまだ早いだろうが、3ヶ月〜半年ぐらいしてから、「ソフトウェア設計」
をキーワードに本屋で書籍を探してみると幸せになれるかもしれん。
0641デフォルトの名無しさん
2006/08/12(土) 17:10:07いい大人ならオナニーはほどほどに
0642デフォルトの名無しさん
2006/08/12(土) 17:31:340643デフォルトの名無しさん
2006/08/12(土) 17:33:050644デフォルトの名無しさん
2006/08/12(土) 17:34:35public class Abc{
String str[] = new String[2];
int i[] = new int[2];
double d;
BufferedReader input;
public Abc(InputStream is){
input = new BufferedReader(new InputStreamReader(is));
}
public void mathfoo() throws IOException {
str[0] = input.readLine();
i[0] = Integer.parseInt(str[0]);
}
public static void main(String[] args) throws IOException {
Abc abc = new Abc(System.in);
abc.mathfoo();
}
}
0645デフォルトの名無しさん
2006/08/12(土) 19:21:05スルーできない時点で(ry
0646デフォルトの名無しさん
2006/08/13(日) 00:01:020647デフォルトの名無しさん
2006/08/13(日) 00:21:070648デフォルトの名無しさん
2006/08/13(日) 00:41:13標準APIにはIntというクラスは存在しません。
自作クラスであるなら、Objectで受けたそのインスタンスxがIntクラスか
そのサブクラスのインスタンスとして、(Int)xとキャストできます。
もしIntegerクラスのことなら、同様にxがIntegerクラスであるなら、
(integer)xとキャストできます。
もしintのことなら、xがIntegerクラスであるなら、
((Integer)x).intValue()でintとしての値を求めることができます。
0649648
2006/08/13(日) 00:43:08○ (Integer)xとキャストできます。
0650デフォルトの名無しさん
2006/08/13(日) 04:46:37しようとするとなぜかうまくいかない
2列目とかだと問題無いのに
0651デフォルトの名無しさん
2006/08/13(日) 07:38:32public static void main(String[] args) {
System.out.println("Hello Java");
}
}
から、Hello.classをつくって、java Helloと実行すると、
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
と出て、気絶するほどの衝撃を受け、30分ほど気を失っていました・・・
「javaやってみよう」的ページを写しただけなんです。
NoClass・・・を検索しても、俺の出会った衝撃の次の段階の説明っぽいです。
0652デフォルトの名無しさん
2006/08/13(日) 07:41:45ファイル名がHello.javaか確認するんだ
0653デフォルトの名無しさん
2006/08/13(日) 07:42:310654デフォルトの名無しさん
2006/08/13(日) 10:10:53クラスパスを指定してみた?
0655デフォルトの名無しさん
2006/08/13(日) 12:41:04テキストファイルだった場合、サーバに実体ファイルを作成せずに
文字コードを取得できますか?
0656デフォルトの名無しさん
2006/08/13(日) 19:25:39位置を指定するのにsetboundsで指定しているんですが、これがいけないんでしょうか?ちなみにawtでプログラムを実行すると正常に表示されます。
以下ソースの抜粋です。あとsetboundsで指定した位置にも表示されません。何処がいけないのでしょうか?
public class SelectionFrame extends JFrame implements ActionListener{
ButtonGroup grp1, grp2;
JRadioButton cbx1, cbx2, cbx3, cbx4, cbx5, cbx6, cbx7, cbx8;
public SelectionFrame(String title){
super (title);
ButtonGroup grp1 = new ButtonGroup();
//チェックボックスの追加
cbx1 = new JRadioButton("綴り", true);
add(cbx1);
cbx1.setBounds(100, 100,100,100);
grp1.add(cbx1);
cbx2 = new JRadioButton("意味", false);
add(cbx2);
cbx2.setBounds(100, 200,100,100);
grp1.add(cbx2);
・・・
}
}
0657デフォルトの名無しさん
2006/08/13(日) 19:47:240658デフォルトの名無しさん
2006/08/13(日) 21:18:54禁じ手に近いので素直にレイアウトマネージャを使ってください。
0659656
2006/08/13(日) 21:50:17解決しました。ありがとうございました。
0660デフォルトの名無しさん
2006/08/13(日) 21:51:13書籍ではオブジェクトという言葉が多いのですが、ネットではインスタンスという言葉が頻繁に出てきて
混乱しているのですが
0661デフォルトの名無しさん
2006/08/13(日) 21:52:020662デフォルトの名無しさん
2006/08/13(日) 22:05:160663デフォルトの名無しさん
2006/08/13(日) 22:15:11getContentPane().add()を使わなくていいんですかこれ?
0664デフォルトの名無しさん
2006/08/13(日) 22:27:480665デフォルトの名無しさん
2006/08/13(日) 22:35:48( ̄□ ̄;) そうでしたか、すいません
0666デフォルトの名無しさん
2006/08/13(日) 22:53:510667デフォルトの名無しさん
2006/08/13(日) 22:54:280668デフォルトの名無しさん
2006/08/13(日) 22:58:120669デフォルトの名無しさん
2006/08/13(日) 23:00:01int zandaka;
int deposit(int money) {
zandaka += money;
return zandaka;
}
}
他クラスからdepostに8000を与えるとします、そうするとその値はint型のmoneyになり
次の文でzandakaに8000が追加されます、そして次の文でreturnされるのですが
このreturnはzandakaに値を返しているのですが、このreturnはフィールドに対してのみ値を返すのでしょうか?
0670デフォルトの名無しさん
2006/08/13(日) 23:10:47X このreturnはzandakaに値を返している
O このreturnはzandakaの値を返している
0671デフォルトの名無しさん
2006/08/13(日) 23:13:56return文はこのメソッドdepositの呼び出し元にzandakaの値を返す。
zandakaへの操作はzandaka+=money;の代入文のみ。
0672デフォルトの名無しさん
2006/08/13(日) 23:40:26:
:
void deposit(int money) {
zandaka += money;
}
こんなふうにするだけで、フィールドzandaka は書き変わるよ(・∀・)
0673デフォルトの名無しさん
2006/08/13(日) 23:40:42レスありがとうございます、なるほど参照元にzandakaの値を返しているのですね
筋が通って今スッキリしてます・・・、zandakaはどこにトンでいってるんだよ!という感じに悩んでました
上か!?上のフィールドにトンでったのか!?てな感じに
0674669
2006/08/13(日) 23:51:21おお!なるほど!今そのVoid分を考えて気づいたのですが
それを使ってフィールドを書き直すとそのプログラムにしか使えないから
なるべく書き方を抽象的?にして、他クラスで複数のオブジェクトからdepositを参照させると
複数の利用が出来る、これがオブジェクト指向?なのでしょうか
0675デフォルトの名無しさん
2006/08/13(日) 23:54:33昔、CSVを処理するために作ったもの
http://www.geocities.jp/retort_curry119/UML.htm
誰か、もっと今風に改良してくれ
0676デフォルトの名無しさん
2006/08/14(月) 06:47:490677デフォルトの名無しさん
2006/08/14(月) 10:04:13同じファイル名のものは前のは完全に消えて上書きしますよね?
RandomAccessFileクラス以外にファイルのある特定場所だけを読み込む
のと書き換えるクラスとメソッドがあれば教えてください。よろしくです。
0678デフォルトの名無しさん
2006/08/14(月) 10:31:55この著者の結城浩という名前なんて読みますか?ケツシロヒロ・・・?
マジレスお願いしますorz
0679デフォルトの名無しさん
2006/08/14(月) 11:12:53そのurlのhを外して音読して見ろ。で、hは名前のイニシャルだ。
0680デフォルトの名無しさん
2006/08/14(月) 11:35:360681デフォルトの名無しさん
2006/08/14(月) 11:35:500682デフォルトの名無しさん
2006/08/14(月) 11:36:160683デフォルトの名無しさん
2006/08/14(月) 11:39:21試しにgetCharacterEncodingしてみると、set〜が機能していないらしいことに気付きました。
<サーブレットのコード>
response.setCharacterEncoding("UTF-8");
System.out.println("getCharacterEncoding:" + response.getCharacterEncoding());
response.setContentType("text/html;charset=UTF-8");
System.out.println("getContentType:" + response.getContentType());
<結果>
getCharacterEncoding:ISO-8859-1
getContentType:text/html;charset=ISO-8859-1
この現象の原因について何か分かる方いらっしゃったら教えて下さい。
0684デフォルトの名無しさん
2006/08/14(月) 13:06:27そういうのがオブジェクト指向かどうかなんともいえんが
// 口座に預金する
void deposit(int money) {
zandaka += money;
}
// 残高を取得する
int getBalance() {
return zandaka;
}
↑
たいていこんなかんじでメソッド群に役割配分するんじゃないの
0685デフォルトの名無しさん
2006/08/14(月) 14:44:44ttp://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html#setCharacterEncoding(java.lang.String)
> This method has no effect if it is called after getWriter has been called
> or after the response has been committed.
です。
0686683
2006/08/14(月) 15:13:18ありがとうございます!
頂いたアドバイスできれいに解決してしまいました。
自分なりには調べてから質問したつもりでしたが、
APIに書いてあることを見落とすようじゃお話になりませんね。
今度から気をつけます。
0687デフォルトの名無しさん
2006/08/14(月) 16:01:20x=0,1,2・・・
y=y[0],y[1],y[2]・・・
という形でXYグラフ上に描画したいのですが、いいクラスありませんでしょうか?
0688デフォルトの名無しさん
2006/08/14(月) 17:06:040689デフォルトの名無しさん
2006/08/14(月) 17:08:31その位自分でやれば
0690687
2006/08/14(月) 17:11:420691デフォルトの名無しさん
2006/08/14(月) 17:23:530692デフォルトの名無しさん
2006/08/14(月) 17:25:07どう解決したのか知らないけど、もし数値計算やってて、その解決法が
Point インスタンスによる情報保持だってのなら、それはやめた方がいいよ。
大規模計算に標準ライブラリを利用すると、無駄にメモリを食われ過ぎる
可能性が高い。自分で軽い Point クラスを作るのがいい。
0693687
2006/08/14(月) 17:37:38システムトレードの損益曲線を書きたいだけなので、
とりあえず、Graphicsクラスをいじってみることにします
0694デフォルトの名無しさん
2006/08/14(月) 17:40:32あと下のようなモデルはどのように実装するのがいいんでしょう?
一つのStringデータA_iに対して,複数のStringデータX_i、 Y_i、Z_iが対応しているとします.
そして、こうしたA_iがたくさんあるとします.(i=1,2,3,...)
ただし、A_iの個数はモデルを作る時点ではおおざっぱにしかわかりません.
1.全ての要素がStringの二次元配列をつくる.
2.とりあえずArrayListに登録して、あとから切り分ける.
上の1.2.を考えて,2が一番いいとは思うのですが他にいい方法はありませんか?
できればなるべく速い方法がよいのですが、プログラムのことはあまり詳しくないので
どれが速いかなどもよくわかりません.
0695デフォルトの名無しさん
2006/08/14(月) 18:13:42ここ、ID出ないからな…
質問的に、単にレポートにグラフをつけたいとか、それぐらいの
話なのかな? それなら、
PrintWriter pw = 〜;
for(int i=0; i<y.length; i++){
pw.println(i + "\t" + y[i]);
}
って感じで情報をファイル出力して、gnuplot(グラフ描写用ソフト)で
散布図を描写するのが手軽で良いと思うよ。
詳細は "wgnuplot" でググレ。
0696デフォルトの名無しさん
2006/08/14(月) 18:21:01ttp://www.jfree.org/jfreechart/
0697デフォルトの名無しさん
2006/08/14(月) 18:21:55イマイチ全体像がよくわからんな。
情報同士の対応(一対一、一対多)を書いて欲しい。
0698デフォルトの名無しさん
2006/08/14(月) 18:29:55速い方法とは何が速い方法なんだ。
挿入、削除、検索、ソート、開発時間?
0699デフォルトの名無しさん
2006/08/14(月) 18:32:41String文字列が、S_0,S_1,S_2,...とあったときに、
S_0をA[0][1] A[0][2] A[0][3] ,
S_1をA[1][1] A[1][2] A[1][3] ,
S_2をA[2][1] A[2][2] A[2][3] ,
と二次元配列にいれるか、あるいは
ArrayList<String> array = new ArrayList<String>();
array.add(S_0);
array.add(S_1);
array.add(S_2);
として、必要なときにgetして切り分けるかどちらがいいかということです.
0700デフォルトの名無しさん
2006/08/14(月) 18:39:24だから、なぜそこで二次元にする必要があるのかと問うているのだが。
A[i] で済むだろ。
0701デフォルトの名無しさん
2006/08/14(月) 18:48:45class Data {
public String Name;
public String X;
public String Y;
public String Z;
}
これ作って Data[] か ArrayList<Data> のどちらでも好きなほうを使え。
0702デフォルトの名無しさん
2006/08/14(月) 18:49:50すいません
S_0をA[0][1] A[0][2] A[0][3] →S_0を切り分けてA[0][1] A[0][2] A[0][3]
です。
>>698
うーん、自分でもよくわからず書いてしまいましたが、
とりあえず一番重要なのは追加です。ArrayListなら「追加して切り分け、追加して切り分け、」の繰り返しが速い方がいいです。
あと、A[][]の一番目の要素数=テキストファイルの行数です。
テキストファイルが大きいときに一回読み込んで行数を調べてからだとどうも時間がかかりそうなので、
テキストファイルの行数を速く知るほうほうがあるといいのですが
0703デフォルトの名無しさん
2006/08/14(月) 18:53:25どうも。
これが一番良さそうです。
0704デフォルトの名無しさん
2006/08/14(月) 19:23:38追加したあと、参照するんじゃないの?
例えば、Nameの値に関連付けられたX,Y,Zの値を使うとか
ArrayListだと検索がちょっとメンドウそう
HashMapとかが良いのかな?
0705デフォルトの名無しさん
2006/08/14(月) 19:51:17HTMLもパースする方法はありますか?
0706デフォルトの名無しさん
2006/08/14(月) 19:59:510707デフォルトの名無しさん
2006/08/14(月) 20:36:07J2SE5.0ベースのAPサーバ(Weblogic9.0とか)で問題なく動くのでしょうか?
Sunの互換性に関する記述を読んでも良くわかりませんでした。
0708デフォルトの名無しさん
2006/08/14(月) 20:40:39JTidy
HTML Parser
とか。
最近出た奴だとShaniXmlParserあたりか?
0709デフォルトの名無しさん
2006/08/14(月) 20:42:24普通に動くとは思うが、動作テストは居る。
0710デフォルトの名無しさん
2006/08/14(月) 20:58:34バイナリ互換?無けりゃコトだと思う。
WebLogicのマニュアル読んで、JDK1.4やらServlet2.3やらが
サポート範囲に入ってればなんら問題ないと思うけど。
(ちうかサポートしてるに決まってると思うが)
0711デフォルトの名無しさん
2006/08/14(月) 21:14:550712デフォルトの名無しさん
2006/08/14(月) 21:17:38では次
0713デフォルトの名無しさん
2006/08/14(月) 21:53:440715デフォルトの名無しさん
2006/08/14(月) 22:26:25ありがとうございます。
安心しました。
0716705
2006/08/14(月) 22:29:160717デフォルトの名無しさん
2006/08/14(月) 22:43:21本当にありがとうございました。
0718デフォルトの名無しさん
2006/08/14(月) 23:34:05からurl部分を抜き出したいんですが、
うまくいきません。
Pattern p_url = Pattern.compile("HREF\\s*=\\s*(\\S*)\\s*");
String url = p_url.matcher("HREF=http://www.url.com target=_blank").group(1)
とやろうとしてます。
解決策教えてください。。。
0719デフォルトの名無しさん
2006/08/15(火) 00:35:580720デフォルトの名無しさん
2006/08/15(火) 00:37:35groupメソッドのまえに
matchesメソッドを使わないとダメみたい。
うまくいきました。
0721デフォルトの名無しさん
2006/08/15(火) 02:23:390722デフォルトの名無しさん
2006/08/15(火) 03:06:130723デフォルトの名無しさん
2006/08/15(火) 03:08:46自前の例外クラスを作る上で、abstractなクラスを継承させるって方法、
変でしょうかね?
なぜabstractなのかと言うと、それは「XX機能群の例外ですよ」って意味でしかなく、
実際に使われると困るからです。
マーカー的なインターフェース継承させるのでも良いけど、
例外クラスにおいては、なおさらやらない方法かなぁ?と思いまして。
0724デフォルトの名無しさん
2006/08/15(火) 03:24:30良くやるかっつーと知らんけど。
0725デフォルトの名無しさん
2006/08/15(火) 03:34:200726デフォルトの名無しさん
2006/08/15(火) 08:17:53クラスに1-1対応したものを扱うとき。世界で唯一無二のイメージ。
対立概念はインスタンスに対応したもの
定番は、シングルトンパターン
0727デフォルトの名無しさん
2006/08/15(火) 10:52:240728デフォルトの名無しさん
2006/08/15(火) 11:01:030729デフォルトの名無しさん
2006/08/15(火) 11:19:070730デフォルトの名無しさん
2006/08/15(火) 11:36:03http://hp.vector.co.jp/authors/VA000092/jokes/
0731デフォルトの名無しさん
2006/08/15(火) 11:38:170732デフォルトの名無しさん
2006/08/15(火) 12:42:460733デフォルトの名無しさん
2006/08/15(火) 12:50:50どちらでも可
0734デフォルトの名無しさん
2006/08/15(火) 12:51:270735デフォルトの名無しさん
2006/08/15(火) 13:49:41あぷれっとを勉強すれば良いと思うぉ
0736デフォルトの名無しさん
2006/08/15(火) 13:52:11ところで、Swingは「スウィング」なのでしょうけど、
AWTはどう発音するのでしょうか
オウト?エーダブリュティー?
0737デフォルトの名無しさん
2006/08/15(火) 15:04:35登録しますか?OK:NGのダイアログを表示して確認を行いたいのですが、
うまくいきません。
教えてください。
0738デフォルトの名無しさん
2006/08/15(火) 15:33:590739デフォルトの名無しさん
2006/08/15(火) 16:01:310740デフォルトの名無しさん
2006/08/15(火) 16:55:32用語辞典とかではエーダブリュティーが多いね
Swingはかっこよくエス・ウィングだ
0741デフォルトの名無しさん
2006/08/15(火) 16:57:270742デフォルトの名無しさん
2006/08/15(火) 17:03:11OOP…オップ
CUR…カー
JSP…ジュスプ
ODBC…オドブク
0743デフォルトの名無しさん
2006/08/15(火) 18:12:22jarファイルとか他のフォルダは残ってるんだけど・・・何かしたかな
0744デフォルトの名無しさん
2006/08/15(火) 18:15:59それはですね、
本体のあp(ry
0745デフォルトの名無しさん
2006/08/15(火) 18:39:200746デフォルトの名無しさん
2006/08/15(火) 21:23:51[d, b, f, g, a, e, c]等の任意の配列に並び返るには
どのようにソートするのが効率的なのでしょうか?
0747デフォルトの名無しさん
2006/08/15(火) 21:30:31プログラマの決めた「ある法則」が存在するんだよな?
Comparatorインタフェースを実装してArrays.sortに放り込めばOK
ただしプリミティブ型は使えないのが玉に瑕(Stringはok)
0748746
2006/08/15(火) 21:49:01早速ありがとうございます。「任意」の意味は仰るとおり、ランダムでは
ありませんが、任意の配列は毎回変わります。
もうちょっと具体的な例を書かせてもらいます。
社員オブジェクトの配列があって、それと社員番号の配列があります。
社員番号の配列は実行の度に毎回変わるようなものです。
この社員オブジェクト配列を指定された社員番号の配列の通りに
ソートしたいという要求です。
感じとしては、sort(Employee[] employees, int[] ids):Employee[]
というようなメソッドが欲しいです。
こういった場合だと、Comparatorをメソッドの中で生成するのも難しそうですが、
どうでしょうか。
0749デフォルトの名無しさん
2006/08/15(火) 21:55:49たいしたコストでは無いような気がするけど・・・。
0750デフォルトの名無しさん
2006/08/15(火) 22:02:41ソートするまでもないような。
Map<Integer, Employee> m = new HashMap<Integer, Employee>();
for (Employee e: employees) { m.put(e.id(), e); }
List<Employee> result = new ArrayList<Employee>(employees.length);
for (int id: ids) { result.add(m.get(id)); }
return result.toArray(new Employee[] {});
0751デフォルトの名無しさん
2006/08/15(火) 22:17:52それで良いんじゃ。
0752746
2006/08/15(火) 22:48:45なるほど、750のように順番を詰め替えていくような感じでいいんですね。
もっと裏技(?)みたいなやり方があるのかと思って、質問させていただきました。
ありがとうございます。
0753デフォルトの名無しさん
2006/08/15(火) 22:50:480754デフォルトの名無しさん
2006/08/15(火) 22:55:000755デフォルトの名無しさん
2006/08/16(水) 02:08:34致命的な馬鹿に見えるのは気のせい?
0756デフォルトの名無しさん
2006/08/16(水) 09:19:26言葉には出すな…………この世界ではな…
0757デフォルトの名無しさん
2006/08/16(水) 09:41:280758デフォルトの名無しさん
2006/08/16(水) 11:13:200759デフォルトの名無しさん
2006/08/16(水) 11:16:42・TextViewer.getDocument()でDocumentを編集
・TextViewer.getDocument().get()でStringに入れて編集
のどっちがいい?
0760デフォルトの名無しさん
2006/08/16(水) 13:42:39Stringに入れてもStringは編集できない
素直にDocumentを編集
0761デフォルトの名無しさん
2006/08/16(水) 14:11:13setLocation で変えるのじゃダメなのか?
0762デフォルトの名無しさん
2006/08/16(水) 14:27:28もしjavascriptの話題なら板違いなのでWeb製作板へどうぞ。
0763デフォルトの名無しさん
2006/08/16(水) 14:46:53ききました。いまはコマンドラインでやってるんですが
どんなもんなのでしょうか?またお勧めできますか?
0764デフォルトの名無しさん
2006/08/16(水) 14:56:47NetBeansだとこういうことができるらしい。
ttp://www.netbeans.org/files/documents/4/475/matisse.html
Eclipse厨なので使ったこと無いが。
Eclipseでするならjiglooかな。
0765デフォルトの名無しさん
2006/08/16(水) 15:13:48ビーンズとEclipseとういのをざっと調べてみました。
いまいちよくわからないのですが
どちらがよいのでしょうか?
0766デフォルトの名無しさん
2006/08/16(水) 15:32:38両方使ってみて扱いやすい方にすればよい。
そして、両方の使い心地をレポートにして報告してほしい。
あとを行く者達の役に立つから。
0767デフォルトの名無しさん
2006/08/16(水) 21:46:55それ以外を作るなら Eclipse だ。
ただ、NetBeans で GUI を作ってソースを自動生成させると
非常に汚いので俺は使わない。
使うなら、まずレイアウトマネージャを使わず setBounds で座標指定していき
その後で GridBagLayout に変換する事をおすすめする。
0768デフォルトの名無しさん
2006/08/16(水) 22:00:29「GUI環境で開発作業をしたい」じゃないのか?
0769デフォルトの名無しさん
2006/08/16(水) 22:20:450770デフォルトの名無しさん
2006/08/16(水) 23:29:530771デフォルトの名無しさん
2006/08/17(木) 00:03:55java.net.MalformedURLException: unknown protocol: d
の" d " って何なんですか?ぐぐると他にもcやf何かが出てくるのですが
それぞれ意味があるのでしょうか?
0772デフォルトの名無しさん
2006/08/17(木) 00:09:20unknown protocol: d って言われてんだから protocol の部分が d だったんだろ。
例えば d://hoge.com/foo とかやってたとか。
0773デフォルトの名無しさん
2006/08/17(木) 00:11:28あっそうか!どうもありがとうございます。厨な質問でスレ汚し失礼しました。
0774デフォルトの名無しさん
2006/08/17(木) 00:27:020775デフォルトの名無しさん
2006/08/17(木) 00:37:35すべて表示する場合に
何番目の配列かを表示する方法って
以下の方法以外に何かありますか?
int i =0
for(String s : A){
System.out.println("A[" + i + "]" + s]);
i++;
}
0776デフォルトの名無しさん
2006/08/17(木) 01:10:130777デフォルトの名無しさん
2006/08/17(木) 01:18:12ファイルを使う時などに、�@みたいなパターンで書かれていることが多いですが、これを�Aみたいに書くと何か問題ありますか?
要は、closeが確実に呼べればよいのだと思うのですが、�@だとエラー処理が2か所に分かれて気持ち悪いのです。
で、�Aのように書いてみたのですが、世間のソースをみてみると�@が圧倒的に多くて不安になったので。
�@------------------------------------------------
FileReader fileReader = null;
try {
fileReader = new FileReader( inputFilePath );
fileReader.read(); // ※使う
} catch( IOException e ) {
e.printStackTrace(); // ※エラー処理
} finally {
try {
if( fileReader != null ) {
fileReader.close();
}
} catch( IOException e ) {
e.printStackTrace(); // ※エラー処理
}
}
�A------------------------------------------------
try {
FileReader fileReader = new FileReader( inputFilePath );;
try {
fileReader.read(); // ※使う
} finally {
fileReader.close();
}
} catch( IOException e ) {
e.printStackTrace(); // ※エラー処理
}
0778776
2006/08/17(木) 01:26:09class Indexed<T> implements Iterable<WithIndex<T>> {
Iterable<T> iterable;
public Indexed(Iterable<T> iterable) { this.iterable = iterable; }
public Iterator<WithIndex<T>> iterator() {
return new Iterator<WithIndex<T>>() {
private Iterator<T> iterator = iterable.iterator();
private int index = 0;
public boolean hasNext() { return iterator.hasNext(); }
public WithIndex<T> next() { return new WithIndex<T>(iterator.next(), index ++); }
public void remove() { throw new UnsupportedOperationException(); }
};
}
}
public class WithIndex<T> {
public final T data;
public final int index;
public WithIndex(T data, int index) { this.data = data; this.index = index; }
public static void main(String[] args) {
Indexed<String> indexed = new Indexed<String>(Arrays.asList(args));
for (WithIndex<String> e: indexed) { System.out.printf("args[%d]=%s%n", e.index, e.data); }
}
}
0779776
2006/08/17(木) 01:46:26for (WithIndex<String> e: WithIndex.over(Arrays.asList(args))) {
System.out.printf("args[%d]=%s%n", e.index, e.data);
}
とやる。
public class WithIndex<T> {
public static <S> Iterable<WithIndex<S>> over(final Iterable<S> iterable) {
return new Iterable<WithIndex<S>>() {
public Iterator<WithIndex<S>> iterator() {
return new Iterator<WithIndex<S>>() {
private Iterator<S> iterator = iterable.iterator();
private int index = 0;
public boolean hasNext() { return iterator.hasNext(); }
public WithIndex<S> next() { return new WithIndex<S>(iterator.next(), index++); }
public void remove() { throw new UnsupportedOperationException(); }
};
}
};
}
public final T data;
public final int index;
public WithIndex(T data, int index) { this.data = data; this.index = index; }
}
0780デフォルトの名無しさん
2006/08/17(木) 01:46:59fileReader.read() で例外が発生したときに
e.printStackTrace() と fileReader.close() のどっちが先に発生するか
わかりづらいだろ。
0781デフォルトの名無しさん
2006/08/17(木) 03:16:25J2SE Runtime Environment 5.0
J2SE Runtime Environment 5.0 Update6
J2SE Runtime Environment 5.0 Update8
があるんですが上の二つはアンインストールしてもいいんでしょうか?
カスな質問とは思いますがだれか教えてくださいまし
0782デフォルトの名無しさん
2006/08/17(木) 03:21:16カスな質問だが、うどんに天カスは必要だと思うから答えてみよう。
消すが良い。
0783デフォルトの名無しさん
2006/08/17(木) 03:38:410784デフォルトの名無しさん
2006/08/17(木) 03:42:280785デフォルトの名無しさん
2006/08/17(木) 06:42:52ごめんな…でもお前のことは好きだぞ!
0786デフォルトの名無しさん
2006/08/17(木) 06:57:17public static void main(String[] arg){
int i;
int sum;
sum = 0;
i = 1;
while(i <= 100) {
sum += i;
i = i + 1;
}
System.out.println(sum);
}
}
これがなんで5050になるのか教えてください。
マジでなんで???????
0787デフォルトの名無しさん
2006/08/17(木) 07:14:11sum = 1 + 2 + ... + 100 = 琶(i=1:100) = {100×(100+1)}÷2 = 5050
↑琶 = n(n+1)/2 の公式って名前付いてたんだっけか?
0789デフォルトの名無しさん
2006/08/17(木) 09:55:350790デフォルトの名無しさん
2006/08/17(木) 10:17:260791デフォルトの名無しさん
2006/08/17(木) 12:27:03底辺の長さと高さから三角形の面積を求める簡単な式も三角形の求積公式だよ
二次方程式の解を求める式も解の公式って言うだろ
複雑でなければ公式でないというのは数学の美学に反する判断基準だ
0792デフォルトの名無しさん
2006/08/17(木) 13:24:25定理とどう違うんだ?
0793デフォルトの名無しさん
2006/08/17(木) 13:28:40lv.listRemoveAll();
とすると
メソッド listRemoveAll() は型 ListViewer で不可視です。
と出るんだが,どうすればlistRemoveAll()を使用できる?
0794デフォルトの名無しさん
2006/08/17(木) 13:31:13数式で出来てる定理を公式とよぶ
※定理は証明された命題
0795デフォルトの名無しさん
2006/08/17(木) 13:46:29何で5050になるかって?
そりゃ、おまいさんのプログラムにバグが無かったからだよ
おめでとう
0796デフォルトの名無しさん
2006/08/17(木) 13:52:54どうしてもしたければ、リフレクションでsetAccessible
というか、何で呼べないのかという理由を考えてみよう
使うと何か問題があるんじゃないのか?
他のメソッドとセットで使わないと内部整合性がとれなくなるから呼べなくしてるとか。
実現したい機能は別のメソッド使ったりとか。
ListViewerが自分で書いたクラスなら、被アクセスについて考えながらクラスの設計やり直し。
0797デフォルトの名無しさん
2006/08/17(木) 14:00:16簡単にいうと数学で命題とは「真」か「偽」が定められる文のこと。
もちろん命題にも証明が必要。
定理とは命題のなかでも特に重要なもののことをいう。
定理(theorem)、命題(Proposition)、補題(lemma)、系(cororally)はみな命題の一種。
これらは重要度や役割によって名前が違う。
たとえば、定理の証明に必要な命題は補題といったり、定理からわりと簡単に導かれる命題の
ことを系といったりする。
もちろん重要度や役割は著者によって多少異なるから、あるテキストでは定理のものが
別のテキストでは命題だったりする。「ツォルンの補題」という定理もある。
0798デフォルトの名無しさん
2006/08/17(木) 14:03:480799デフォルトの名無しさん
2006/08/17(木) 14:08:39起動が遅くてストレス溜まります。
次はネットビーンズ使ってみようと思います。
0800デフォルトの名無しさん
2006/08/17(木) 14:12:32org.eclipse.jface.viewers.ListViewer のメソッドです
解説サイトもほとんど無いし,API Referenceは英語だし(日本語でもたぶん分からないけど),お手上げ状態…
0801800
2006/08/17(木) 14:17:20英語のサイト読んだらコードがあった
0802デフォルトの名無しさん
2006/08/17(木) 14:33:35ようするに宗派によって呼び方の差があると言う訳だ
0803デフォルトの名無しさん
2006/08/17(木) 15:40:27まあそんな感じ。ただ宗派ほど大げさではなくて、本の書き方のスタイルというか。
あと時間が経ってからその価値がわかって名前が変わることもある。
ただこれは自分の理解なので違う意見もあるかもしれんが。
0804デフォルトの名無しさん
2006/08/17(木) 16:35:39それはどこにあるの?
0805デフォルトの名無しさん
2006/08/17(木) 16:43:08一体なにから手を突けたらいいのかもわかんないっす・・
誰かぼすけて
0806デフォルトの名無しさん
2006/08/17(木) 17:01:11Just in Time コンパイラだからなぁ……。語源的に不可能。
0807デフォルトの名無しさん
2006/08/17(木) 17:02:57あえてレスしてやろう、そんなところで躓いているようではこの先確実に挫折する
Javaの文法は序章に過ぎない、今からアンインストールして別の事やりなさい
あともう一つ、目標の無いヤツは何をやっても中途半端で終わる
0808デフォルトの名無しさん
2006/08/17(木) 17:25:03次は、数当てゲームだ
というか、こういうのは誰かに見てもらうってのがいいと思う
こんな事できないの?とか言われて改良の刺激になる
ハローワールドもスゴイハローワールドにできるかもしれんしな
全画面表示、Lupinスタイルのハローワールドもアリだ。
>>804
JITというかJITを持ったJVMは、Javaコードをネイティブコードに
落とす機能を持っているからその機能を応用してネイティブの
実行ファイルを作る機能を持っているものもある。
JIというキーワードにこだわらず
Java、ネイティブコンパイル 辺りのキーワードで検索してみましょう。
gcjとかが引っかかってくるはず。
0809デフォルトの名無しさん
2006/08/17(木) 19:50:15「プラットフォームのデフォルト文字エンコーディング」
というものは変更可能でしょうか?
0810809
2006/08/17(木) 20:02:090811デフォルトの名無しさん
2006/08/17(木) 21:23:030812デフォルトの名無しさん
2006/08/17(木) 21:45:49いや、そんな。
明らかに、fileReader.close()が先に発生しますよね。
わかりやすいかと言われればそうとも言い切れませんが、
これがわかりづらいのなら�@だってわかりづらい。
というわけで、わかりやすさを理由として�Aで書かない訳ではないと思うのですが。
0813デフォルトの名無しさん
2006/08/17(木) 22:12:39目から鱗が落ちた気がしました。
明日からがんばります(
0814デフォルトの名無しさん
2006/08/17(木) 23:09:590815デフォルトの名無しさん
2006/08/17(木) 23:45:220816デフォルトの名無しさん
2006/08/18(金) 00:33:48つByteBuffer
0817816
2006/08/18(金) 00:39:13失礼、memcpyと勘違いした
0818デフォルトの名無しさん
2006/08/18(金) 01:00:39スキン対応な独自のlafを作って勝手に変えればいいだけの話だろ?
それともSwingはもとからあるlafしか使えないとでも思ってるのか。
0820デフォルトの名無しさん
2006/08/18(金) 01:04:400821デフォルトの名無しさん
2006/08/18(金) 01:05:04ひな形になるのはわかったんだけど継承しても結局小クラス
同じ名前でオーバーライドするなら意味あるの?って思う。
同じ名前で使えるってところがミソなの?
良かったらご教示ください。
0822デフォルトの名無しさん
2006/08/18(金) 01:10:43ん、インターフェースはわかるのか?
0823デフォルトの名無しさん
2006/08/18(金) 01:17:42あからさまなリングバッファはないような気がする。
でも、リングバッファでやりたいことってQueueを実装するクラスで大体やれないか?
0824デフォルトの名無しさん
2006/08/18(金) 01:27:07多態性をもっと勉強する
0825デフォルトの名無しさん
2006/08/18(金) 01:36:14型システムでも勉強してみればー?
0826821
2006/08/18(金) 01:42:12>>822
継承は1つのクラスからしかできないから
他に機能を持たせるために使うんだよね?
他にも使い方とかあるんですか?
>>824
確か適所適材の様な意味だったとしか記憶してません。
すみません。
>>825
型システムって初めて聞きました。
0827デフォルトの名無しさん
2006/08/18(金) 02:07:58インターフェースに関してはwikiのFAQを読んでみよう
0828デフォルトの名無しさん
2006/08/18(金) 02:10:30なんか注意点ある? ちなみにプログラミングはやったことない。
0829デフォルトの名無しさん
2006/08/18(金) 02:11:21IE+JRE1.5でアプレットを使ったソフトを作ったのですが、
そのソフトを数日動かすとIEがダウンするわWindowsXPがハングするわとクレームが出てきました。
アプレットごときでOSを倒すような猛烈なプログラミングって出来るものでしょうか?
CPU占有率100%な無限ループなプログラムでもXPを倒すのは不可能だとおもうですが。どうなんでしょう。
先方さんのPCがおかしいような気がするのですが。
0830デフォルトの名無しさん
2006/08/18(金) 02:14:220831デフォルトの名無しさん
2006/08/18(金) 02:25:20�Aだと read() で発生した例外が close() で発生した例外にかき消される。
こういう場合はどちらかというと後から発生した二次的な例外を捨てるのが普通の方法らしき
0832デフォルトの名無しさん
2006/08/18(金) 02:28:38メモリーリークでもしてるんじゃあないか
0833デフォルトの名無しさん
2006/08/18(金) 02:33:52とくに注意点はない。
良い教科書と良い師匠に出会えることを祈る。
0834デフォルトの名無しさん
2006/08/18(金) 04:27:36注意:目的を持て
0835デフォルトの名無しさん
2006/08/18(金) 04:29:05プログラム”言語”って名前がついている以上、『読み書き』 と 『会話』 は必須
外国語習っている感じにゆっくり憶えてきー
0836デフォルトの名無しさん
2006/08/18(金) 04:33:56プログラミングなど貴様等の仕事だ。
俺は貴様等を使いプログラミングを完成させる男となる
わかったらYESボスと言え
0837デフォルトの名無しさん
2006/08/18(金) 04:35:130838デフォルトの名無しさん
2006/08/18(金) 04:38:260839デフォルトの名無しさん
2006/08/18(金) 04:39:11エッヘヘ!( ´∀`)σ)Д`)
0840デフォルトの名無しさん
2006/08/18(金) 07:29:150841デフォルトの名無しさん
2006/08/18(金) 07:36:040842デフォルトの名無しさん
2006/08/18(金) 07:40:060843デフォルトの名無しさん
2006/08/18(金) 09:41:34本当にお疲れさまです。
0844デフォルトの名無しさん
2006/08/18(金) 10:46:260845デフォルトの名無しさん
2006/08/18(金) 11:10:07標準出力などを行う基本どころのアプリを作っているのですが、
検索してもいまいちわからないので質問させていただきます。
public static void main(String[] args) {
public static void main(String args[]) {
どちらで記述しても動くようですが、どちらの表記が標準なのでしょうか。
また、下の場合は何故変数名に配列を示す[]をつけても動くのでしょうか。
0846デフォルトの名無しさん
2006/08/18(金) 11:14:05うけど、全くと言っていいほど使われてない。例外メッセージは開発者向けだか
らローカライズしなくていいや、ってことになっちゃってるのかも。
とはいえ、例外情報が例外型とメッセージしかない場合は、ユーザー向けエラーダイ
アログに入れるメッセージの作成に困るんだよな。
0847デフォルトの名無しさん
2006/08/18(金) 11:18:51String[] argsが標準
C/C++プログラマのためにString args[]も使えるようになっている。
0848デフォルトの名無しさん
2006/08/18(金) 11:21:25String[] argsが正式。
An array type is written as the name of an element type followed by
some number of empty pairs of square brackets [].
[JLS 10.1 Array Types]
String args[]は(C言語経験者がまごつかないように)
後ろにつけても同じ意味で解釈するように仕様で認めている。
The [] may appear as part of the type at the beginning of the declaration,
or as part of the declarator for a particular variable, or both, as in this
example: byte[] rowvector, colvector, matrix[];
[ditto]
上の例でmatrixの型は byte[] じゃなくて byte[][] なのに注意。
紛らわしくなるので、よほど思い入れがない限りはすべて型につけるのがおすすめ。
0849デフォルトの名無しさん
2006/08/18(金) 14:26:230850デフォルトの名無しさん
2006/08/18(金) 14:45:240851デフォルトの名無しさん
2006/08/18(金) 15:01:500852デフォルトの名無しさん
2006/08/18(金) 15:07:480853852
2006/08/18(金) 15:12:27スレ汚しすみませんでした
0854デフォルトの名無しさん
2006/08/18(金) 16:48:50例えば>>852みたいなことが知りたい場合どのように調べたらいいんですか?
0855デフォルトの名無しさん
2006/08/18(金) 16:52:10経験
0856デフォルトの名無しさん
2006/08/18(金) 16:53:22この場合はStringクラスのドキュメント見ればすぐわかる。
またはググる。
0857デフォルトの名無しさん
2006/08/18(金) 16:56:300858デフォルトの名無しさん
2006/08/18(金) 16:58:210859デフォルトの名無しさん
2006/08/18(金) 18:05:17Converters.getDefaultEncodingName()で取得するエンコーディングを変えたいんだけど。
0860デフォルトの名無しさん
2006/08/18(金) 18:07:100861デフォルトの名無しさん
2006/08/18(金) 18:16:20パクリ
0862デフォルトの名無しさん
2006/08/18(金) 18:22:300863デフォルトの名無しさん
2006/08/18(金) 20:16:20java -Dfile.encoding=UTF-8
0864デフォルトの名無しさん
2006/08/18(金) 20:54:110865デフォルトの名無しさん
2006/08/18(金) 20:56:090866デフォルトの名無しさん
2006/08/18(金) 21:02:39でもこのスーパークリーナーJを使えばあっという間にピカピカさ
0867デフォルトの名無しさん
2006/08/18(金) 21:03:32等といったSQLをPreparedStatementで発行する際、
SQL文をlog4jで簡単にログ出力できませんでしょうか。
但し、[?]をsetString()した値に置換するという条件つきです。
SQL文を1文字づつループして置換するゴリゴリ戦法の場合、
[?]が100個、200個あった死んでしまいます・・
0868デフォルトの名無しさん
2006/08/18(金) 21:07:38RDBMS によってはプレースホルダを DB 側で解釈するので、汎用的にそれをする手段はないよ。
0869デフォルトの名無しさん
2006/08/18(金) 22:08:170870デフォルトの名無しさん
2006/08/18(金) 23:22:55確かに、おっしゃるとおりですね。
そうすると、�@の書き方のときでもcloseでの例外時の処理は気をつけて書かないといけないですね。
readでの例外をかき消さないように。
↓こんなになっちゃうのかなぁ。
ttp://java-house.jp/ml/archive/j-h-b/022436.html
closeでエラーとしないと(例外を握りつぶすと)、flashが正しく行われないまま処理を継続する可能性があるし。
ttp://72.14.235.104/search?q=cache:1PzZ0wIeH7oJ:bowez.exblog.jp/i4+close+try+ioexception+%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5
なんかセオリーはないもんですかねぇ。
ともあれ、レスありがとうございました。
0871デフォルトの名無しさん
2006/08/18(金) 23:59:35HellowWorld.javaをコンパイルすると、JoinString.classという
ファイルが出来ました。そして、とらさんの本のように
javac 〜と実行してもできなくて、
あるサイトにあったので、java JoinString
としたら、Hellow World!
と出たので、とりあえず嬉しかったです。
どういうわけなんでしょうか?
0872デフォルトの名無しさん
2006/08/19(土) 00:07:34javac 〜
は〜をコンパイルすること。しかも〜はjavaという拡張子をもたないのでエラーになる。
JoinString.classを実行するには
java JoinString
としなければならない。
javacはコンパイルする、javaは実行する、と覚えておくこと。
0873デフォルトの名無しさん
2006/08/19(土) 00:44:34javac HellowWorld.java
とやったら、期せずして
JoinString.class
というファイルが出来ていたのです。
それでとらさんの本に、javac HellowWorld
というふうに”実行”すると記されているんですけどね。
それから、コマンドプロンプトにまず、EasyJavaを表示させてから
コンパイルするということが本に書かれてなくて、2日かかってしまいました。
0874デフォルトの名無しさん
2006/08/19(土) 00:46:11明日本屋にいけ
0875デフォルトの名無しさん
2006/08/19(土) 00:55:360876デフォルトの名無しさん
2006/08/19(土) 00:57:570877デフォルトの名無しさん
2006/08/19(土) 00:59:12意外にJAVAに精通してるのがメガネ女店員なんだ
0878デフォルトの名無しさん
2006/08/19(土) 01:01:230879デフォルトの名無しさん
2006/08/19(土) 01:21:55Amazon で探してみたが、ひどく胡散臭そうなタイトルだな。
そういう本に限って役に立たなかったりするっつーのを念頭に置いておけよ。
0880デフォルトの名無しさん
2006/08/19(土) 01:41:09作り主から聴くのは良いと思う。
0881デフォルトの名無しさん
2006/08/19(土) 02:03:490882デフォルトの名無しさん
2006/08/19(土) 04:13:17確かに。J++から移行したときも大いに。馴れればある意味MS系の開発環境よか使いやすいな。
ソースがスプリット表示できればもっと良いのに(><
0883デフォルトの名無しさん
2006/08/19(土) 04:19:220884デフォルトの名無しさん
2006/08/19(土) 04:27:300885デフォルトの名無しさん
2006/08/19(土) 09:41:020886デフォルトの名無しさん
2006/08/19(土) 12:13:530887デフォルトの名無しさん
2006/08/19(土) 12:15:36俺はこの順だった。
大全系はリファレンス的に使う物だけど、こう言うのもあんのかぁって知っておいた
方が、後で忘れた時も引きやすいので、一度は全部に目を通しておく。
あとは、その都度ネットだな。
ほんとは本の方がいいけど、高いしはずれもあるから。
0888デフォルトの名無しさん
2006/08/19(土) 12:40:34その都度分からないことはネットで検索、ネットで全て何とかなる
後はデザインパターン入門でも買うと理解が深まる
0889デフォルトの名無しさん
2006/08/19(土) 13:42:09胡散臭いタイトルのくせに、ためになる話が適度に凝縮されている。
0890デフォルトの名無しさん
2006/08/19(土) 14:17:18どれのこと?
0891デフォルトの名無しさん
2006/08/19(土) 16:07:190892デフォルトの名無しさん
2006/08/19(土) 17:18:46Tomcatをインストールしようとすると途中で
Apache Tomcat Setup
Failed to install Tomcat5 service.
Check your settings and permissions
Ignore and continue anyway
(not recommended)?
という中止メッセージがでて
色々やってみたんですけど途方にくれています。
どなたか分かる方いませんか?
0893デフォルトの名無しさん
2006/08/19(土) 17:43:44自己解決しました。98じゃ難しいみたいだねorz
0894デフォルトの名無しさん
2006/08/19(土) 18:25:114でも動いたり動かなかったり。
0895デフォルトの名無しさん
2006/08/19(土) 19:11:07for(int i=0;i<l;i++){
hoge(i);
}
みたいに、forループである処理を何回も実行するときに
そのループ内の進行状況をバーか%で表示するのになんかいい方法ってありますか?
0896デフォルトの名無しさん
2006/08/19(土) 19:22:470897デフォルトの名無しさん
2006/08/19(土) 19:30:45JProgressBar
0898デフォルトの名無しさん
2006/08/19(土) 20:08:33プログラミング自体初
0899デフォルトの名無しさん
2006/08/19(土) 20:10:19なるほど、サンクス〜
0900デフォルトの名無しさん
2006/08/19(土) 21:13:10GridLayoutで
[A][B]
みたいに配置して
A.setVisible(false)とした後
[ B ]
みたいに[A]の見えなくなった領域まで[B]を拡張したいんだがどうすればいい?
また、A.setVisible(true)とした後は
[A][B]
に戻したい
0901デフォルトの名無しさん
2006/08/20(日) 00:35:55環境変数のPathに ;c:\Java\jdk1.5.0_06\bin を追加したのですが
javacが使えません。 何が間違ってるのかご指摘願います。
使用OS Windows2000
フォルダ Cドライブ→プログラムファイルズ→Java→jdk1.5.0_06とjre1.5.0_06の二つフォルダが
入ってます
0902デフォルトの名無しさん
2006/08/20(日) 00:46:200903デフォルトの名無しさん
2006/08/20(日) 01:30:55どうやればいいでしょうか?
もちろんsetRequestMethod("OPTIONS")を呼び出すことはわかりますが、
これを呼び出すためにURLクラスのインスタンスが必要になります。
これを
HttpURLConnection con = new URL("*").getConnection();
con.setRequestMethod("OPTIONS");
con.connect();
とすると、当たり前ですがMalformedURLExceptionが出て、実行時エラーとなります。
0904デフォルトの名無しさん
2006/08/20(日) 01:33:56HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setRequestMethod("OPTIONS");
InputStream in = con.getInputStream();
0905デフォルトの名無しさん
2006/08/20(日) 01:46:07http://www.amazon.co.jp/gp/product/images/4797331828/ref=dp_image_text_0/503-5133814-9343950?ie=UTF8
これだよ。
そういやサーブレットとか swing が載ってる やさしいJava応用編みたいのもあったな。
あくまでもこの本はJavaの文法をおさえるためだけの本だ。
サーブレットとかはもっと専門書を買った方がいいだろう。
0906デフォルトの名無しさん
2006/08/20(日) 01:56:02new URL("http", "www.yahoo.co.jp", 80, "*") でダメなら無理じゃね?
0907デフォルトの名無しさん
2006/08/20(日) 02:01:08ありがとうございます。
これでエラーはなくなりましたが、今度はOPTIONSの結果が見つかりません。
Map<String, List<String>> headers = con.getHeaderFields();
List<String> allows = headers.get("Allow"); // ここでnullが返ってくる
headersを全部表示してみましたが、Allowがないようです。
しかしステータスは200なので、OPTIONSメソッドが失敗しているわけではないようです。
0908デフォルトの名無しさん
2006/08/20(日) 02:03:52で出来ました。本当にありがとうございました。
0909デフォルトの名無しさん
2006/08/20(日) 02:05:27telnet で直接ポート 80 叩いて Allows 返してるか調べれ。
0910デフォルトの名無しさん
2006/08/20(日) 02:07:30URL url = new URL("http", "www.yahoo.jp", 80, "*");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("OPTIONS");
Map<String, List<String>> headers = con.getHeaderFields();
List<String> allows = headers.get("Allow");
ちなみにgoogle.co.jpはHTTP1.0を使っているのか、
bad requestが返ってきました。
0911デフォルトの名無しさん
2006/08/20(日) 02:46:22Display display = new Display();
Shell shell = new Shell(display);
final Composite comp = new Composite(shell, SWT.NULL);
final Button button1 = new Button(comp, SWT.NULL);
final Button button2 = new Button(comp, SWT.NULL);
button1.setText("Button1");
button2.setText("Button2");
button1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
GridData gridData = new GridData();
gridData.exclude = true;
button1.setLayoutData(gridData);
button1.setVisible(false);
button2.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
comp.layout();
}
});
button2.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
GridData gridData = new GridData();
gridData.exclude = false;
button1.setLayoutData(gridData);
button1.setVisible(true);
comp.layout();
}
});
shell.setLayout(new GridLayout());
comp.setLayout(new GridLayout(2, false));
0912911
2006/08/20(日) 02:59:49(1) setVisible(false)で不可視にしただけではレイアウト上は存在している。
(2) レイアウト対象から除外するためにはGridData.excludeをtrueにする。
(3) 全体を覆わせるためのwidgetをGridData.FILL_HORIZONTALにしておく。
(4) 再レイアウトするにlayout()を呼ぶ。
0913デフォルトの名無しさん
2006/08/20(日) 10:34:38SWTスレあるんだからそちらへいきなさい
0914デフォルトの名無しさん
2006/08/20(日) 10:48:450915デフォルトの名無しさん
2006/08/20(日) 11:33:01って文言はコメントアウトされちゃってるからなあw
SWTスレの方がずっと回答率は高いと思うが
0916デフォルトの名無しさん
2006/08/20(日) 11:49:42SWTスレとか回答率とかそういうことじゃない
ぼくはこのスレが好きなんです。
だからぼくは質問をやめない
0917デフォルトの名無しさん
2006/08/20(日) 12:01:14質問するなと言っているわけではないよ
回答できるのなら他に適切なスレがあっても回答することもある
もちろん他スレに誘導することもある
無視することさえ
質問者の好き嫌いは回答のあるなしには関係ないということだ
このスレが好きなのなら質問をするだけでなく他の人へ回答もしてあげてスレの質を高めていきましょう
0918デフォルトの名無しさん
2006/08/20(日) 12:34:420919デフォルトの名無しさん
2006/08/20(日) 12:41:140920デフォルトの名無しさん
2006/08/20(日) 13:17:120921デフォルトの名無しさん
2006/08/20(日) 13:21:260922デフォルトの名無しさん
2006/08/20(日) 14:18:100923デフォルトの名無しさん
2006/08/20(日) 14:42:230924デフォルトの名無しさん
2006/08/20(日) 15:45:210925デフォルトの名無しさん
2006/08/20(日) 16:31:570926デフォルトの名無しさん
2006/08/20(日) 17:39:040927129
2006/08/20(日) 20:43:400928デフォルトの名無しさん
2006/08/20(日) 20:44:57System.outに相当するOutputStreamは何でしょうか?
0929デフォルトの名無しさん
2006/08/20(日) 20:45:20気にしなくていいよ
0930デフォルトの名無しさん
2006/08/20(日) 21:03:47API doc に書かれてるよ。System クラスのところ。
0931デフォルトの名無しさん
2006/08/20(日) 21:24:420932デフォルトの名無しさん
2006/08/20(日) 21:35:220933デフォルトの名無しさん
2006/08/20(日) 21:43:10どんな質問でも全力で答えるのが俺たちジャバラーだろうが
おまえみたいな奴はでていけ
0934デフォルトの名無しさん
2006/08/20(日) 21:46:46出直して来ます!
0935デフォルトの名無しさん
2006/08/20(日) 21:47:03他会社の半島連中がハングルで会話しててうるさいんですがどうしたら良いですか?
0936928
2006/08/20(日) 21:58:12私が欲しいのはOutputStream型のオブジェクトです。
0937928
2006/08/20(日) 21:59:23PrintWriter型のoutだけです。
0938928
2006/08/20(日) 22:01:49PrintStreamで良いのでした。
0939デフォルトの名無しさん
2006/08/20(日) 22:03:090940928
2006/08/20(日) 22:09:260941928
2006/08/20(日) 22:14:49できれば完全に動くソース付きで。
0942デフォルトの名無しさん
2006/08/20(日) 22:16:27君はもう、5レス越えちゃってるから、明日ね。ノシ
0943928
2006/08/20(日) 22:19:42馬鹿な質問をしました。すみません。
0944928
2006/08/20(日) 22:21:47キムチは最初に持ってきてください。
0945デフォルトの名無しさん
2006/08/20(日) 22:54:040946928
2006/08/20(日) 22:56:410947928
2006/08/20(日) 23:13:590948デフォルトの名無しさん
2006/08/20(日) 23:15:00誰も戻ってきていいとは言っていない
0949デフォルトの名無しさん
2006/08/20(日) 23:44:290950928
2006/08/20(日) 23:45:010951デフォルトの名無しさん
2006/08/21(月) 00:16:09でdoubleの数値を出力するときに、
小数点第2位までしか表示させないようにするにはどのようにすればいいのでしょうか?
0952デフォルトの名無しさん
2006/08/21(月) 00:25:04staticを付けるのと付けないのでは、どう違ってくるんですか?
0953デフォルトの名無しさん
2006/08/21(月) 00:27:590954928
2006/08/21(月) 00:34:290955デフォルトの名無しさん
2006/08/21(月) 01:30:18printfを使う
// これであってるかどうかは知らん
double d = 0.12345;
System.out.printf("%1.2f%n", d);
0956デフォルトの名無しさん
2006/08/21(月) 01:41:59解決しましたー、ありがとうございました
0957デフォルトの名無しさん
2006/08/21(月) 02:35:14それでもいいけど
より汎用的にはNumberFormat
0958デフォルトの名無しさん
2006/08/21(月) 05:18:09s/%n/\n
0959デフォルトの名無しさん
2006/08/21(月) 09:50:58Javaのprintfでは%nを使う。
0960デフォルトの名無しさん
2006/08/21(月) 10:22:28それじゃConverters.getDefaultEncodingName()で取得するエンコーディングは変わらんのよ
0961デフォルトの名無しさん
2006/08/21(月) 12:39:18変わるよ。
System.setProperty("file.encoding", newEncoding) とかやっても反映されないと思うけど。
0962デフォルトの名無しさん
2006/08/21(月) 12:40:300963デフォルトの名無しさん
2006/08/21(月) 13:11:481.4.2_12だと変わらんわ。
1.5.0_08だと変わった。
むぅ、1.5にするわけにはいかんし、どうすればいいのやら・・・
0964デフォルトの名無しさん
2006/08/21(月) 13:45:060965デフォルトの名無しさん
2006/08/21(月) 15:18:13検索する文字列をtoLowerCase()またはtoUpperCase()で統一する以外の方法はある?
0966デフォルトの名無しさん
2006/08/21(月) 15:27:000967デフォルトの名無しさん
2006/08/21(月) 15:50:19大文字・小文字を区別せず部分一致検索を行いたいんだが,
検索する文字列をtoLowerCase()またはtoUpperCase()で統一する以外の方法はある?
0968デフォルトの名無しさん
2006/08/21(月) 16:34:38String regexp = String.sprintf(".*%s.*", quoted); // 部分としてそれを含む正規表現
Pattern pat = Pattern.compile(regexp, Pattern.CASE_INSENSITIVE); // ケース無視
0969デフォルトの名無しさん
2006/08/21(月) 18:46:51String regexp = String.sprintf(".*%s.*", quoted); // 部分としてそれを含む正規表現
これって必要ある?
Matcher#find使えば良いんじゃないの?
0970デフォルトの名無しさん
2006/08/21(月) 18:54:40StreamTokenizerで1行ずつ読み込んだ値を、配列に代入しています。
しかし、通常の配列の場合だとNが事前にわかってないといけなくて、
わざわざ配列サイズを事前に指定するのは面倒です。
一応、素人考えで以下のような解決方法を考えたのですが、
どのように処理するのがスタンダードなのか教えていただけないでしょうか
(1)1度すべての行を読み込んでNを取得した後に、サイズNの配列を用意し、1行目から再読み込み
(2)wcなどの行数を取得するスクリプト、あるいは行数を取得する関数を持ったクラスがある?を事前に読み込んでNを取得
(3)Vector(?)などの可変長配列を用いる
0971デフォルトの名無しさん
2006/08/21(月) 19:13:17あー、findがあった。
最近matchesが全体マッチなのにハマったばかりなのに。
0972デフォルトの名無しさん
2006/08/21(月) 19:59:22(1)と(2)は自前のコードでやるかどうかの違いで2パスであるのは変わらない。
コレクション使った(3)をやれば1パスで済む。
0973デフォルトの名無しさん
2006/08/21(月) 20:02:40一番簡単なのは (3) だね。
仮にメソッドの引数とかで渡す時なんかに配列にする必要があっても
ArrayList でも Vector でも toArray 使えば配列にシャローコピーできるし。
0974デフォルトの名無しさん
2006/08/21(月) 20:31:41↑のをもとにして、自分用に簡単なメタサーチを作りたいんですが、
例えばgoogleだったら
「<form name="f_google" method="GET" action="http://www.google.com/search" Accept-charset="Shift_JIS">
<input type="hidden" name="q" value="">〜省略〜<input type="hidden" name="num" value="20">
</form>」
みたいな検索エンジンごとのソースはどうやって入手すればいいいんでしょうか。
0975デフォルトの名無しさん
2006/08/21(月) 20:58:34スレ違い
0976デフォルトの名無しさん
2006/08/21(月) 23:18:36レスありがとうございます
方向性は間違ってなかったようなので(3)で実装することにします
0977デフォルトの名無しさん
2006/08/22(火) 00:29:58java -jar exsample.jar
このときexsample.jarという文字列を所得したい。
環境 JDK1.4
0978デフォルトの名無しさん
2006/08/22(火) 00:33:37System.out.println(url);
0979デフォルトの名無しさん
2006/08/22(火) 01:06:23ご教示ありがとうございます。
参考にして取得できました。
0980デフォルトの名無しさん
2006/08/22(火) 01:40:19ダウンロードできる場所おしえてください。よろしくお願い思案す。
0981デフォルトの名無しさん
2006/08/22(火) 01:43:18>>1
0982デフォルトの名無しさん
2006/08/22(火) 04:09:13の「args」について、諸君らはどのように呼んでいる?
0983デフォルトの名無しさん
2006/08/22(火) 04:16:280984デフォルトの名無しさん
2006/08/22(火) 04:21:12例えばint ahya;とフィールド宣言すればそのフィールドは他のクラスから複数インスタンスを作って参照出来るけど
sitatic int ahya;と定義すれば複数参照出来ずahya自体が一つしか存在しないって事になるのですか?
0986デフォルトの名無しさん
2006/08/22(火) 04:28:16あーぐ
0987デフォルトの名無しさん
2006/08/22(火) 06:50:21private int a;
public void setX(int x) {
this.x = a;
}
public int getX() {
return a;
}
public void msg() {
System.out.println("This: " + a);
}}
class ThisDemo2 {
public static void main(String[] args) {
This obj = new This();
obj.setX(10);
int x = obj.getX();
obj.msg();
System.out.println("main: " + a);
}}
ThisDemo2.javaという一つのソースファイルに2つのクラスを上記の通り記述しコンパイルすると正常に動作するのですが
This.javaとThisDemo2.javaという2つのファイルに分けて記述するとThisDemo2クラスの最後の出力文のaがEclipse上で×になります。
どのように記述すれば正常にコンパイルできるのでしょうか?
0988987
2006/08/22(火) 06:53:030989デフォルトの名無しさん
2006/08/22(火) 07:03:320990デフォルトの名無しさん
2006/08/22(火) 07:09:08【初心者】Java質問・相談スレッド89【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1156198089/
0991デフォルトの名無しさん
2006/08/22(火) 07:33:10乙彼、2getしたかったけどもうかかれちゃってるよ・・・
0992デフォルトの名無しさん
2006/08/22(火) 11:16:222つクラスを作ってクラスの継承を行わないで、
片方のクラスでもう片方のクラスの内容を表示するのって可能なんですか?
>>1のサイトも見てみたのですが私の欲しい答えが出てこないです・・・(;´Д`)
0993デフォルトの名無しさん
2006/08/22(火) 11:32:33ゲッターメソッド実装すればいいじゃない
0994デフォルトの名無しさん
2006/08/22(火) 11:40:430995デフォルトの名無しさん
2006/08/22(火) 11:40:52コピーしたいメソッドのオブジェクトを作って参照させればいい
0996デフォルトの名無しさん
2006/08/22(火) 11:47:28と入力しても、ナントカカントカが認識されていませんと出て
プログラムを動かすことができません。
どうすれば良いのですか?
0997デフォルトの名無しさん
2006/08/22(火) 11:48:56http://www.wikiroom.com/java/index.php?FAQ#content_1_1
0998デフォルトの名無しさん
2006/08/22(火) 11:49:21ハゲはあっち行ってろ
0999デフォルトの名無しさん
2006/08/22(火) 11:51:37>>995さん 有難う御座います!やってみます!!
>>994さん System.out・・・・みたいな感じで表示できないのかなー?と;;
1000デフォルトの名無しさん
2006/08/22(火) 11:52:1310011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。