1 :
デフォルトの名無しさん :
02/09/07 20:25
2 :
デフォルトの名無しさん :02/09/07 20:26
はろーが表示できません。 やりかたをおしえてください。
3 :
デフォルトの名無しさん :02/09/07 20:28
はろー
また6?
7 :
デフォルトの名無しさん :02/09/07 20:31
>>6 「はろー」が表示できないので、解決するまで6でお願いします。
転職板ではろーわーくが表示できました!
10 :
デフォルトの名無しさん :02/09/07 20:34
っていうか,また6かよ!
(´-`).。oO(テンプレはあらかじめ作っておいた方がイイなぁ… )
12 :
デフォルトの名無しさん :02/09/07 20:39
6とかいて7とよませよう。
っていうか,7で新スレ立ててこっちは削除すっか.
14 :
デフォルトの名無しさん :02/09/07 21:58
>>860 すげー笑わせていただきました。ありがとう。
16 :
デフォルトの名無しさん :02/09/07 23:50
860は?
>>8 System.out.println("はろー");
帰ってきました。ちょっと酔ってます。 前スレは俺のせいで糞スレになってしまってごめんなさい。 おもしろいかと思ったんですが、読み返して見ると微妙ですね。 ではほんとにさようなら・・・
まぁJavaスレの情緒レベルがわかっておもしろかったよ、個人的に。 もう来ないでいいけど。
Swingについて質問があるんですが・・・ JMenuBarにセットしたJMenuItemに「Ctrl-C」というようなショートカットキー を登録させたいのですがどうすればいいんでしょうか? ちなみに「ファイル(F)」のような「Alt-F」はできます。
JMenuItem#setAccelerator(KeyStroke)かな。
もう一つ質問していいですか? 以下の内容でこれだけは覚えておかないと馬鹿にされるのはどれでしょうか? 1.スレッド 2.ネットワーク 3.JavaBeans 4.国際化 5.リフレクション 6.アプレット 7.RMI 8.JSP・サーブレット 9.XML 10.Swing 11.File.IO 12.Graphics2D,3D
25 :
デフォルトの名無しさん :02/09/08 02:04
国際化
>23 ありがとうございます。早速試してみます
構造化BASIC = Java
>>27 その程度の認識しかできない理解の仕方してるんだろうね、可哀想に。
いや、動作環境にOSが必要と言う意味ではBASIC以下であろう。
ちぇ、6のままか。
お願いですから860はもうこないで下さい
Java Appletでflash クローンみたいなの 作ろう と思っています すでに ありますか? 絵本 を 作れる てのは あったのですが
しかし、Javaをちゃちなおもちゃだと思いたがってる奴って、 どんな仕事してるのよ… VMの上で動くのも、OSの上で動くのも似たようなもんジャン。
コマンドプロソプトで C:\WINDOWS> という部分を C:> に変えたいのですがどうしたらよいですか?
promptコマンドを駆使しろ
cmd.exe のコマンド プロンプトを変更します。 PROMPT [文字列] 文字列 新しいコマンド プロンプトを指定します。 PROMPT には通常の文字と次に示す特殊コードを使用できます: $A & (アンパサンド) $B | (パイプ) $C ( (左かっこ) $D 現在の日付 $E エスケープ コード (ASCII コードの 27) $F ) (右かっこ) $G > (不等号 (より大)) $H バックスペース (直前の文字を削除します) $L < (不等号 (より小)) $N 現在のドライブ $P 現在のドライブとパス $Q = (等号) $S (空白) $T 現在の時刻 $V Windows XP のバージョン番号 $_ キャリッジ リターンとラインフィード $$ $ (ドル記号) コマンド拡張機能を有効にすると、PROMPT コマンドは、次の追加の書式 文字をサポートするようになります:
コマンド拡張機能を有効にすると、PROMPT コマンドは、次の追加の書式 文字をサポートするようになります: $+ PUSHD ディレクトリ スタックの深さに応じて、0 個以上のプラス 記号 (+) を指定します。1 個のプラス記号が、プッシュされた 1 レベルを表します。 $M 現在のドライブ文字に関連付けられているリモート名を表示します。 現在のドライブがネットワーク ドライブでない場合は、空の文字列 を表示します。
・・・・e?
41 :
デフォルトの名無しさん :02/09/08 08:42
43 :
デフォルトの名無しさん :02/09/08 11:09
int型の変数をString型の変数に変えるにはどうしたらいいんですか?
45 :
デフォルトの名無しさん :02/09/08 11:17
>>43 class Intstring {
public static void main(String[] args){
int i = 1;
String s = "" + i;
System.out.println(s);
}
}
>>46 Integer.toString(i)は邪道ですか?
String.valueOf(i) というのもあるな。 "" + i の方がタイプ量が少ないからこっち使っちゃうけど。
50 :
デフォルトの名無しさん :02/09/08 13:15
javaで自分がいるパス(usr/local/...)を表示させたいのですが、うまく行きません。 下記のプログラムを書いてみたのですがエラーが出ます。 もしやり方を知っている方がいましたら教えてください。 import java.io.*; public class test { public void main(String args[]){ test test = new test(); File file = new File(test); String x =file.getPath(); System.out.println(x); } }
51 :
デフォルトの名無しさん :02/09/08 13:18
>>35 面白そうだからレスするけど
フォルダとかディレクトリとかご存知?
System.getProperty("user.dir")
プロパティ一覧 System.getProperties().list( System.out );
>>51 知りません。
フォルダってファイル入れておく場所じゃないんですか?
56 :
デフォルトの名無しさん :02/09/08 14:45
>>52 >>53 ありがとうございます
無事できました
>>35 cd ..
DOSコマンドとUNIXコマンドは本を買うかわかりやすいHPを
ブックマークしておくかしないと意外とてこずるよ
58 :
デフォルトの名無しさん :02/09/08 15:35
ロータスのBeanMachine1.1てのを持ってるんですが 当時はとても遅くて使う気にならなかったのですが 新しいバージョンとか出てるのでしょうか?
59 :
デフォルトの名無しさん :02/09/08 16:55
javaとjavaアプレットの区別が付かない厨房です。 スミマセン教えてください。
60 :
デフォルトの名無しさん :02/09/08 17:02
>>59 ですが、ゲーム制作にイイ言語は今のところ何なのでしょうか?
ホントに教えて君&厨房でスマソm(_ _)m
Java は Java。 Java でのアプリの作り方と言うか、作りそのものの種類にいくつかあって、 ・Java アプリケーション ・Java アプレット ・Java サーブレット とかあるの。 開発言語は当然全部 Java。
>>61-62 ようやく理解できますたありが㌧。でもってホントに厨房でスマソ。
staticな変数やメソッドを持つクラスってどうして インスタンスが作れないのですか? インスタンス自体がstaticな存在だからですか?
public class TestClass { public static void testFunc() { System.out.println(TestClass.TEST_STRING); } public static String TEST_STRING = "omaemona-"; public static void main(String[] args) { TestClass t = new TestClass(); t.testFunc(); } } もちろん可能。
68 :
デフォルトの名無しさん :02/09/08 19:48
JavaでIFFファイルを読み込むためのライブラリって何処かに無いでしょうか?
70 :
デフォルトの名無しさん :02/09/08 19:59
プラグインの追加を柔軟に行えるアプリケーションを作ろうと思っているんですけど、 参考になるサイトはありますか?
>69 ごめんなさい。せっかくレスつけて頂いたのですが英語が読めません。 どこか日本語で解説されてる場所はないでしょうか?
>>71 甘えんな、ヴォケが。…と言いたいところだな。
JavaでIFF使おうと思ったら、自分で書くかこれ使うしかないっぽい。Javaが主にサーバサイドで使われてるせいか、
日本じゃ使ってる人はあんまりいないみたいだね。だから日本語の資料はまったく(と言っていいほど)ない。
俺も結構探してみたけど見付けれなかった。
どうせ仕事か学校のレポートで使うんだろう?だったら英語勉強して誰も触ってないこのAPIの勉強をしてみようとは
思わんか?それができないならC++でも使ったほうがいい。IFFを扱うライブラリもあったように思う。
Javaで、に拘るなら日本語に拘るな。ただIFFさえ読めればいいっていうならJavaに拘るな。新しいコトを勉強するって
いうことはそんなに生優しい道じゃないぞ。
>>74 >自分で書くかこれ使うしかないっぽい。
説明して下さい。
>>75 もうね、(略。
自分でスクラッチで書くか、
>>69 のリンク先にあるAPIを使うか、だ。
スクラッチで書くんならIFFのフォーマットぐらい自分で調べろ。javax.imageioあたり使えばイイはず。
>>76 ああ、同意。
HTTP使いたいんですがどうすれば良いんですか?
便利なコンポーネントはありますか?出来るだけ簡単で日本語、フリーのものが良いです。
とか言われるとどつき倒したくなるわ。
>>77 漏れはてっきり
>>68 かと…別人だったのね(笑)
勉強はしたいけど努力はしたくないって奴が多すぎだなぁ…。
俺も学生だけど、うちの回りの人間は自己を向上することに対してもっと貪欲なんだけど。
>>78 うちの学校にはあんまいない気がするなぁ。
少なくとも俺は、こんなところで問題解決しようとは思わない。
まともな答え出ることまれだし。はっきり言って迷惑だろうし。
2ch見る->おもしろそうな技術の話してる->わからない->検索->おもしろい->本でも読む
って感じだな。
きっかけを得るためだけに使ってるんだよな。結局。
やる気がある奴は良い参考書とか聞きまくるより適当に自分で良さげな本買ってきて勉強し始めてるだろうと。
そのレベルでここに来る人のやる気を疑問に思うことが良くある。
>>79 あー、俺もそんな使い方してる気がするな。確かに2chで聞いてみようって発想は出てこない…。
ま、そういうコトでJIU APIのドキュメントでも読んでみよう。
>>81 ぺらぺらと自分の実力をまくし立てないところを見ると自信ないんだな。
>>81 教えてもらうつもりなんだろうよ。悪びれもしないだろうね。
天然馬鹿は御しがたし。
>>73 人のことなんてどうでもいいでしょ?自分で自分が欲しい資料を読まなきゃ意味がない。
それができないならjavaもやめたほうがいい。
話はそれだけだ。
>>85 自分は人に説教するほどの実力者ではないと自覚しているわけか。
じゃあなんでそんなことするのさ?
89 :
デフォルトの名無しさん :02/09/08 23:38
Write once , debug anywhere なんて悪口があるけど、実際のところ、 どの程度環境に振られるのかな? Windowsに最初から入ってるVMって ずいぶんバージョンの古い仕様みたいだけど。
>>86 > じゃあなんでそんなことするのさ?
どんなこと?
>>89 デバッグ用にJDK入れた時点でお望みのバージョンになると思われます。
>>91 JDKを入れた途端に、動かなくなるゲームサイトがあるけどね。
>>93 なるほど、そういうこともあるんだね。今ちょっと
Oracle9iに入ってるjavaのバージョンみてみたら、
JDK-1.2.2_007と出た。これも結構古いね。
クライアントサイドで動くプログラム作るときは、
動作確認はいろいろな環境でキチンとやらないと
駄目みたいだね。でないと、93が紹介してくれた
糞サイトみたいなものを作ってしまう羽目になる。
今からJavaでクライアントサイドアプリ作るなら、よほど小さいもの以外は アプレットでなくてJavaWebStartにしようよ。1.4使えるし
JWS+SWTって可能?
>>98 あれって個人でも使えるの?
具体的には、プロバイダのおまけみたいなサーバにデータを
アップロードするだけでJavaWebStart対応できるの?
以前ドキュメントを読んでみた限りでは、自分で多少
鯖設定変えないとダメだったように感じた事は覚えてるんだけど、詳細は覚えてない。
>>99 JNIで使用するライブラリを配布バイナリに同梱すれば、いけるかも。
>>100 JWSってそんなアホな設計してるのか?普及しないじゃないか(ワラ
HTTPの上でやってるんじゃないの?
そいや、appletだと適切な設定すればJRE入ってなくても flashみたいに勝手にpluginとJRE拾ってきてくれるみたいだけど、 JWSもそうなの?
>>100 Javaアプレットだって鯖設定変えないとダメだったように感じるが?
>>103 JWSがインスコされている必要があるでつ。
106 :
デフォルトの名無しさん :02/09/09 09:46
JXTAに興味あるのですが、JXTAを使ったアプリケーションって すでにありますか? JXTAネタ、知ってることがあったら教えてください。
JAVA初心者なんですが、質問よろしいですか? URLクラスを使って簡易ブラウザを作ったんですけど、 普通のサイトは見れるのにGoogleに接続した瞬間に Unknown Sourceのエラーがたくさんでます。 これってどうゆうことですかね?
DOSプロンプトで C:\WINDOWS> をC:>に換えたいのですよ! 単刀直入におながいします!
113 :
デフォルトの名無しさん :02/09/09 11:05
サーブレットでBufferedOutputStream,BufferedInputStreamを使用して、 ブラウザからファイルのダウンロード処理を作成しているのですが・・・ ファイルの保存ダイアログボックスでキャンセルを押すと、IOExceptionエラーになってしまいます どなたか、お助け下さい。 よろしくお願い致します
114 :
デフォルトの名無しさん :02/09/09 11:44
>>113 IOExceptionエラーに発生した該当ソースの行とスタックトレースでてないのか?
115 :
デフォルトの名無しさん :02/09/09 12:15
>>114 ご返答ありがとうございます。
ソースは以下のとおりです。
スタックトレース?すみません。勉強不足なもので・・・調べてみます
BufferedOutputStream out_buf = new BufferedOutputStream(response.getOutputStream());
try {
BufferedInputStream in_buf = new BufferedInputStream(new FileInputStream(FILE_PATH));
int c;
while ((c = in_buf.read()) != -1) {
out_buf.write(c); ←ここでエラー
}
in_buf.close();
} catch (Exception e) {
}
out_buf.flush();
out_buf.close();
116 :
デフォルトの名無しさん :02/09/09 12:16
Apiドキュメント BufferedOutputStream クラスのスーパークラス OutputStreamクラスのwriteメソッド 例外: IOException - 入出力エラーが発生した場合。特に、出力ストリームが閉じられている場合に IOException がスローされることがある
わかりません・・・。 Googleの検索文をURLに入れてアクセスすると ノットファウンドがでるんですけど。 何ででしょう?
>>117 まさしく、この状態です
保存ダイアログでキャンセルされてしまうと、出力ストリームが閉じてしまうのかな
これを回避する方法って何のでしょうか?
>>118 意味分からん。
>>119 正しい解決法かどうか分からんが、例外キャッチして後処理する方がイイんでないか?
本来ダウンロードできるはずのファイルを途中でブチ切ったんだから、尻切れになってるファイルは
消した方がいいし、「切るなや、ゴルァ!」って伝えたいコトもあるだろ。
>>118 出来るだけ小さくしたソースを出してごらん。
URLが間違っている罠
CGIのあるページだからかも・・・。
>>123 CGIだろうがHTMLだろうがブラウザから見れば一緒だと思われ。
チャンクとか知ってる?
>>124 まあこの場合はHttpConnectionが隠蔽してくれるはずだから関係ないと思うけど。
なんで誰もtelnetで80番ポート叩いてみろよ,って言わないの?
129 :
デフォルトの名無しさん :02/09/09 16:53
クラスを実行して、その結果を配列に入れたいんですが、 実行するまで返ってくるものの大きさはわからない場合、配列の生成はどのようにするのが スマートなんでしょうか。 現在は、int result = new int[65535]; みたいに、 無駄に大きなモノを用意して、収まっても余分にメモリ使うし溢れたら知りません状態なのですが・・・。
Vector・・・かなぁ
>129 ベクター使えよ、あとそれと int result = new int[65535]; じゃなく int[] result = new int[65535]; だろ
ありがとう、可変長にできたんですね。リファレンス探ってみます。
>>129 Vectorってのは、
Object[]の可変長バージョンにあたるから、
「new Integer(..)」って包めば一応使えるけど、
int[]と比べるとかなり無駄が多いな。
可変長の配列程度なら、自作してもいいと思う。
「元の配列があふれたら、倍のサイズの配列に内容を写して切り替える」
を繰り返せばいいだけだから。
JtextFieldを整数専用にしたいのですができますか? いちいちparseIntは面倒で・・・
135 :
デフォルトの名無しさん :02/09/09 18:14
tomcat3ではsystem.outが出力されていたのに、tomcat4に変更したら、出力されなくなってしまいました。 どこか設定が違ってるのかな?
136 :
Java servlet勉強中 :02/09/09 18:16
質問よいでしょうか? jspから入力した、String型の日付をサーブレットでDate型にしたいのですが… BIRTHDAY はString型です。 Date ddt = DateFormat.parse(BIRTHDAY); ↑のように書いたところ、 エラー #: 308 : static でない method parse(java.lang.String) は static context から参照できません 行 85, 列 26 ↑のようなエラーが出てしまいました… 使用するメソッドが間違っているのでしょうか? どなたか、教えてくださいm(__)m
http://pc3.2ch.net/test/read.cgi/tech/1030606700/l50 765 :Java servlet勉強中 :02/09/09 18:06
jspから入力した、String型の日付をサーブレットでDate型にしたいのですが…
BIRTHDAY はString型です。
Date ddt = DateFormat.parse(BIRTHDAY);
↑のように書いたところ、
エラー #: 308 : static でない method parse(java.lang.String) は static context から参照できません 行 85, 列 26
↑のようなエラーが出てしまいました…
使用するメソッドが間違っているのでしょうか?
どなたか、教えてくださいm(__)m
String s = "2002年10月8日"; DateFormat df = new SimpleDateFormat("yyyy年M月d日"); Date d = df.parse(s); java.util.logging.Logger.getAnonymousLogger().info(d.toString());
Logger.getAnonymousLogger().info(new SimpleDateFormat("yyyy/MM/dd").format(new SimpleDateFormat("yyyy年M月d日").parse("2002年10月8日")));
>>134 いちいちInteger#parseInt()するべき.
もしくはユーザがキー打つ度に数字以外のキーを打っていないかチェックするか….
# それでもString->intに変換するときにどの道parseInt使うし,実装する手間がある.
142 :
デフォルトの名無しさん :02/09/09 19:56
JAVAで動画像処理するのにmpegを利用したいのですが、書籍などは静止画像処理はあれど動画像処理で参考になるものが見つかりませんでした。 もし参考になる書籍やHPがありましたら助言をお願いします。
145 :
デフォルトの名無しさん :02/09/09 20:39
>>143 ありがとうございます!!さっそく目を通してみます
146 :
デフォルトの名無しさん :02/09/09 21:04
Javaでjpegを読み込むのってどうやったら良いのですか?
148 :
デフォルトの名無しさん :02/09/09 21:08
レスありがとうございます. 具体的にどのようなメソッドを利用したらよいのでしょうか? 初心者過ぎてすいません.
>>143 JMF 使えば、カメラから取り込んで、1フレームずつ切り出して加工だってできる
151 :
デフォルトの名無しさん :02/09/09 21:27
ありがとうございます. 参考にしてみます.
152 :
ふれあいケツ毛工房。 :02/09/09 21:34
//ピースイメージ生成 //-------------------- for (i=24;i>=0;i--) { image[i]=Image.createImage(20,20); image[i].getGraphics().drawImage(imgPic, -20*(i%5),-20*(i/5), Graphics.LEFT|Graphics.TOP); } 初心者でも分かるように教えてください。 答えてくれた方に1000円あげます。
153 :
ふれあいケツ毛工房。 :02/09/09 21:37
//ピースデータ
//--------------------
for (i=24;i>=0;i--) data[i]=i;
int[] dir={UP,DOWN,LEFT,RIGHT};
for (i=99;i>=0;i--) {
controlPanel(dir[(rand.nextInt()>
>>1 )%4]);
}
これもお願いします。
あ、それ初心者無視のJavaスレにあった奴じゃん。誰も答えなかったんだよね(藁
155 :
ふれあいケツ毛工房。 :02/09/09 21:38
//イメージ //-------------------- for (i=24;i>=0;i--) { if (data[i]!=24) { graOff.drawImage(image[data[i]], (getWidth() -100)/2+20*(i%5), (getHeight()-100)/2+20*(i/5), g.LEFT|g.TOP); } ついでにこれも。
じゃばだー
何がどう分からないのか、熟練者でも分かるように教えてください。 分かるように教えてくれた方に1000円あげます。 >答えてくれた方に1000円あげます。 答えただけなら漏れも1000円貰える計算になるわけだが…。
158 :
デフォルトの名無しさん :02/09/10 05:25
インスタンスを入れる変数に配列を使うことはできるんですか?
>>158 インスタンスに配列使えるよ。ってかやってみろよ。
160 :
デフォルトの名無しさん :02/09/10 06:11
Color col[]; col=new Color[99]; for (int a1=1;a1<100;a1++) { Color col[a1][a2]=new Color(0,0,a1); } こうやったのですが無理でした
161 :
デフォルトの名無しさん :02/09/10 07:10
163 :
デフォルトの名無しさん :02/09/10 07:48
>>162 それは分かってますが、調べても見つからなかったんです。
どこをどうしたらいいか教えてもらえませんか?
>>160 > col=new Color[99];
> for (int a1=1;a1<100;a1++) {
問1:「new Color[99]」で生成した配列の添字の範囲は?
a. 1~99
b. 0~99
c. 0~98
> Color col[a1][a2]=new Color(0,0,a1);
問2:「int x;」で宣言された変数xに、値123を代入する手続きはどれ?
a. x = 123;
b. int x = 123;
c. int x[a2] = 123;
166 :
デフォルトの名無しさん :02/09/10 08:38
javaを入力できる環境にするにはJ2SEいうのを 淫すとーるするらしいけど、 ヴァージョンとかあるの? あるなら一番あたらしいのを入れたいと思われ。
>>165 ネタだと思うが、わかってんなら直せやヴォケ
Color col[]; col=new Color[99]; for (int a1=0;a1<99;a1++) { col[a1][a2]=new Color(0,0,a1); } すみません、こうでしたね。 私が困ってるのは3行目の Color(0,0,a1) というコンストラクタを書くとエラーが出て困ってます。 コンストラクタじゃだめなんですか?
見た感じ2次元配列になってないような気がするけど これは私が初心者だから?
170 :
デフォルトの名無しさん :02/09/10 09:24
>>169 Color col[];
col=new Color[99];
for (int a1=0;a1<99;a1++) {
col[a1]=new Color(0,0,a1);
}
すみません、こうでしたね。
>170 実際にやってみたけど何もエラーにならなかったけど・・・ エラーメッセージはなんて出るの?
173 :
デフォルトの名無しさん :02/09/10 10:12
>>172 成功しました。かなりぼけてました。ありがとうございました。
174 :
デフォルトの名無しさん :02/09/10 10:19
>>168 > 私が困ってるのは3行目の
> for (int a1=0;a1<99;a1++) {
177 :
デフォルトの名無しさん :02/09/10 10:44
import com.nttdocomo.ui.*; public class LabelDemo extends IApplication{ public void start(){ Panel panel=new Panel(); for(int i=1;i<=2;i++){ //テキスト表示位置左 Label leftLabel=new Label ("左寄せ",Label.LEFT); leftLabel.setSize(96,15); //テキスト表示位置中央 Label centerLabel=new Label("中央寄せ",Label.CENTER); centerLabel.setSize(96,15); //テキスト表示位置右 Label rightLabel=new Label("右寄せ"); rightLabel.setSize(96,15); rightLabel.setAlignment(Label.RIGHT); } panel.add(leftLabel); panel.add(centerLabel); panel.add(rightLabel); Display.setCurrent(panel); } } どうすればいいんですか?
179 :
デフォルトの名無しさん :02/09/10 10:47
IApplicationって、「interface Application」じゃなくて 「i-Application」なのか。。
>>181 i-mode Applicationだと思われ。
それを縮めてiAppli
>>177 panel.add(...)がループから外れてるよーに見えるが、
それでコンパイルできるのかしら
>>177 つーか、そもそも何でforループしてんの?
186 :
デフォルトの名無しさん :02/09/10 11:05
185 :デフォルトの名無しさん :02/09/10 11:03
>>184 forはループのための命令です。
こういうかんじか。
for (int i = 1; i <= 2; i++) {
String message = "
>>184 forはループのための命令です。";
}
System.out.println (message);
>>170 亀レスだけど array.length 使えよ…。
189 :
java厨 :02/09/10 14:16
すみません、 JNI使って アプレットからWindowsAPI使える方法を教えてください。 セキュリティの設定で解決できそうだと思うのですが~ 具体的には java.security.AccessControlException:access denied~ が発生しないで実行できるようになればと・・・
191 :
デフォルトの名無しさん :02/09/10 14:30
インターネットオプションのプロキシの設定とか取ってくる方法はありますか?
192 :
デフォルトの名無しさん :02/09/10 14:33
タブで別れている数値データファイルがあるとき配列への読み込み方ってどうやったらいいんですか? 例えば 1 1 2 4 1 1 5 1 というファイルがあったとき2次元配列に読み込みたいのですが・・・ 簡単な質問ですいません.
>192 やろうとしていることは「簡単」ではないのだが、 質問の仕方が厨房。 何がわからないのかもっと絞れ。 とりあえず、 java.io.BufferedReader.readLine() java.util.StringTokenizer java.lang.Integer.parseInt() あたりを理解して出直してこい。 java.util.Vector もあった方がいいかな。
194 :
デフォルトの名無しさん :02/09/10 15:58
javaインストールしたけど ファイルがいっぱいあってわからん。 どうすりゃいいの?
HTMLやXMLを記述することをプログラミングといわないの は何故ですか!?
HTMLやXMLはデータ記述言語で、 プログラミング言語でないから。
なんでプログラミングじゃないんですか??
>>198 プログラミングって何(何をすること)ですか?
>>201 フォンノイマン型コンピュータはプログラムもデータとして扱われます。
>>202 違う。 データとプログラムの区別なくメモリに展開されるだけ。
>>202 やっぱり出たか。その場合も
「プログラムはデータ」であって、
「データはプログラム」ではない。
FQはHTMLをプログラミング言語だと言ってのけます。
読めなかった!!!!!!!
208 :
デフォルトの名無しさん :02/09/10 16:23
メールボムってどこで入手すんの?
難しくて何言ってんのかわかんない・・・・
もしかして 発破=860 ??????
860って何??
なんかhtmlは繰り返し(forとかwhileとか)がないから プログラム言語ではない。みたいなことをみたことがあります。
xsltはプログラミング言語?
SQLもプログラミング言語とは呼びたくない。
215 :
デフォルトの名無しさん :02/09/10 17:01
216 :
デフォルトの名無しさん :02/09/10 17:02
>>212 HTMLは言語の一種ではあるが「プログラム」ではないから
プログラミング言語ではない。
純粋なSQLもそれ単独ではプログラムにならないので
プログラミング言語ではない。
(SQLPlusやTransact-SQLはプログラム言語)
>>212 >>216 そんなことに結論をみいだしたところで、なにもプログラムは組めないぞ。
試験でもやるのなら別だけど・・・。
でもHTMLをプログラミング言語だと本気で思っていたらかなり恥ずかしい。
こういう質問はダメだったんですか?
>>212 HTMLはHyperTextMarkupLanguage。
その名の通り文書を整形したりするだけの限られたSGMLアプリ。
JPopupMenuはマウスリリースイベントで使う者なんだけど、 これってミギクリックしか対応しないの? 左クリックで出したいのですが・・・
リソースバンドルってのを使って拡張子がpropertiesのテキストファイルから 値をとりだすようにしたんだけど、日本語が入ってると文字化けしちゃいました。 で、ネットで調べてみたらnative2asciiをつかって変換しなくちゃならない ってのがわかり、文字化けは解決しました。 しかしそこでふと思いました。 そもそもテキストファイルに切り出すようにしたのは値を変更したいときに ソース書き換えてコンパイルし直すのが面倒だからでした。 それなのに、native2asciiでいちいち変換しなくちゃならないんじゃ コンパイルし直すのと大差なくてやっぱり面倒くさいです。 結局じぶんでファイル(形式はシフトJIS!とか決めてしまって)を読み出すのを 作り込むしかないんでしょうか。
>>224 文字コード変換を行うFilterInputStreamのサブクラスを作成する。
Javaについての素朴な質問です。 現在JLabelへアイコンを貼り付ける作業をしているのですが 条件によってアイコンを切り替えたいとおもいます。 そこで質問なんですが、切り替えする場合、 そのJLabelにもともとはってあるIconImageを無視してそのまま setIcon()で新しいIconImageに切り替えてもいいんでしょうか? そうするともともとのIconImageはガーページされるんでしょうか? よろしくおねがいします
228 :
デフォルトの名無しさん :02/09/11 12:40
実行するプログラムの引数が、コンソールプログラムだったらStringクラスですよね。 で、このときファイルパスとか分かるわけないのにどうしてプログラムは目的のファイルがきちんと分かるのでしょう? ただ単に実行しているプログラムのあるディレクトリを探索して合致するのを持ってきているだけですか?
>>227 ゴミ収集の事をゴミとは言わない
×ガーページ
○ガーベッジコレクション
230 :
デフォルトの名無しさん :02/09/11 13:25
ファイルの記載内容をいじって同じファイルに上書きするプログラムを作っているんですが、BufferedReaderで読んでいるときにBufferedWriterで書き出すことができないので困っています。 一時ファイルをつくってそのファイルの内容をコピーしようにも、コピーするようなメソッドはFileクラスには見当たらないですし・・・
>>230 一時ファイルに出力して正常終了できたら
元ファイル→バックアップファイル
一時ファイル→元ファイルと同じファイル名
にリネームするようにすれ。
異常終了した場合元のファイルが無傷ですむ。
>>227 -------------------------------------------------------------
import javax.swing.*; import java.awt.*; import java.io.*;
public class IconWatcher implements Icon {
final Icon icon;
public IconWatcher (Icon icon) { this.icon = icon; }
public int getIconHeight () { return icon.getIconHeight (); }
public int getIconWidth () { return icon.getIconWidth (); }
public void paintIcon (Component c, Graphics g, int x, int y) { icon.paintIcon (c, g, x, y); }
protected void finalize () throws Throwable { System.err.println ("finalized: "+ this); }
public static void main (String[] args) throws Exception {
JLabel label = new JLabel ();
label.setIcon (new IconWatcher (new javax.swing.plaf.metal.MetalCheckBoxIcon ()));
label.setIcon (new javax.swing.plaf.metal.MetalComboBoxIcon ());
System.gc ();
System.out.print ("enter ->");
BufferedReader d = new BufferedReader (new InputStreamReader (System.in));
d.readLine ();
}
}
-------------------------------------------------------------
finalized: IconWatcher@786e64
enter ->
-------------------------------------------------------------
233 :
デフォルトの名無しさん :02/09/11 14:31
研究でJava言語でプログラムを書かなければならないのですが、 プログラムを書くのにオススメなエディタなどあれば教えて頂けないでしょうか? ちなみに現在はMKEditorを使っています。 タブエディタなので複数のソースを編集するのには便利ですが、 もっといいものがあるのではないかと思って探してみたんですが、 コレというものが見つからないので・・・
俺はxyzzy+JavaTinyConsoleを使ってるが、 諸般の事情により素人にはおすすめできない
ところで、Java言語ってゆーひとたちは COBOL言語、Pascal言語、C++言語、 BASIC言語とか言ったりするのだろうか?
>>232 ファイナライズ使えば確認できることをしらなかったです。
ありがとうござます
>>235 「言語」つけるとなんかアホっぽいな(w
「Pascal言語」「C++言語」はアリだろう。 「COBOL言語」はムリ。 「BASIC言語」は微妙。
C#言語
「Pascal言語」も微妙じゃない? 「~言語」の「~」の部分が長いのは「言語」をつけずに言うと思う。
JTableで質問があります。 JTable.getModel()でTableModelを得ようと思うのですが DefaultTableModel usermodel; JTable usertable(); ・ ・ ・ usermodel=(DefaultTableModel)usertable.getModel(); 上記の内容でコンパイルすると 「推奨されないAPIを仕様またはオーバーライドしています」 と警告されてしまいます。問題なく動くのですがちと不安です・・・。 回避できる良い方法は無いのでしょうか?
243 :
デフォルトの名無しさん :02/09/11 16:06
>234 xyzzyって機能がすごい一杯ついてますね。 たしかに便利そうなのですが、 素人なのでこんなに機能がテンコ盛りのソフトは使いこなせない・・・ コマタ・・・
>>242 JTable の getModel() は deprecated じゃないから、
>「推奨されないAPIを仕様またはオーバーライドしています」
ってのは別の箇所だと思うけど。
ところで、 Java で > JTable usertable(); って出来たっけか?
>>241 COBOLは何々language、BASICは何々codeだけど、PascalはPascal。。
JFileChooserクラスのsetFileFilterメソッドについて質問があります。 JFileChooseを使用してファイルダイアログを表示するさい 特定の拡張子だけを選択できるようにするためにFileFilterを使用しています。 FileFilterのクラスはdemoにあるExampleFileFilterクラスを利用しています。 ここで”特定の拡張子”だけを表示させたいのですが ファイルダイアログのファイルタイプを見ると”全てのファイル”が選択できてしまう為 ”特定の拡張子”だけ見えるファイルダイアログを表示させる事ができません。 ファイルタイプを見ると”全てのファイル”を選択できないようにする方法はないでしょうか?
>>248 日本語が狂ってないか?
>ファイルタイプを見ると”全てのファイル”を選択できないようにする方法はないでしょうか?
ファイルタイプのコンボボックスを開いても”全てのファイル”を選択できない、
という状態にする方法はないでしょうか?
ってこと?
いや、 「ファイルタイプを<見ても>”全てのファイル”を選択できないようにする」 の方がいいか
>249 確かに日本語めちゃめちゃでした。すいません。さらっと読み返した程度でバグに気づきませんでした^^; 正しくは >250 が、お聞きしたかった質問内容でした。 >251 setAcceptAllFileFilterUsed(false); でうまくいきました! ありがとうございました。
抽象的な質問で申し訳ないんですが・・・。 バイトコードが一つあって、それの実行中に設計外の他のクラスを読ませる・・・例えば 本体があって、プラグインとなるコードを用意して本体の実行中に指定すれば、 新しい関数が使える!(もちろん引数と返り値はあわせておく)、みたいなことは Javaで可能なのでしょうか?
JavaアプリケーションにWindowsからファイルをDnDできる事はわかったんだけど Javaアップレットでも同じ事って出来るの? 俺様ただいまアップレットにファイルをDnDしようとすると (IEがイベント拾ってるのか?)ファイルを開こうとしる IEのダイアログが出てしまって困り中。
>>253 ClassLoader#forName("class-name").newInstance()
Bean#instantiate(class-loader, "bean-name")
258 :
デフォルトの名無しさん :02/09/12 00:51
String s = "123"と String s = new String("123")はどう違うんですか?
String s1 = "123"; String s2 = "123"; String s3 = "123"; String s4 = new String( "123" ); とかやって s1 ~ s4 を equals ではなく == で比較してみよー
イメージのわかない人間には無駄な説明じゃねーの
String a = "123"; String b = "123"; String c = new String("123"); 評価式 a == b ---> true 評価式 a == c ---> false 評価式 a.equals(b) ---> true 評価式 a.equals(c) ---> true 評価式 a == c.intern() ---> true
new String (...)すると、ユニークなインスタンスであることを 保障できるわけだな。それだけか
/** * Initializes a newly created <code>String</code> object so that it * represents the same sequence of characters as the argument; in other * words, the newly created string is a copy of the argument string. Unless * an explicit copy of <code>original</code> is needed, use of this * constructor is unnecessary since Strings are immutable. * * @param original a <code>String</code>. * @throws NullPointerException * if <code>original</code> is <code>null</code> */ public String(String original) { this.count = original.count; if (original.value.length > this.count) { // The array representing the String is bigger than the new // String itself. Perhaps this constructor is being called // in order to trim the baggage, so make a copy of the array. this.value = new char[this.count]; System.arraycopy(original.value, original.offset, this.value, 0, this.count); } else { // The array representing the String is the same // size as the String, so no point in making a copy. this.value = original.value; } }
どっちでもいいってことですか?
>>264 状況によるのでは?
オブジェクト生成のコストを削減しようとしたら、cについても
String c = "123";
のほうが良いと思われる。
267 :
デフォルトの名無しさん :02/09/12 01:11
通常の利用では不要、というか、インスタンスを増やすのは害でしかないぞ。
馬鹿な人間は String a = new String("123"); String b = new String("123"); String c = new String("123"); とやってくれ。 String d = new String( new String("1") + new String("2") + new String("3") ); でもイイと思う。
>>269 それでも気が付かない奴はいると思われ.
某 I のフレームワークがさ、そこかしこで public String getHogeHoge(){ … // ○○なら空文字を返す return new String(); } とかやりまくってるわけよ。そんなに細かいオブジェクト作りまくったら GC の Sweep に 5 秒もかかって当然だっつーの。「アプリでメモリリークがないか確認 してください」なんて筋弛緩剤並みのメールよこすなよ。トホホ...
細粒度で短命なオブジェクトの乱発ってのは、プロトタイプ段階までか。 しかし一度それに依存したインターフェイスを設計すると、 チューニングに伴い大幅な設計変更を余儀なくされる罠?
Swingアプリを作成しているんですが質問があります。 よく市販ソフトを立ち上げてる最中(初期化中)にそのソフトのタイトルイメージ が表示されるものがほとんどですよね。今、それを再現しようと思っているのですが 一体どのようにしてやるのでしょうか? コンストラクタでタイトルイメージ表示用のJDialogを表示させようとすると OutOfMemoryが出てしまいます・・・ご伝授おねがいします
> コンストラクタで なぜ
懐かしいデフラグの AA 見つけたので蛇足ながら改造して説明 (っていうかこの AA 使いたかっただけだけど)。 ∧_∧ ( ´∀`) ( ) ■■□■■□■_□■□ ∧_∧ ( ´∀`) ( つ□) ■■_■■□■_□■□ ∧_∧ ( ´∀`) ( つ□つ□ ■■_■■_■_□■□ ∧_∧ ( ´∀`) ( つ つ / 消 ■■_■■_■__■_ □□□…‥ ─ /' ヽ\ 滅 ギュッ ∧_∧ (´∀` ) ≡≡ ■■■■■⊂ )
某 I の JDK 1.2 GC はこんなことやってるんだけど (Mark & Sweep, Compact) 、
■や□の連続ブロックが細かくなればなるほど、多くなればなるほどフラグメント
ができまくって時間がかかるのは明白。しかもサーバサイドなんで JVM に割り
当てた領域 512M とか 1.2G とかいう全体に渡ってやるから半端じゃない (その間
全処理が停止する)。1.3 になって一気に全部はやらなくなったけど。
同じ構成、同じ開発者で別フレームワーク使ったプロジェクトの GC が
0.6 秒平均だというのに、何かおかしいと思わんのかな。
>>272 大抵 Singleton + Factory や、やばそうならインスタンスプール作ったり
するね。っていうか return new String() なんて問題外なことやってなきゃ
ほとんどの場合そんなにクリティカルにヒットしないかも。
ごめん、ちょっとコーフンしすぎて大きいの貼っちゃった (藁 でもフロア内 200 人近い全オペレータの画面が 5 秒停止、しかもそれが 1~2 分おきに起こるってすごいでしょ。
>>278 実はテスト段階から CPU 使用率 100% で 2~3 秒張り付くって傾向出てたんだけどねー。
CPU がヘボいから SMB な本番機に乗せたら大丈夫じゃないっすか、って回答だったん
だけど、案の定本番機のほうがメモリが広大でさらにひどかったという裏話も… (GC
だけは JVM 全体がシングルスレッドで動くようなものだから SMB の威力が発揮で
きない気もするし…)。
初日の最初がすごかった。180 人いっせいに手が挙がったときはもうマッツアオ。
5 秒後に手は下りたけど、ブラウザの登録ボタンを何度も押してみる人、勝手に
ブラウザ閉じる人、リロードボタン押してみる人、いろいろ居た。
ちゃんと負荷分散せぇよ、という意見もあると思うが、いかんせんそのフレーム
ワークの基盤がクラスタ化未対応という罠…
280 :
デフォルトの名無しさん :02/09/12 05:42
>>279 それは某○B○のSucksとかなんだか言うフレームワークでしょう。
正直その製品はフレームワークと呼べるレベルには達していないです。
私はソースコードを全部読みましたが、Javaでプログラミングをしたことがある
人ならはっきり言って激怒すると思います。
とりあえず、ジェネレータのコードは全部無視して、自分で書いてください(藁)。
ジェネレータのコードは屑です。
また、Sessionに積んであるデータはTransactionアクセス時に必要なもの以外は
全部削除してしまいましょう。
何せすべてのデータをSessionにつんでおく仕様ですからね・・・。
あとできればビジネスロジックを完全にフレームワークから分離させるようにしてください。
(特にフレームワークが提供するデータソースを使ってはいけません)
あとでほかにフレームワークに移行するときに大変ですからね・・・。
まぁ、TestCase通さないといけないから、さすがにこれは大丈夫かな?
遷移とデータのバリデーションだけにSucksを利用して、
バックエンドは普通のJ2EEアプリのようにキャッシュなどを駆使してコーディングするようにすると
Sucksを使って上司の面目も保てて、アプリも高速に動いてみんな幸せです。
281 :
デフォルトの名無しさん :02/09/12 07:04
サーブレットから動的に画像のサイズ変更(例えば サムネイル画像の生成など)を行いたいのですが、 ImageMagickを使わないで実現するにはどうしたら よいのでしょうか?
282 :
デフォルトの名無しさん :02/09/12 08:24
GUIプログラムをデバグするときなに使えばよいですか?
もちろんjavaでなんですけど。jdbが具合が悪いので。
>>284 至る所にSystem.out.printlnでも
JBuidler や Forte を使うとか。 実用度は低いけど GUI 用の UnitTest ツールなかったっけ?
>>285 そういうのを何とか回避したいんです。最後の手段ではありますが。
>>286 Jbuilderは商用だから手が出ないとして、Forteってデバッガ付いてたんですか。
試してみます。
>>287 > そういうのを何とか回避したいんです。
至る所にSystem.out.printlnをいれるのを回避するためには、
デバッグ用にいれたSystem.out.printlnがある行を削除する。
>>288 何か良い考えに聞こえるよな。
GUIでprintln使うのってほとんどデバッグ用だろうし。
public class A{ private static final boolean DEBUG = true; public void method(){ if( DEBUG ) System.out.println( "デバッグ用メッセージ" ); } } みたいに埋め込むとか。 DEBUG を false にしとけば コンパイル時に削除されるって話だけど。 (本当かは知らん)
>>290 その程度の話、本当なのかわからないなら答えないほうがいいです。
質問読んでないようだし。
>>291 GUIでデバッグを行いたい。でもIDEを使うのは断固拒否する。なお、jdbは動かん。
って言うのが彼の注文だろう?
>>292 至る所にSystem.out.printlnも何とか回避したい って書いてあるが?
総合すると、彼の注文はデバッグしたくないって事でよろしいですか?
GUI環境でのSystem.out.printlnって便利だけどな
ユーザーから見えないし、開発者からはよく見えるし
>>290 変数いじるくらいなら、コメントアウトして空関数にすれば~
んじゃ、組み込まれないし
296 :
デフォルトの名無しさん :02/09/12 10:45
for(lngMid=1;lngMid<=50;lngMid++){ for(lngAttach=0;lngAttach<6;lngAttach++){ strAttach=""+lngAttach; strMid=""+lngMid; strQuery="select count(attachment) from skill_tbl where m_id='"+strMid+"' "; rs = dba.DoQuery(con,strQuery); while(rs.next()){ rs.next(); strTotalple+=rs.getString("count(attachment)")+","; } } } 構文上間違えているところ有ります? DBからデータを8項目しか取出せないんですけど。
>>296 > while(rs.next()){
> rs.next();
偶数番目のデータしか扱わない仕様ですか?
>>297 すみません、書き間違いでです。
2つめの rs.next();
は、要らないんでした。
メソッドのパラメータに配列を使用するにはどうすればよいのですか?
>>299 ?
public static void Main(String[] arg)
とか見たこと無い?
>296 >strQuery="select count(attachment) from skill_tbl where m_id='"+strMid+"' "; の下にSystem.out.println(strQuery); でクエリーを確認してみるとか
>>296 strAttachは何のためにあるの?
> strTotalple+=rs.getString("count(attachment)")+","; これはちょっと凄いな。動くんだねこれ。ふつうは SELECT count(...) AS cnt WHERE ... とか名前付けておいて rs.getString ("cnt") で引っ張るとか、あるいは単に rs.getString (1) ってするんじゃない?
>>287 じゃあ LOG4J でがんがんログとるとか。
配列を返すにはどうやったらいいの?
public String[] hoge(){}
>>290 コンパイルした奴を逆コンパイルしてみ。
全部消えてるよ。
>>307 いや、手持ちのjdkのコンパイラなら調べたけど。
全てのコンパイラがちゃんと消してくれるかどーか自信が無いんで。
jikesでも消えてる。
310 :
デフォルトの名無しさん :02/09/12 16:31
java.utilのHashMap,HashSet,Hashtableって どうちがうのでしょう。 おそらくそれぞれ向き不向きがあるのだろう とは思いますが。。。
311 :
デフォルトの名無しさん :02/09/12 17:25
>>310 HashtableはJDK1.0時代からある古い形式のコレクションクラス。
HashMap,HashSetはJDK1.2から導入された。
ほかのMapやSetのシリーズとインターフェースが統一されている。
古い形式のHashtableなどは複数スレッドから同時アクセスの際に
デフォルトでsynchronizedで同期化されているのに対し
新しい形式のコレクションクラスはこれを実装していない。
なぜなら同期化は少なからず実行速度に影響があるにも関わらず
不必要な状況も多く、これを選択できないのは理不尽だからである。
新しい形式で同期化されたコレクションが必要な場合は下記のように
同期化されたバージョンのインスタンスを取得するようにする。
Map m = Collections.synchronizedMap(new HashMap(...));
Mapシリーズのコレクションは検索に使用するKeyオブジェクトと
取得する値のオブジェクトが異なるような場合に使用する。
たとえば辞書の見出しと本文のような。
SetシリーズはKeyそのものが使用するデータでもあるときに使用する。
javaアプリケーションをavaアプレットに変換しています。 アプリケーションでは、同一のディレクトリから、テキストファイル形式のデータを読んでいたのですが、 アプレットにしてからうまくいきません。アプリケーションでも、アプレットでも、ファイルを読み出したい場合、 みなさんはどうしてますか?
ブラウザの設定でできなくもないんじゃなかったっけ? セキュリティ関係。
>>313 URLConnection を使ってストリームを開く
アプリケーションの時は"file:C:\ --- "でアプレットのときは"
http://www ---"
テキストデータの内容によっては
リソースとしてCLASSファイルといっしょにjarに固めてしまう手もある。
avaアプレットってなんでしょうか?
「同一のディレクトリ」ってサーバ側でしょ? セキュリティが問題になるのはクライアント側だから、ちょっと違うんでは?
>>313 ↓このへんを組み合わせればできると思うよ
java.applet.Applet#getCodeBase()
java.net.URL
java.net.URL#openConnection
java.net.URL#openStream
どうも、URLConnection あたりを探ってみます。ありがとうございました。 楽したいので、アプレットでもアプリケーションでも使える方法ないかなって思いました。 がんばってみます。
320 :
デフォルトの名無しさん :02/09/12 20:06
SQLのSELECTで検索したレコードすべて(可変)を配列に入れて 戻り値として返したいのですが、何を使えばいいですか?
>>320 VectorでもArrayListでもなんでも。
>>320 インターフェイスを決めたいなら、あまり具象クラスでないほうが
いいと思うが。可変長というのもちょっと。
俺なら変更不能なListとか配列とか、あるいは別のアクセス方法か
>>296 1.PreparedStatementを使う。
2.StringBufferを使う。(strTotalpleの仕様しだいだが)
3.ResultSetを明示的にclose()する。
4.for()のカウンタの判定方法を統一する。(気分的な問題だけど '<' or '<=')
324 :
デフォルトの名無しさん :02/09/12 23:53
すみません。お願いします。 Tom 10 20 Fred 30 40 Mary 50 60 のようなファイルがあったとします。これは名前と国語算数の点数です。 これを読み込んでいくにはどうしたらよいのでしょうか? 入門書にある BufferedReader br = new BufferedReader (new InputStreamReader(System.in)); String str = br.readLine(); を使うと1行全部読み込んでしまうのでどうにもなりません。 (ファイルのフォーマットは決められているので、変更できません。) よろしくお願い致します。
>>324 java.util.StringTokenizer
326 :
デフォルトの名無しさん :02/09/12 23:55
IBMのJavaVMって良いの?
>>325 ものすごい速レスありがとうございます。
ヘルプを見たところ、なんとかいけそうです。
ただ、データを1つ1つ読み込んでいく方法は
ないということで、よいのでしょうか。
328 :
デフォルトの名無しさん :02/09/13 00:15
プログラム要求↓でオブジェクト指向設計でJavaにて実現するという学校の課題があり、
とりあえず要求をみたしたものを作ってはみたのですが、自信がありません。
恥をかくのは覚悟の上でjavadocで抽出したものをさらしてみました。
http://www.iam.ne.jp/~ebisen-iky/index.html おひまな方、どんなことでもいいのでご指導いただけませんか?
できたらOO的なとこをお聞きしたいです。
・全会議室の予約状況を確認できる。
・指定日時の空き会議室の予約を入れたり、予約を取り消したりできる。
・指定日時の空き会議室を検索できる。
・会議室名は2桁の階数と2桁の部屋番号で表される。
・予約時刻や時間は分単位まで扱う。同一会議室の利用間隔は一定時間(15分)を空ける。
・会議室には収容人数の違いがあり、出席者数を管理する。
・会議室データファイルは管理者だけが設定できる。
・予約の任に当たる人だけが利用するUNIX計算機が用意されるので、その計算機で利用できるツールとする。
・ユーザ認証はOSレベルで行うので、このツールでサポートする必要はない。
・月毎の会議室利用状況を表示できる。
>>327 ちょっと癖あるけど StreamTokenizer でも使ったら?
>>329 ありがとうございます。
勉強してみます。
>>327 1.4なら、String#split(String regex) も便利.
line = reader.readLine();
String[] array = line.split("\\s+")
とか
332 :
デフォルトの名無しさん :02/09/13 00:42
時間の加算・減算がしたいのですが。 正確に言うと YYYYMMDDhhmmss +(-) hhmmss がしたいんです・・・ なにかいいアイデアないですか?
>>331 ありがとうございます。
正規表現はよくわからないのですが、単純なもので成功しました。
すばらしいですね。
スレよごし、すみません。
>>331 さん
\\s+の意味わかりました。ほんとすごいです。
ありがとうございました。
>>332 Calendar c = Calendar.getInstance();
c.set(originalTime);
c.add(Calendar.HOUR_OF_DAY, hh);
c.add(Calendar.MINUTE, mm);
c.add(Calendar.SECOND, ss);
>>328 あまり考えずに、フィーリングで指摘するなら
GUI builderがGUI構築以外の処理(管理処理系)を行っているのは不自然かな。
管理用のMeetingRoomManagerを別途設けて管理処理はそこへ委譲する。
データの流れとしては
登録処理GUI ----> MeetingRoomManager
表示処理GUI <---- MeetingRoomManager
こんな感じ?
多分画面遷移の管理のためとして、builderのコンストラクタの引数にparent があると思うのですが、MeetingRoomManagerと同様な GUIManagerとでも言うのでしょうか、 画面管理用のクラスとかはどうでしょう。
たびたびすみません 訂正↓ 登録処理: GUI ----> MeetingRoomManager 表示処理: GUI <---- MeetingRoomManager
>>336 レスありがとうございます。
>管理用のMeetingRoomManagerを別途設けて管理処理はそこへ委譲する。
なるほど確かに、現状だとGUIbuilderの具象クラスをいちいち見ていかないと
遷移がどうなってるのかわかりませんし、不自然ですね。
親GUI→子GUI→孫GUI→…
でなくて
親(?) MeetingRoomManager
↑↓
子(?) 各GUI
みたいな感じでしょか
ありがとうございますです
340 :
デフォルトの名無しさん :02/09/13 07:57
JavaBeansを作る場合Beansのファイルを別のフォルダに いれないといけないのですか?
341 :
デフォルトの名無しさん :02/09/13 13:00
hashtableのkeyの比較方法ってどうなっているのでしょうか。
342 :
デフォルトの名無しさん :02/09/13 13:11
>>340 多のJavaClassと同じく作ろうとするbeansの属するパッケージによる。
パッケージについて調べれ。
>>341 Object#hashCode()とObject#equals()を使う。
これらはオーバーライド可能なので自分の作るKeyクラスで
カスタマイズ可能。
343 :
デフォルトの名無しさん :02/09/13 15:31
すいません質問があるんですが、 コンポーネントに、リスナーを登録するとき例えばボタンに登録する場合 button1.addActionListener(new ActionListener()); って言うように書きますが、ActionListener はインターフェイスなのに なぜ new 出来るんですか? なにとぞお願いします。
他からクラスをロードしたとき、 Object = class.newInstance(); で、生成されたのが走りますが、このクラスの中のメソッドに引数を渡す (で、返り値を得る)にはどうしたら良いのでしょうか・・・?
ネタはほどほどにお願いします。 >343 その ActionListener が java.awt.event.ActionListener かどうか 確認してみましょう。 >344 走らないよ。 キャストって知ってる?
>>342 言いたいことがよくわからないのですが…
class Outer { public static void main(String[] args) { new Object() { public String getHello() { return "Hello, Anonymous!"; } }; Outer$1 o = new Outer$1(); System.out.println(o.getHello()); } }
ttp://www.asahi-net.or.jp/~dp8t-asm/java/tips/AnonClassParam.html void addDialog(Button button, Dialog dialog) {
final Dialog dialog_ = dialog;
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
dialog_.setVisible(ture);
}
});
}
なんじゃこりゃ。
void addDialog(Button button, final Dialog dialog) {
...
dialog.setVisible(ture);
...
でいいじゃん?
>>351 >final属性の場合には無名クラスから参照することが可能となります。
ってのを強調したかったのか?いや、あんまり強調されてもいないし…
かといってここで話すネタにもならないし、作者にメールも面倒くさいし… 放置?(w
質問です。 例えば java.nio.channels.SocketChannel における メソッド connect(SocketAddress remote) のように すでに実装済かつ利用可能であるのにもかかわらず abstract と宣言されているメソッドは、いったいどのような理由で abstract なのでしょうか? ひょっとしてプラットフォームによっては未実装、つまり cross-platformであることが必ずしも保証されていない(?) からなのでしょうか?
>>354 どこが実装済みなのだ?abstract classじゃん。
>>354 ああ、何かわかった。
Factoryかなんか使っててあなたのプログラムからはそのクラスをその基底クラス(抽象クラス)で受け取ってるから不思議に感じているのでは?
abstract class hoge
{
abstract public int h();
}
class gta : hoge
{
punlic int h();
}
buublic class a
{
static hoge HogeFactory()
{
return new gta();
}
public static void main(String[] arg)
{
hoge hog = HogeFactory();
}
}
みたいな。
私の環境(os.name = Linux, java.version = 1.4.1-beta)では これ↓が普通に動くんです。ですから SocketChannel#connect() は 実装されていると判断したのですが・・・。 import java.nio.channels.SocketChannel; import java.net.InetSocketAddress; public class Test { public static void main(String[] args) throws Exception { SocketChannel sc = SocketChannel.open(); System.out.println(sc); sc.connect(new InetSocketAddress(args[0], Integer.parseInt(args[1]))); System.out.println(sc); sc.close(); System.out.println(sc); } } 出力結果(java Test www.2ch.net 80) java.nio.channels.SocketChannel[unconnected] java.nio.channels.SocketChannel[connected local=/xxx.xxx.xxx.xxx:xxxx remote=www.2ch.net/64.71.145.43:80] java.nio.channels.SocketChannel[closed]
>>357 >SocketChannel sc = SocketChannel.open();
が俺の書いた
hoge hog = HogeFactory();
と同じな。
ポリモルフィズムの勉強とかをすればいいよ。
>>357 試してみればいい。
System.out.println (sc.getClass () == SocketChannel.class);
これは false を出力するはず。
sc の実際のクラスは、abstract class SocketChannel そのままではない。(はず)
>>344 > Object = class.newInstance();
文法が違うので、
Object instance = loaded_class.newInstance ();
と仮定する。
もしloaded_classの親クラス(orインターフェイス)「ClassA」を
<importしている(orできる)>なら、
ClassA instance = (ClassA) loaded_class.newInstance ();
instance.anyMethod (...);
とかやればいい。
import済みのクラスと全く関係ないオブジェクトだったら、
java.lang.reflect.Methodを使うしかないだろう。
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/reflection/
間違えた。「使いたいメソッドが、ClassAにも定義されているなら」か
>>359 確かにfalseでした。つまりSocketChannel.open()はSocketChannelの具象サブクラス
(具体的にはsun.nio.ch.SocketChannelImpl)のインスタンスを返しているわけですね。
なるほどわかりました。
>>355-356 >>358-359 ありがとうございました。
文字列囲うときの""と’’の違いってなんですか?
あのー。
>>348 は、どうしてもコンパイルできないのですが、ネタですか。
>>365-366 一度、この2行↓をコメントアウトしてコンパイル。
> Outer$1 o = new Outer$1();
> System.out.println(o.getHello());
すると、Outer$1.class というファイルができるので、
クラスOuter$1を参照できるようになる。
ちなみに俺もビビッタ
へぇ、無名共用体みたいなことが出来るんだ。
なんで Class.forName("int") で Integer.TYPE が返らんのだ。
>>370 プリミティブ型ってそれで生成出来るの?
intとIntegerは別物だと思われ。
>>370 Object obj = Integer.TYPE.newInstance ();
--------------
java.lang.InstantiationException: int
at java.lang.Class.newInstance0(Class.java:281)
at java.lang.Class.newInstance(Class.java:249)
at int_type.main(int_type.java:3)
Exception in thread "main"
>>370 それが出来ちゃうと new int() もしたくなるな。
ぎりぎり出来ない範囲じゃない?微妙だけど
Integer.class.getName(); -> "java.lang.Integer" int[].class.getName(); -> "[I" int.class.getName(); -> "int" Class.forName("java.lang.Integer").getName(); -> "java.lang.Integer" Class.forName("[I").getName(); -> "[I" Class.forName("int").getName(); -> java.lang.ClassNotFoundException
375 :
デフォルトの名無しさん :02/09/13 22:52
JavaOneってどんなとこですか?
376 :
デフォルトの名無しさん :02/09/13 22:57
>>346 この人は java.awt.event.ActionListener かどうか確認させて
どうするつもりだったのですか?
377 :
デフォルトの名無しさん :02/09/13 23:06
JPEGを表示するだけのプログラムなのにコンパイルが通らない・・・もうだめだ・・・へるぷ import java.awt.*; import java.awt.event.*; import javax.swing.*; class Image extends JFrame { private Image img; public void paintComponent(Graphics g) { g.clearRect(0,0,getWidth(),getHeight()); g.drawImage(img,0,0,this); } public Image(String title) { super(title); img = Toolkit.getDefaultToolkit().getImage("car01.jpg"); } public static void main(String[] args) { JFrame w = new Image("画像配列"); w.show(); } }
ちなみに実行結果は以下のように。 参考書とかHPで調べても同じことやってるのにコンパイルが通らないなんて。 というか前はこのやり方で通ったハズなのに・・・ Image.java:11: シンボルを解釈処理できません。 シンボル: メソッド drawImage (Image,int,int,Image) 位置 : java.awt.Graphics の クラス g.drawImage(img,0,0,this); ^ Image.java:17: 互換性のない型 出現: java.awt.Image 要求: Image img = Toolkit.getDefaultToolkit().getImage("car01.jpg");
>>377 >private Image img;
private java.awt.Image img;
ってやんないとダメでしょ。
380 :
デフォルトの名無しさん :02/09/13 23:25
>>378 Imageとjava.awt.Imageのクラス名がぶつかってるじゃん。
クラス名カエロ馬鹿。
>>379 import java.awt.*;
って文頭にインポート文で記述してるけど・・・
>>380 うかつだった!なるぺそ&さんくす
>>370 public static Class forName(String className)
name がプリミティブ型または void を示す場合、
無名パッケージ内で name という名前のユーザ定義のクラスを見つけようとします。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
このため、このメソッドを使って、プリミティブ型または void を表す Class オブジェクトを取得することはできません。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
384 :
デフォルトの名無しさん :02/09/13 23:48
すいません…ご質問します。 IE5.0、5.5、6.0でサポートしているJDKのバージョンって それぞれいくつなんでしょうか? アプレットを載せたWEBシステム開発するんですが、 ホムペ検索しても古いサイトしかなく、4.0くらいまでの情報しか 見つかりませんでした。 開発は1.3.1で行ってます。上記ブラウザで動作するために必要なものも プラグイン以外に何かあれば教えて下さい。
Javadoc読めよ。
>>384 JavaTM Plug-in コンポーネントを導入すれば1.4です。
>>381 クラス名がカブってるときは
パッケージ名付けてやれば OK です。
例えば、java.awt.List と java.util.List を同時に使う場合とか。
>>385 じゃあ無名パッケージ内に "[I" ってクラスが存在するのか?
どうなんだゴルァ!!
そこに矛盾を感じろ!!
ごめんなさい、言い過ぎました。
>>370 配列クラス([I)はプリミティブでない。
アホか?
name が配列クラスを示す場合、配列クラスのコンポーネント型はロードされますが、初期化されません。
name がプリミティブ型または void を示す場合、無名パッケージ内で name という名前のユーザ定義のクラスを見つけようとします。 ↑ 意味理解できていますか? name がプリミティブ型または void を示す場合 ^^^^^^^^^^^^^^^^^^^^^^
>>394 private class intとかを探すってこと?
矛盾云々言う前に理解できてねぇ~~~~~
まともにドキュメントを理解できない奴が次々と Java開発者として開発チームに導入されている今日この頃。
いや~ん。煽らないで~。 プリミティブ(byte, char, double, float, int, short, long, boolean, void)の Class オブジェクトを間接的に得る方法は提供されていないのか? 誰か詳しい人いない? Class.forName が純粋にバイナリ名から Class を返すのでないことは、"[I" で int[].class を返すことで明らか。 なら "int" から int.class を得る手段が用意されてても良さそうなのだが。
>>399 そこまでプリミティブにこだわる必要性があるんですか?(煽ってるつもりはない)
>>400 いや、代替手段はいくらでもあるので、必要性って言われるとそれは薄いんだけど。
Class.forName(int.class.getName()) で int.class が復元できないと、リフレクションを使うプログラミングでめんどい場合がある。
仕様として気持ち悪いし。
/* * Return the Virtual Machine's Class object for the named * primitive type. */ static native Class getPrimitiveClass(String name);
>>404 をを!これだーっ!
て。package スコープじゃないですか...
っちうかそれってもしかして載せるとやばいんじゃ...
あかん。おっさん萎えたわ。
Integer.class.toString() -> "class java.lang.Integer"
int[].class.toString() -> "class [I"
int.class.toString() -> "int"
こんなんやし。
せめて Class.getSignature()、Class.forSignature(String) 用意してくれ。
>>386-388 ありがとうございます!なんかみんな答え違うけど(w
1.1.4にしろ1.1.8にしろ、1.3.1で開発したもの動かすには
プラグイン入れて1.4にする必要があるということですね。
ありがとうございました。早速役に立てます。
int.classが得られると何がうれしいの?
>>407 彼はなぜかリフレクションばりばりのプログラムを書きたいらしい。
プラグイン用にクラスを指定するとかなら納得いくけどなんでintに執着するのかは不明。
すみません。 ヘルプを自分のパソコン上に展開する方法ってありますか? jarとかいうのをどうかすると聞いたことがあるのですがわかりません。
なんのヘルプだ?
>>370 そんなにClass.forName()の仕様が気に入らないんなら自分でメソッド追加すればいい
public static Class classForName(String name) {
if (name.equals("int"))
return int.class;
else if (name.equals("double")
return double.class;
else
return Class.forName(name);
}
これ使ってればどれほど君の言う仕様がどれほど便利か/どれほど意味がないか
わかるんじゃない?
413 :
名無しさん@Emacs :02/09/14 09:22
J2SDK1.4.1がそろそろ出るっていうのに、1.4.0_02をリリースしやがった。 じらしているのか????
しばらくは1.4.1RCで我慢?
>>407 Class.forName(Integer.class.getName()) -> Integer.class
Class.forName(int[].class.getName()) -> int[].class
Class.forName(int.class.getName()) -> java.lang.ClassNotFoundException
これが、
Class.forName(int.class.getName()) -> int.class
こうなる。これに尽きる。別に Name でなくても、Signature でもかまわない。
>>412 確かに便利でもないし意味もないね。だってコンパイル通らないんだもん。プ。
>>415 っつか、
Class.forName(int.class.getName()) の戻り値が int.class
だと何が嬉しいのかサッパリわからないんだが。
>>307 >>402 の、「めんどい場合」ってのを具体的に例示しないと、
共感を得るのは激しく難しいと思われ
>>391 >
>>385 > じゃあ無名パッケージ内に "[I" ってクラスが存在するのか?
>>399 > プリミティブ(byte, char, double, float, int, short, long, boolean,
> void)の Class オブジェクトを間接的に得る方法は提供されていないのか?
> Class.forName が純粋にバイナリ名から Class を返すのでないことは、
> "[I" で int[].class を返すことで明らか。
> なら "int" から int.class を得る手段が用意されてても良さそうなのだが。
>>402 > Class.forName(int.class.getName()) で int.class が復元できないと、
> リフレクションを使うプログラミングでめんどい場合がある。
>>405 > せめて Class.getSignature()、Class.forSignature(String)
例えば java.reflect.Method#invoke に与えるパラメータ型リストは Classの配列だけど、効率を度外視してもっと意味的に整った設計は、 「Type」「IntType」「BooleanType」とかの名前のインターフェイスが 別にあって、「ReferenceType」の場合だけ参照先のクラスをとれる、 という形だと思う。 つまり、 int.type : IntType (subclassof PrimitiveType) String.type : StringReferenceType (subclassof ReferenceType) String.type.getReferedClass () == String.class とか。あるいは、 class String implements ReferenceType とかでもいいけど
訂正: × java.reflect.Method#invoke に与えるパラメータ型リスト ○ Class#getMethod に与えるパラメータ型リスト
また訂正: × String.type : StringReferenceType (subclassof ReferenceType) ○ String.type : ReferenceType × class String implements ReferenceType ○ String.class (instanceof ReferenceType)
>>418 よく分からんが、そーすると何が便利になるの?
だから、便利になるとかじゃなくて、 現在の int.class とかの基本型に対応する Class オブジェクトってのが、 本質的には反則的な存在だってことがいいたかった。 「基本型はクラスと同列の存在ではなく、(オブジェクトへの)参照型と同列」 ってこと
まわりくどかったけど、要するにこれ↓への反論だったということになるかも
>>402 > 仕様として気持ち悪いし。
>>423 なんだ… ただの自己満足か。
ちなみに、反則っつーなら null の扱いはどーすんだ?
>リフレクションを使うプログラミングでめんどい場合 ってのはどーなったんでしょう?
>>425 > null の扱いはどーすんだ?
すまん。意味が分らん。少なくとも仮引数には基本型や参照型がついているはずだが
>>427 Reflection の中で Primitiveな型が反則だというなら
直接 Reflection とは関係ないが null も反則な値だろ?
Reflection をより合理的に、というなら全ての例外的なものを
合理的にすべきだと思うが。
例えば、null instanceof Object は true でないのに
methodA( Object obj ){ /* 空 */ } なる
Method methodA は methodA.invoke( obj, Object[]{ null } ) としても
IllegalArgumentException を返さない。
これは合理的でないと思うけど。
逆説的に「そーゆー事言い出すとあっちでもこっちでも
綻びなんか幾つでもあるじゃん」という事が言いたい。
>>428 基本型が反則って言ってるんじゃないよ。
nullはオブジェクトではなく、参照の値。
new Object ()は参照の値ではなく、オブジェクト。
「ほらみろ混同してるじゃん!」って言いたいw
>>429 だった…
ちなみに、その「意味的に整った設計」では
null の型はどー設計するわけ?
>>431 変数(仮引数とか)や戻り値の型っていうのは、常にあるよね?
「null」と単独で書く場合は、実際の代入や、関数呼び出しなどの
文脈にマッチした参照型に決定される、と解釈していいのではないかと
ところで void の型はどー設計すんだろ?
voidはデータ型じゃないじゃん リフレクションでinvokeしたときの戻り値がnullになるのが、 オブジェクト返しと同じでイヤーンとか?
>>432 他にも short -> int や float -> double などの型変換は
自動的に行われるけど、「意味的に整った設計」では
これらをどのように解決する?
>>434 なるほど、「意味的に整った設計」ってもデータ型限定なわけね?
お、なんかツッコミがたくさん。じゃあさ、面倒だからこうする
Class.forName (...) ←これはオブジェクトのクラスだけで、
変数に入れられるデータ型(っていうか、基本型+参照型。。
参照も基本型だっけ?)とか、関数の戻り値の指定ってのは、
便宜上混同するのはいいけど、いちおう厳密には区別があるわけだから、
混同するのが正義、みたいな
>>370 の言い方は変じゃないかって事。
438 :
デフォルトの名無しさん :02/09/14 16:20
現在、ezplus(MIDP)アプリを造っていますが、文字列をRecordStoreに保存し、後ほど保存した文字列を取得すると言うことをしたいと思います。 さて、そこで、ファイルから読み込むとき、読み込みはうまくいっているのですが、 バイト配列から文字列へ変換するときにうまくいかず参っています。 セーブされたデータは、バイト配列として保存され、読み込みはうまくいっているようです。 したがって、byte s[]には、データが格納されている状態であります。 ここから、s.toString()を使ってバイト配列を文字列に変換しようと思っても、うまくいきませんでした。 コンソールにdataStringを出力してみると、"[B@be64248"と言う文字列が入っていました。 ここで、byte[]配列を正しく文字列方にするにはどうすればよいのでしょうか? よろしくお願いします。 [B@be64248+++69 69 RecordStore record=RecordStore.openRecordStore("datafile_123456",true); String dataString; byte s[]; s=new byte[record.getRecordSize(1)]; n=record.getRecord(1,s,0); dataString=s.toString(); System.out.println(dataString+"+"+n+"+"+record.getRecordSize(1));
new String(s)
>>438 new String( s );
じゃなかったっけ?
文字化けすんだったら
new String( s, "SJIS" );
new String( s, "EUC_JP" );
とか試してみるとか。
String foo = new String (s);
> dataString=s.toString(); あー確かに初心者がやりそう・・・コトバとして読めば通じてるからなぁ
できました。ありがとうございます。
>>370 もしtemplateもどきを作ろうとしているのなら、
JDK1.5を待ってみるのもいいかもね。
boxingとかいろいろ追加されるらしいよ。
>boxingとかいろいろ追加されるらしいよ。 これマジ?
Vector<int> は夢また夢
451 :
名無しさん@Emacs :02/09/14 23:58
Servletでserver.xmlで指定された<Context>タグ内のpathを取得するにはどうすればいいですか? 実際のpathを取得する方法は書いているんですが....
HttpServletRequestのgetContextPath()
>452 さんきゅーです。 ずっとServletContextの方をさがしていました。
>>449-450 Javaにもtemplate欲しいよね。
->でも、そうなるとprimitive型の扱いに困るよね。reflectionとの相性も悪いし。
->boxingを言語仕様に追加すれば?
てな話が出ていて、JDK1.5に入れようとする動きがあるらしい。
まあ、最終的にどんな感じで落ち着くのかは全然わからんが。
455 :
デフォルトの名無しさん :02/09/15 01:13
Javaってどういうことろに使われてるの? 携帯のアプリぐらいしか知らないんだけど。
457 :
デフォルトの名無しさん :02/09/15 01:38
JavaってCOBOLの亜種ですか?
思いの外長く続いてるな...
>>437 失敬な。統一して扱うのが正義と言ってくれ。
いや違う。*できるだけ*統一して扱うのが正義。区別があるのは分かるが、
同じクラスのインスタンスである以上、できるだけ統一して扱えるべきだ。
あと、Class.forName("int") で無名パッケージの int を探しに行くって
仕様もよくわからん。そもそも言語仕様上、class int{} はできないし。
でも、int.class を置いといてやると、ほんとにそれをロードしようとする。
try{
Class.forName(str);
} catch(ClassNotFoundException e){
if(str.equals("boolean")){
....
}
}
てな実装の場合、int.class を忍ばせとけば、str が "int" の場合、忍ばせた
int.class がロードされる。やばいでしょこれ。
Class.forName がプリミティブ + void 型も扱えれば、プリミティブ型名 ->
Class インスタンスの変換をプログラマが行わなくて済むし、上の問題も
解決される。ReferenceClass と PrimitiveClass が存在するかのような
気持ち悪さも*少しだけ*解消される。
370のがキモイ
460 :
デフォルトの名無しさん :02/09/15 08:49
Java1.4でフルスクリーンを取得する方法を教えてください。 よろしくお願いします。
HTML、Javascript、スタイルシートを勉強しようと思っているのですが、どんな書籍を買えばいいでしょうか。 3つ全部載ってるものがありますが、それは良いのでしょうか?
>>461 こいつマルチポスト、こういうヤシには絶対教えちゃ駄目
すまん、今度学校でHP作りするんだ、皆に負けないように素晴らしいHPを作ろうとおもって… マルチの件ははすまなかった、そういう焦りでマルチしてしまったんだ。 火曜日に最初の授業がある、是非書籍を教えてもらいたい。
465 :
デフォルトの名無しさん :02/09/15 16:04
IEなどに入れたsunのJavaプラグインを、一時的に無効化することはできますか?
>>460 こういう意味?
ToolKit.getDefaultToolKit().getScreenSize();
DBから拾ってきた日付データ(YYYY/MM/DD HH:MI:SS等の文字データ)を java.util.Date型の変数に格納したいのですがどうしたらいいでしょうか。 環境は、 SDK1.4 DB:Oracle9i です。 すみませんが、お願いします。
>>467 ではなくて、Java1.4からサポートされている
フルスクリーンでの描画を行いたいんですが、
やりかたがわからないんですの。
知ってる人いたら教えて下さい
古巣クリーン
472 :
デフォルトの名無しさん :02/09/15 17:22
getBytesの使い方がイマイチ分からないのですが、 ↓の結果が、実行するたびに異なるのは何故なんでしょうか。 String s = new String("A"); System.out.println(s.getBytes());
473 :
デフォルトの名無しさん :02/09/15 17:30
配列のアドレスが違うだけでは。
public byte[] getBytes()String をプラットフォームの デフォルトの文字エンコーディングに従ってバイトに 変換し、結果を新しいバイト配列に格納します。 戻り値: 結果のバイト配列
>>473 Byte[]#toString()ってアドレス返すの?
476 :
デフォルトの名無しさん :02/09/15 17:52
数値「1234」を文字列「001234」みたいに 指定した桁数まで前にゼロをくっつけた 文字列を取得したいのですが、どうやって 変換すればよいのでしょうか?
>>476 public static String intAttachZero(int number ,int place) {
StringBuffer it = new StringBuffer(Integer.toString(number));
for (int i = it.length(); i < place; i++) {
it.insert(0, '0');
}
return it.toString();
}
number = 1234
place = 6
あんまりいい方法ではないと思うけど
>>476 たとえば 6 桁になるまで 0 を詰めるのであれば俺は以下のようにやる。
int i = 1234;
String t = "000000" + i; // 6 個の "0" を付加
String s = t.substring(t.length() - 6); // 左から 6 桁とる
-------------- System.out.println (new byte[0]); -------------- [B@e63e3d --------------
toString Object クラスの toString メソッドは、オブジェクトの派生元のクラス名、アットマーク (@)、およびオブジェクトのハッシュコードの符号なし 16 進表現から構成される文字列を返します。つまり、このメソッドは次の値と等しい文字列を返します。 getClass().getName() + '@' + Integer.toHexString(hashCode())
>>476 まともなやり方:
import java.text.DecimalFormat;
...
DecimalFormat f_06d = new DecimalFormat ("000000");
System.out.println (f_06d.format (1234));
482 :
デフォルトの名無しさん :02/09/15 19:22
日付入力などの入力コンポーネントを配布しているところはありませんか?
>>468 Oracle9iではjava.sql.ResultSet#getDate()が使えないんでしょうか?
java.util.Dateじゃなくてjava.sql.Dateで返ってくるけど。
java.sql クラス Date java.lang.Object | +--java.util.Date | +--java.sql.Date
487 :
デフォルトの名無しさん :02/09/15 21:32
Sunのホムペでタダで配布されてるJava SDKで作ったアプリで金稼いでもいいの?
>>488 / ̄ ̄ ̄ ̄ ̄ ̄ ミ
/ ―――――-ミ
/ / / \|
| / (・) (・)|
(6 つ |
| ___ | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| /__/ / < んなわけねーだろ!
/ | /\ \__________
490 :
デフォルトの名無しさん :02/09/15 21:53
492 :
デフォルトの名無しさん :02/09/15 21:57
馬鹿が商売するのか? しね。
作ったアプリにまで及ぶ制限は言明されていない。よって許諾されているとみてよい
>>487 アプリできたら教えてくれよ
200ガバスまでならだすよ
全角英数字の半角変換やその逆の処理を行う クラス、自分で作ってもいいんだけど、 PerlでいうJcodeみたいな著名なライブラリは 公開されてない? 英数字に限らず、カタカナの 変換や文字コード判定までついてるとベストだね。
497 :
デフォルトの名無しさん :02/09/15 23:42
一週間、休暇が取れたので一気にJAVA(クライアントサイド)を覚えたいのですが一週間でどれぐらいいけますか? 当方、C言語とC++の経験があります。 四六時中JAVAやるつもりです。 あと、オススメの書籍・WEBサイトなどがありましたらご紹介願います。
499 :
デフォルトの名無しさん :02/09/15 23:49
>>497 JAVAをなめるな!
最低1ヶ月取れ!
C++が出来ればかなりイケるんじゃない?
まぁ一週間でできたらスゲェけど
C++やってるなら一週間で AWTとか使ったGUIぐらいまでいけそうな気がする
>>497 (1)言語仕様の違い、マナーの違いを覚える
(2)APIリファレンスに馴染む
ここを集中的にやればけっこうこなせるんじゃない?
レスありがとうございます。 アル程度いけるかもしれないみたいな感じだったのでとりあえず頑張ってみようと思います。
505 :
デフォルトの名無しさん :02/09/16 00:32
アプレット上で、TextFieldについて、addActionListenerメソッドで TextFieldのイベントを拾うようにしたつもりだが、TextField上で Enterを押したときしかactionPerformedが呼ばれないような気がするです。 TextField上のいろいろなイベント(キー入力、フォーカス取得、フォーカス 喪失など)を得るにはどうしたらいいんだろう?
>>505 「addなんじゃらListener」の形のメソッドを全部調べればわかるぞ
>>505 キー入力
addActionListener(ActionListener l)
フォーカス取得
addFocusListener(FocusListener l)
テキスト変更
addTextListener(TextListener l)
多分こんな感じで 詳しくはAPI仕様書を読んでみて
>>485 >>486 レス遅れました。すみません。
getDate()ですか。これだとおっしゃる通りjava.sql.Dateで帰ってきますよね。
これをjava.util.Dateに変換できますか?
↑
これイマイチ使いにくい・・・けど使わないといけないんです。
あと、java.util.Dateに指定の日付をセットするにはlong使うしかないんですかね。
DateFormat(YYYY/MM/DD)のような感じでセットする方法がありそうなんですけど。。。
申し訳ないんですけど教えて下さい。
>>506 なるほど、ありがとう。これがawtのイベントモデルか。
implements ActionListener, TextListener, FocusListener, KeyListener
てな塩梅で必要な分だけリスナーをくっつけていくわけだね。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/sql/Date.html クラス java.util.Date から継承したメソッド after, before, clone,
compareTo, compareTo, equals, getDate, getDay, getMonth, getTime,
getTimezoneOffset, getYear, hashCode, parse, setDate, setMonth,
setYear, toGMTString, toLocaleString, UTC
質問させてください。 Javaの初心者本を読んで、ウインドウを表示させるプログラムが書けるようになってきました。 ただ、起動時にコマンドラインを使うのが不満です。 どうすれば、ウインドウズ上のアイコンをダブルクリックで使えるようになるのでしょうか?
>>510 あ、
java.util.Date
java.sql.Date
でしたね。
すいません。アフォでした。
携帯電話SH51シリーズのJAVAゲームを作りたいと思っている のですが、何を使ってまず作業を開始すればいいのでしょうか? 教えてください。
いやーJavaって楽だね。 MFCと比べると。
>>508 java.util.Calendarおよびjava.util.GregorianCalendarを調べて、
Calendar#setDate()、Calendar#getDate()、Calendar#set()などの
使い方を調べると少し幸せになれるかも。
Java2をわかり易く説明してくれているサイトってあるでしょうか?
>>518 ありがとうございます。今のところ、
java.text.DateFormatのDateFormat#parse(String source)
を使おうと思ってます。
java.util.Calendar調べてみました。幸せかみしめそうな。
とりあえずいろいろ試してみます。あぁ、ねみぃ。
>>519 本ぐらい買えば?お金ないの?じゃあ、ぐぐれば?
すみません。初心者なもので・・・ではJava2の知識がわかり易く得られる 書籍を紹介していただけないでしょうか?
あれ、いちおうスレタイは初心者大歓迎なのか… でも、あまりにもあれだったから(T_T)
>>523 申し訳ないとは思いましたが、ネット自体はじめて1月にも満たないので、
ほんとにわからないところもわからないんですよ。
2chも、2~3日くらい前にモー娘。をgoogleで検索してスレッドがヒットして
初めて知ったくらいですし・・・けど本探してきましたので、情報ありがとう
ございました!!
そうでしたか こちらも少し言い過ぎたかも モー娘。あたりで2chくるのは大物だと思いまふ おれより全然やさしい人もいればその逆も おれはありがとうと言ってくれたのでもう何も
javaでローカルのデータベースって使うことできるのですか? VBやDelphiようなデータコントロールのようにローカルでデーダーベース 使えると便利だと思うのですが、自作したほうがよいですか?
>>527 ローカルのDBってなんじゃ?…と思ったんだけど、JDBCとかが望みのモノなんかな。
でもVBやDelphiみたいにGUIから簡単に使えるモノでもないよ。最近はそういうツールが出てるのかもしれないけど。
JBuilderにはDelphiみたいなGUIで使えるデータコントロールが付属するんじゃなかったっけ? これとpure JavaなDBMSを組み合わせれば希望に近いことが出来るかも。
530 :
デフォルトの名無しさん :02/09/16 10:30
>>529 IBMのCloudscapeはPureJavaじゃなかったっけ?
>>529 Pro以上はね。
JBuilderのコンポーネントはDelphiと比べるとかなり削られてるよ。
まぁ、それでも何とかしようとすればなるから良いけども。
532 :
デフォルトの名無しさん :02/09/16 13:21
VBやDelphiみたいにGUIで簡単に使えるデータコントロールって何? IDEからExcelみたいにテーブル操作ができるってこと?
>>527 hsqlってのがsourceforgeにあったのでちょっと使ってみた
まぁ動くって感じ
こういうやつかぁ。 Eclipseのプラグインもあるね。
536 :
あなたは神様 :02/09/16 14:26
int a=1; byte b; b=a;とやりたいのですが精度が落ちると警告されます。 byteValue() が使えそうだというところまで調べたのですが b=a.byteValue();は 「間接参照できません。」というエラーです。 どなたかお願いします。
byteValue()はIntegerクラスのメソッドでつ。
どんなにがんばっても精度が落ちないわけがない
539 :
あなたは神様 :02/09/16 15:06
↑1はint でも byte でも1と思われ。 もういいや。JAVAはこんな簡単なことも 苦労するなんて。 やっぱMFCとMSVC++のほうが簡単だ。 ここももう2度ときませんのでレス不用。
C を使ってたのならキャストぐらい思いつかんのかと小一時間・・・
いや、その前にアフォ過ぎて唖然ポカーン(゚д゚)
>>539 簡単も何もMFCも満足に使えているのか激しく疑問。
543 :
デフォルトの名無しさん :02/09/16 16:06
IRCクライアントって、java.net.SocketでサーバにIRCプロトコル遵守のバイト列を流し込めば完成ですか?
>>543 そうすると激しく一方通行なIRCクライアントもどきが誕生します。
>543 そりゃそうだろう。 まぁ、厳密には RFC2812 と ircd2.10.x ではちょっとだけ仕様が違う。 サーバや PIRC のバージョンをある程度限定せざるを得ないと思われ。
547 :
デフォルトの名無しさん :02/09/16 16:59
すみません。板がわかりません。 ezplus関連の質問ってどこでするべきだったでしょうか?
>548 早速のレスありがとうございました。 いってみます。
XPのコマンドプロンプトでJavaプログラムしている方、途中まで コマンドプロンプトに書いたものってどうやって保存するんですか?
552 :
デフォルトの名無しさん :02/09/16 17:15
sonnnayatuinai
553 :
デフォルトの名無しさん :02/09/16 17:19
XPだめじゃーん。
554 :
デフォルトの名無しさん :02/09/16 17:23
せめて、メモ帳使えよ。 コーディング→メモ帳(javaファイル) コマンド入力→メモ帳(cmdファイル)
何使ってるの?!
コマンド入力もメモ帳でやるの?じゃあなにからなにまで 手動ってこと?
>551-556 ジサクジエンデスタ。
ではないです。 どうなんすか?
>>500 C++もJavaも同じだけど、言語仕様・文法を覚えただけで
その言語を習得したと思ったら大間違いだよ。
C++もJavaも膨大なクラスライブラリがあってこそ。
クラスライブラリを暗記する必要はないんだけどさ、
「たしかこんな機能をもったクラスがあったはずだ…」っていう
感覚を身に付けるのには、それなりに時間と経験が必要だと思う。
で、クラスライブラリの知識に関しては 他言語(C++)の経験はあまり役に立たないから
C++の経験があってもさほど意味なし。Javaの文法覚えるのが楽になるだけ。
>>559 語尾が疑問符で真意の程は定かではないレスに対して、
そんな常識ならべたてられてもねぇ
>>556 プロンプトメインの場合はね。
とりあえず、プロンプトだけでプログラミングはしない。
エディタも使う。
でも普段はeclipse使ってる。
562 :
デフォルトの名無しさん :02/09/16 18:47
double型の数値を1桁ずつchar配列に入れるにはどのように書けば良いんでしょうか。
>>562 Cでいう、sprintfみたいなことをしたいということ?
>>563 1000桁区切りで,(カンマ)を入れるメソッドを作ろうとしてます。
565 :
デフォルトの名無しさん :02/09/16 19:02
>>562 Double.toString(dbl)
で得た文字列を適当に処理したら。
>>564 \100,000みたいな感じにしたいなら、
java.text.NumberFormatと、そのstaticメソッドgetCurrencyInstance()を
調べることをお勧めする。
メモ帳とコマンドプロンプトか。痴呆としか思えんな(藁
>>569 まあまあ(w
スレタイに初心者大歓迎なんてあることだし、こういうことはままあることかと
meadow上でコマンドプロンプト(cmd.exe)動かせば、編集もコピペも自由自在ですよ!
>>567-568 Javaでは無いと思ってたけどあったんですね…。
ありがとうございます。
とりあえず反応するけど・・・
XPでプロンプト使ってる・・・と質問されたのでメモ帳とプロンプトと答えた。
何か不都合でもありますか?
上でも書いたが普段はeclipseを使っている。
>>569 の発言の意図がつかめません。
XPのコマンドプロンプトでJavaプログラムしている方、途中まで
コマンドプロンプトに書いたものってどうやって保存するんですか?
に対して「JBuilder使ってる」とでも答えろと?
アホ云々言う前に少しは頭使え
FontMetricsクラスのgetMaxDecent() 推奨されなくなった。 decentを英和辞典で調べてみたら... ミススペルかよ
576 :
デフォルトの名無しさん :02/09/16 21:07
Stringクラスで、日本語文字を2バイトとして返すにはどうすれば良いのでしょうか。 String s = new String("あ"); System.out.println(s.getBytes().length); だと1バイトに…。
>>576 ところでエンコーディングは何にしたいの?
>>576 うちでは2バイトになったけど。
>String s = new String("あ");
とりあえず、これ禁止。
String s = "あ";
>>579 (・ε。・)え~?禁止ってほどのことなの?
だって無駄じゃん
>>579 一度バイト配列に入れたら上手くいきました…。
String s = "あ";
byte[] mb = s.getBytes();
System.out.println(mb.length);
>とりあえず、これ禁止
new String() 指定だとパフォーマンスが落ちるんでしょうか。
>>580 PCやサーバで動かすならほとんど実害はないわな。
いいことも一つもないが。
組み込みや携帯なら禁止されてもおかしくない。
585 :
デフォルトの名無しさん :02/09/16 21:51
たびたび質問ばかりで申し訳ないが、 awtのTextFieldで、文字の入力を 挿入モードじゃなくて上書きモードに する方法を教えて欲しい。 さんざんググったし、本屋で立ち読み しまくってきたが、ついに精魂尽き果てた。
String[1024] with new String ()s takes 45072 bytes String[1024] with ""s takes 4112 bytes
587 :
デフォルトの名無しさん :02/09/16 22:30
>574 Cloneableも非推奨になるかもしれないとか・・.
>>585 自力で上書きモードを自作する以外の方法が思いつかない。
TextFieldのTextEventが起きたときに文字の追加があるかどうかを調べて、
もしあれば追加された場所の1文字を削除するとか。
「文字の追加があるかどうか」を知るには、TextFieldの外部にテキストを持たないと
いけないなあ。追加された場所はTextComponent#getCaretPosision()でわかりそうな
気がする。
>>588 なるほど、ありがとうございました。
TextFieldで[Insert]キーを押しても
なにも起きない点で、イヤな予感がしたが
その方法しか無かったとは。
KeyEventで作ってみた。これは面倒だなー field.addKeyListener (new KeyAdapter () { public void keyTyped (KeyEvent ev) { final char c = ev.getKeyChar (); if (!ev.isActionKey () && Character.isLetter (c)) { ev.consume (); // 処理を奪う final int loc = field.getCaretPosition (); final StringBuffer buf = new StringBuffer (field.getText ()); buf.delete (loc, loc + 1); // deleteCharAtと違って例外なし buf.insert (loc, c); final String edited = buf.toString (); field.setText (edited); field.setCaretPosition (loc + 1); } } });
591 :
デフォルトの名無しさん :02/09/16 23:48
JEditorPane.setPage()でyahooとか指定すると(というかどこを指定してもほとんど) 例外がビシバシ発生するんですけど、これってJEditorPaneのバグ? JDK1.4 / JEditorPane.setEditable(false)してます
592 :
デフォルトの名無しさん :02/09/17 01:05
JAVA初心者です。 VCのような統合環境というか、ブレーク・ステップ実行等 の機能のあるソフトってのはないんでしょうか? デバッグは大変ではないですか?
593 :
デフォルトの名無しさん :02/09/17 01:10
>>592 jdb使ってもいいし。
この間、仕事で VisualAge for Java つかった。
重すぎるけど、ユーザインタフェースはまとも。
594 :
デフォルトの名無しさん :02/09/17 01:23
>>593 情報ありがとう。
あるのはあるんですね。
さっき検索してVisualAge for Javaの値段にはちょっと
驚いてしまった
eclipse か fire & ice
>>592 Eclipse のデバッグ機能が軽くて使い勝手が良いのでお勧め。
すんません、X11 積んでない鯖で JPEG の縮小と GIF 変換したいんですけど
何か良い方法は無いでしょうか? デジカメ画像のアルバム的うpろーだーで
i-mode, J-SKY 用の画像 (ついでに PC 用サムネール) を鯖側で作りたいん
ですけど。
>>596 JDK1.4 なら、-Djava.awt.headless=true
それ以前なら、XFree86-Xvfb いれればいい。
>>591 ほんとだ。なんかものすげー事になってる。
こんな調子で何度も。表示するコンポーネント側の問題に見えるが。 それにしてもコールスタックが深いなー。 java.lang.NullPointerException at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2744) at sun.awt.image.ImageRepresentation.drawToBufImage(ImageRepresentation.java:758) at sun.java2d.pipe.DrawImage.scaleImage(DrawImage.java:756) at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2752) at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2705) at javax.swing.text.html.ImageView.paint(ImageView.java:363) at javax.swing.text.BoxView.paintChild(BoxView.java:144) at javax.swing.text.BoxView.paint(BoxView.java:407) at javax.swing.text.BoxView.paintChild(BoxView.java:144)
600 :
デフォルトの名無しさん :02/09/17 11:49
Win(Me) + JDK1.3.1 です。 Component を継承して update(Graphics g) を override しましたが、 repaint() 時にこのメソッドが呼ばれず、強制的に画面がフラッシュします。 #Canvas を継承すると自前のメソッドが呼ばれますよね。 これは仕様ですか?
601 :
デフォルトの名無しさん :02/09/17 12:05
クラス・ライブラリについて教えてください。 javax.servletってSEのAPI仕様に説明されてないですよね。 でもJDKのSEでjavax.servletを使ったものもコンパイルできますよね。 ライブラリはどのような構成になってるのでしょうか?
>>590 フォントは等幅フォントに限るとしても、入力された
文字が全角文字(って言い方も古くさいな)だった場合
とか、いろいろ考えるとかなり面倒。
まあ、地道にチマチマ実装していくしかないか。
サンプルコードありがとう。
>>601 それはservlet.jarとかj2ee.jarとかがクラスパスに入っているからじゃないの?
少なくともrt.jarには入っていないよ。
604 :
デフォルトの名無しさん :02/09/18 00:24
JAVAアプリを単一のexeファイルにするにはどうすれば?
できない。 なぜならJAVAだから。
商用でいくつか exe にするプログラムが売ってるよ。 gcc でも出来なかったっけ?
バッチをexeにしる
>>595-596 Eclipse、fire & iceですね。サンクスです。
早速DLさせてもらってます。
609 :
デフォルトの名無しさん :02/09/18 00:57
んで?結局JEditorPaneってバグバグって結論でよいのかな? JDK1.4.1でこんな状況だけど、もっと前のバージョンでは大丈夫なのか? それとも回避する手段がある?
Javaは あんまりネガティブな意見は嫌い。
611 :
デフォルトの名無しさん :02/09/18 01:22
定数をどのクラスからも使えるようにしたいんだけど、 どうしたらいいですか?
その質問は Javaにとっては禁句。
>>613 間違えた。public staticにしる
615 :
デフォルトの名無しさん :02/09/18 02:28
>>612 611へのレスですか?
理由を知りたいです。!
616 :
不明なデバイスさん :02/09/18 02:28
Javaのコンパイラは何がいいですか?
javacがおすすめ。
618 :
デフォルトの名無しさん :02/09/18 02:36
J Builderってどうよ?
JうんこBuilder
>>614 定数ってんだから public static final にしとけよ…
JavaのSDKには文字列を暗号化するクラスはないのれすか? あったら使い方教えてください
622 :
デフォルトの名無しさん :02/09/18 12:07
配列って動的割り当てできないですよね?
>>622 Javaのオブジェクトは動的割り当て<しか>できないが、
それは何か可変長配列の事をいっておるのか
624 :
デフォルトの名無しさん :02/09/18 12:15
>>623 ごめんなさい。Cみたいに確保とか開放を自分で指定して
ってことです。できますか?
>>621 お前、調べてないな。ぐぐったら一発だったぞ
>>624 だから、確保はnewで普通にできるだろ。
int[] array = new int[123];
参照が切れればそのうち解放されるっての知らないのか?
System.gc()すればたいてい時期が早まることになってるが
>>626 そうでした。忘れてましたnewで確保。
あんまり勉強してないので開放も何か
あるのかなって思って聞きました。すいません。
ありがとうございました。
> あんまり勉強してないので なんか支離滅裂だな。大丈夫か
629 :
デフォルトの名無しさん :02/09/18 12:45
StringTokenizerで文字を区切っているのですが、文字がない部分を トークンとして判断してくれません。(あたりまえかもしれません) a,b,c,,,dと言う文字で,,,も部分も""で処理したいのですが、 方法はありますか?
631 :
デフォルトの名無しさん :02/09/18 13:25
>>631 767 :デフォルトの名無しさん :02/09/17 16:49
とは書き込んだものの、FCSってどういう意味?
RCはRelease Candidate、リリース候補、
つまり製品候補、最終候補のような意味だと判ったけど、
FCSはgoogleしても見つからなかった・・・・鬱
768 :デフォルトの名無しさん :02/09/17 16:58
>>767 First Customer Shipment。
って1.4.1出たのか。
769 :デフォルトの名無しさん :02/09/17 17:09
>>768 ありがとう。
敢えて訳すと「最初の顧客向け出荷品」になるんでしょうかね。
http://pc3.2ch.net/test/read.cgi/tech/990949654/766-769n だそうです。
634 :
デフォルトの名無しさん :02/09/18 14:50
自分で作ったJavaプログラムを実行したときに一度Win2kがフリーズして、 なにかJavaの起動に必要なファイルか設定を壊してしまったようなのですが、 よくわかりません。 それ以降、ウィンドウを出すJavaプログラム(いままで動いていたもの)全部の 起動時にWin2kがとまるようになりました。(コンソールだけのものは無事) reとsdkを一旦アンインストールしてから入れなおしたんですが、事態が改善しません。 OSから入れなおさなきゃ直りませんか? 1.4.1rcです。
>>632 ,633
ありがとう、分かりました。
633氏紹介のスレは未見でした、今からちょっと見てきます。
636 :
デフォルトの名無しさん :02/09/18 17:31
最近になってJavaをやり始めたものです。 コンピュータを起動して一回目のコンパイルのとき javac foo.java とやると異様に時間がかかるのですが、こういうものなのでしょうか? java foo と実行するときも、一回目は時間が非常にかかります。
>>636 具体的に何分かかるんだよー。
CPUのスペックは?
638 :
デフォルトの名無しさん :02/09/18 17:46
>>637 何分もはかかりませんけど、数十秒かかるんです。
二回目以降はすぐに終わるのでこういうものなのかと。
>>638 そーゆーもん。
ひょっとするとメモリが めちゃくちゃ少ないのかも?
>>638 マシンスペック(CPU,メモリ)とソースの規模晒してみ。そうでないとなんとも言えん
641 :
デフォルトの名無しさん :02/09/18 20:13
タイピングソフト作ろうと思うのですが、参考になるようなコード書いて下さい
642 :
java暦2週間 :02/09/18 20:18
class statictics { int intStaPopulation[] = new int[2]; intStaPopulation[0] = 3; } と打ったところ ']'がありません。 intStaPopulation[0] = 3; ^ <identifier>がありません。 intStaPopulation[0] = 3; ^ シンボルを解釈処理できません。 intStaPopulation[0] = 3; ^ エラー 3 個 というエラーが返ってきてしまい、コンパイルできません。 どこを直せばよいですか?また、その理由を 誰か教えてください。
お前は2週間何をやってきたのかと小一時間(略
さすが阿呆揃いですな。
>>642 intStaPopulation[0] = 3;
↑この一行は「実行文」なので関数定義の中にしか書けない。
おぬしのソースには関数定義がない。
int intStaPopulation[] = new int[2];
↑ちなみにこの行は
「staticticsというクラスには
intStaPopulationという名前のメンバー変数があって
その初期値は(int型の大きさ2の配列)である。」
という意味の「宣言文」だから問題がない。
>>646 ありがとうございますーーーーーーーーーー(まじで感謝
また、違うところでエラーが発生してしまったのですが
今度は甘えずに、自分で調べてみます
無理無理
649 :
デフォルトの名無しさん :02/09/18 22:21
半角カナを全角に変換するには、Unicodeで変換するのが一番良いのでしょうか。
得意なエンコードでいいんでは?
public void paint(Graphics g){ g.drawImage(image,0,0,this); } このthisは、gを指しているんですよね?
653 :
デフォルトの名無しさん :02/09/19 03:13
>>652 なんでそうなる?!
paintメソッドを含んでいるクラスのインスタンス
そのものを指しているはずですが。
ムムム・・・全然理解してませんね自分・・・アタマガハレツシソウダ
ava2Dで質問です。任意のShapeを直線で分割して、塗りつぶしたり出来ますか? 文字列をアウトライン化して、文字の真ん中を分割して、別々の色で塗りつぶしたいのですが。 そういうメソッドってありますか?今のところ、文字のアウトライン化まではわかりました
教えてください。 JAVAでデータベース検索中にアイコンを砂時計にして 画面ロックしたんですが、よい方法を教えてください。
659 :
デフォルトの名無しさん :02/09/19 12:05
ひとつのConnectionから、同時に複数のstatemt resultsetを取得できますか? 複数resuletsetをとりたい場合は、connectionを複数とらないとだめですよね? connection:statement:resultset=1:1:1?
すみません、質問させてください…。 下のソースみたいに、fにvectorListの内容を渡そうとしていますが上手くいきません。 ちなみにvectorListはjava.util.Vectorで、 要素としてjava.io.Fileをいくつか入れてあります。 これだとなんとなく、うまくいきました。 File[] f = new File[vectorList.size()]; for (int i = 0; i < length; i++){ f[i] = (File) vectorList.get(i); } これだと2行目でClassCastExceptionになってしまいました…。 File[] f = new File[vectorList.size()]; f = (File[]) vectorList.toArray(); ClassCastExceptionの説明も読みましたが、 ObjectはFileにも継承されていると思っていたので、 この例外の意味が良く分かりませんでした。 配列を丸ごと渡せるいい方法があったら、教えて頂けるとうれしいです。 あと、もしよろしければなんですが、何で2番目の方のコードではダメなのかも教えて頂けると幸いです。 長々とすみません、どうかよろしくお願いします。
f = (File[]) vectorList.toArray(f); あるいは、 File[] f = (File[]) vectorList.toArray(new File[0]);
>>661 おおお!出来ました!ありがとうございます!!
数日悩んでいたので、辛かったです…。
本当にありがとうございます!
663 :
デフォルトの名無しさん :02/09/19 15:03
数値データをチャートに変換し、Web上に展開するJavaツールで良いものありますか? 価格は10万前後まで。
664 :
よろしくおねがいします :02/09/19 16:05
現在、アプレットとサーブレットの通信をおこなわせるための テストアプレットを作成しているのですが、 通信部分でエラーが発生しているらしくて、なぜ発生するのか、 またどういう対処を行えばいいかを調べていたのですが 結局対処できなくて悩んでいます。通信内容としましては、 テキストボックスに表記した文字をサーブレット に送信して、その文字に"OK"という文字を追加して アプレットに返信するという内容です。 どの部分の書き方が悪いのでしょうか。よろしくお願いします。 <アプレット部分> import java.applet.*; import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.io.*; import java.net.*; import java.util.*; public class tester extends Applet{ Button btnSend; TextField txtF; public void init(){ btnSend = new Button("送信"); txtF = new TextField("",8); setLayout(null); btnSend.setBounds(1,1,80,50); txtF.setBounds(100,100,80,50); add(btnSend); add(txtF); btnSend.addActionListener(new sendData()); }
665 :
よろしくおねがいします(続き) :02/09/19 16:06
class sendData implements ActionListener{
URL ul;
URLConnection conn;
String str;
Vector vec = new Vector();
public void actionPerformed(ActionEvent ev){
try{
ul = new URL("
http://localhost:8088/serv.class ");
conn = ul.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
DataOutputStream out = new DataOutputStream(conn.getOutputStream());
ObjectInputStream inn = new ObjectInputStream(conn.getInputStream());
out.writeUTF(txtF.getText());
out.flush();
out.close();
vec = (Vector)inn.readObject();
txtF.setText((String)vec.elementAt(0));
}catch(Exception e){
txtF.setText("エラー");
}}}}
666 :
デフォルトの名無しさん :02/09/19 16:06
Xerces-J1.4.3つかっているのですが、 String xml = "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n<root/>"; DOMParser parser = new DOMParser(); InputSource source = new InputSource(new StringReader(XMLの内容)); parser.parse(s); みたいな感じで、以下の例外が起きてしまいます。ファイル名として解釈している? どうすればよいでしょう? SAXParseException: File "<?xml version="1.0" encoding="Shift_JIS"?><root/>" not found.
667 :
よろしくおねがいします(続き) :02/09/19 16:06
<サーブレット部分> import java.io.*; import java.net.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.*; public class serv extends HttpServlet{ String str; Vector vec; public void doPost (HttpServletRequest req , HttpServletResponse res) throws ServletException,IOException{ res.setContentType("application/octet-stream"); DataInputStream st = new DataInputStream(req.getInputStream()); ObjectOutputStream ou = new ObjectOutputStream(res.getOutputStream()); str = st.readUTF() + "OK"; vec.addElement(str); st.close(); ou.writeObject(vec); ou.flush(); ou.close(); } }
668 :
デフォルトの名無しさん :02/09/19 16:25
ある瞬間にマウスなどでポイントされているメニュ項目をアプリケーションが 知るにはどうしたらいいですか?
メニュー項目が通知すれ
>>669 選択というか、クリックされたときだったらわかるのですが、ポイントするだけでも
なにかイベントって発生するんですか?
>>664-667 なんかソースが長くて読む気しないんだけどさ、例外捕捉のところは
・・・
} catch(Exception e) {
e.printStackTrace();
}
って書いたみたら? 自前で「エラー」とか表示するよりも
128倍くらい有用だと思う。
672 :
デフォルトの名無しさん :02/09/19 17:30
>ポイントされている なのにMouseEvent??
Javaに限らずなんですが縦書きのエディタって作ること可能ですか? 横書きの普通のエディタなら作れるのですが・・・ 知っている方、知恵を貸してください。お願いします。
676 :
デフォルトの名無しさん :02/09/19 19:11
すいません、ファイルの移動はどうやればいいのですか? File src = new File("/abc/a.txt"); // a.txt は存在する File dest = new File("/def/a.txt"); // a.txt は存在しない src.renameTo(dest); こんなやりかたでいいのでしょうか?
>>676 良いよ。
便乗質問。
dest が存在する場合 IBM JDK 1.3.0 for Linux だとリネームに失敗すんだけど。
ファイル内容の一意性を保つために一時ファイルへ出力→リネームって一般的な方法
だと思うんだが、これできないのか? dest.delete(); src.renameTo(dest); やれって?
レベルの低い質問ですいません。 double dblRate = 20 / 500; lblSeats.setText("全体の割合:" + dblRate); と打ち、実行すると 全体の割合:0.0 と表示されてしまいます。 正しく小数点を表示させる方法をどなたか教えてくれませんか?
>>679 double dblRate = (double)20 / (double)500;
とか
double dblRate = 20.0 / 500.0;
とか
>>679 整数型÷整数型の結果は小数点以下切り捨ての整数型になる
double dblRate = 20.0 / 500.0;
>>678 なら
dest.renameTo( temp );
src.renameTo( dest );
成功してたら
temp.delete();
失敗してたら
temp.renameTo( dest );
とかやるとか。
>>682 ごめん、その方法や delete() 使うと、dest ファイルがシステム上から
一瞬消えてしまう (大抵こういうのは高負荷時の障害に繋がる)。正直
rename 一発でアトミック性を保ちたい。ここだけ Runtime#exec() で
mv するのも何だかなぁ…。
684 :
よろしくおねがいします :02/09/19 19:59
>>671 ありがとうございます。
試してみます。
開発環境はどれがいいんですか?
アプレットにコピープロテクトかける方法って ありえますか?原理的に無理っぽいと思うんですが。
>>686 クラスファイルが手に入れば逆コンパイルできるからな。完全には無理だろう。
便乗質問すみません。 jarファイルも逆コンパイルできるんですか?
>>687 それって、ソースが完全に復元できてしまう、
という事でしょうか。アプレットが流行らない
原因の一つをみた思いがします。
>>688 jar はただの ZIP ファイルにマニフェストファイルが入っただけ。
拡張子を .zip に変えれば WinZIP でも解凍できる。
決定的な対応策としては、パクられたくない処理をサーバサイドで行い
アプレットはただそいつと通信して結果を表示するだけのフロントエンド
UI にすることだろうよ。そもそもクライアントで解読できないものを
クライアントで実行できるわけが無いし。
>>690 zipだったとは…。
そうだったんですね。ありがとうございます。
>>689 完全には無理だが、普通の Java プログラマが苦労して読める程度には戻せる。
逆コンパイルしたソースをなるべく読みにくくさせるようなツールもあるけど。
てか C でも VB でも同じ話。
693 :
デフォルトの名無しさん :02/09/19 22:04
質問ですよ。 2枚の画像のRGB値をピクセル単位で比較したいのですが、 pixelgrabberで画像を配列に格納するとメモリ上で1枚しか処理できませんよね? なにか助言して。ホントオ願イ
二つの画像それぞれに PixelBrabber 作れば良いじゃん。
695 :
デフォルトの名無しさん :02/09/19 22:25
PixelGrabber pg = new PixelGrabber(src01,0,0,w,h,pixels,0,w); というように画像を配列に格納するのに対して img = createImage(new MemoryImageSource(w,h,pixels,0,w)); というように画像を再構成するけど、画像の幅と高さとピクセル配列・・・って今気づいた。 配列pixelsも用意すればいいんだ。ゴメソ&アリガトー
しまった。ミスった。 誤)最近の100スレくらいはしっかり読むように。 正)最近の100レスくらいはしっかり読むように。 100スレも読めるか(;´д`)
というよりですね、何で皆さん こんなに詳しいんですか?
Javaが世間に出回り始めてから、もう7年以上経つんだよ。 詳しい人だっていっぱいいるよ~。
javac hello.java でコンパイルしようとするとコマンド又はファイル名が違います。とでます SET PASSがおかしいみたいなんですが、どこがおかしいのか 教えて頂けませんでしょうか Autoexec.batです・・ @ECHO OFF loadhigh c:\windows\COMMAND\nlsfunc.exe c:\windows\country.sys SET CLASSPATH=C:\PROGRA~1\PHOTOD~1.0\ADOBEC~1 SET PATH=C:\Perl\bin;C:\jdk1.3.1_04\bin;%PATH% 宜しくお願いいたします。
全角空白2つにしてしまいましたが半角空白にしてます あとjavac.exeはあります 厨な質問&連カキすいません
C:\jdk1.3.1_04\bin\javac では動くわけ?
>>703 !!今打ったら説明みたいなのが出ました。
んじゃ、ただ set って打ってみて、ちゃんと PATH=... が正しいかどうかチェック
>>705 夜遅くにありがとうございます・゚・(ノД`)・゚・。
正しいかどうかはわからないんですが
PATH=........................
CMDLINE=C:\jdk1.3.1_04\bin\javac
と出ました
TMP=c:\windows\TEMP TEMP=C:\windows\TEMP PROMPT=$p$g winbootdir=C:\WINDOWS COMSPEC=C:\WINDOWS\COMMAND.COM CLASSPATH=C:\PROGRA~1\PHOTOD~1.0\ADOBEC~1 PATH=C:\PERL\BIN;C:\WINDOWS;C:\WINDOWS;C:\WINDOWS\COMMAND windir=C:\WINDOWS CMDLINE=C:\jdk1.3.1_04\bin\javac
708 :
デフォルトの名無しさん :02/09/20 03:50
コンストラクタのオーバーロードについてご教授ください。 まず社員番号、前期売り上げ、中期売り上げ、後期売り上げを インスタンス変数に持つ社員クラスを用意。 10人分の売り上げを一覧表示するプログラムを作るとします。 コンストラクタのオーバーロードを使って、 売り上げがない場合は"売り上げなし"と設定します。 この場合社員クラスのコンストラクタの引数の型は String,int,int,int String,Sring,int,int String,int,Sring,int ・ ・ といった感じで8パターン並べる方法しかないのでしょうか? コンストラクタで数字か文字列かを判定しようとした場合 ずらずら書く以外なにか方法はないのでしょうか?
>>701 あと、autoexec.batに
SET CLASSPATH=%CLASSPATH%;.
も追加 (↑最後の「;」と「.」を忘れないように)
713 :
デフォルトの名無しさん :02/09/20 04:18
>>711 確かにそうです・・・。
例が悪すぎました。
この場合は売り上げ0の場合は"売り上げなし"と設定したいのです。
逆に売り上げもすべてString型で受け取ってしまえばはやいのですが・・・
714 :
デフォルトの名無しさん :02/09/20 04:35
>>713 ぶち込む前に文字列にできない?
文字列としてとってこれないの?
715 :
デフォルトの名無しさん :02/09/20 04:47
できるのですが コンストラクタのオーバーロードを使うというのが前提なので それだと文字列と数値をコンストラクタで区別できなくなると思いまして・・・
俺は社員クラス側でやるよりも、社員クラスを使用する側でやる方がスマートだと思う。気持ち悪いし…。
>>708 >>713 例えが悪いのではなくて設計が悪い。
データはどうやって保持するつもり?"売り上げなし"という文字列か?
データ処理の段階で、
String uriage;
...
if (uriage.equals("売り上げなし") || uriage.equals("売上なし") || uriage.equals("売上げなし")) ...
なんてするつもりか?
「売り上げなし」なんてのは表示(または入力)するときに必要なだけでデータが文字列である必要は無い。
「0は売り上げなしとみなす」とか、Integerにして「nullの場合売り上げなし」とか、
class Uriage{
private int amount;
public exists() {...}
}
とか方法はいろいろ。
↑public boolean exists() ねスマソ public class Uriage { publc static Uriage なし = new Uriage(0, false); public Uriage(int 金額, boolean 売り上げがある){...} } Shain shain = new Shain(new Uriage(1000), new Uriage(1500), Uriage.なし); 「売り上げ0 or マイナス」 と 「売り上げなし」を区別したいなら俺ならこんな感じのカスタムクラス作るかな
720 :
デフォルトの名無しさん :02/09/20 05:08
え~と、敢えてオーバーロードの課題として設計されているのでは? 取り敢えずver1.4から genericity というC++でいうテンプレート が追加されたみたいだけど、俺、Javaはよくわかんないよ~ 俺もテンプレートみたいなことできるかどうか知りたいので お願いします>以降の人
>>720 殿、Genericsは1.5からでございますぞ
課題なら設計云々言ってもしょうがないのかな。
でも、717でもコンストラクタのoverload使ってるからいいんじゃないかな・・・
>>717 publc static final Uriage なし = new Uriage(0, false);
final忘れ。たびたびスマソ
売り上げをintに入れるのか... あふれそ。
解決しました・・・ 原因は・・バックアップの方のautoexec.batをいじってました・・ ごめんなさい・・ほんとにごめんなさい こんな馬鹿に付き合って頂いた方、本当にありがとうございました では回線切って首吊ってきます・・
自殺宣言か
725 :
よろしくおねがいします :02/09/20 06:41
>>664 です。
>>696 さん
ご返答ありがとうございます。
まず、今のURLの状態で実行しますと、
java.io.StreamCorruptedException: invalid stream header
というエラーを吐くようです。
696さんがご指摘をされたようにURLを変更してみますと、
java.io.FileNotFoundException:
http://localhost:8888/servlet/serv というエラーが発生するようなので、URL位置は間違っていない
ように思われます。引き続きこちらでも頑張って原因を突き止めます。
726 :
デフォルトの名無しさん :02/09/20 06:53
Java3Dのインストールで質問です w2kでjavac hoge.javaすると パッケージ javax.media.j3d は存在しません と返されます どうしたら良いのでしょうか?
727 :
デフォルトの名無しさん :02/09/20 06:55
追加 demo/java3d でも同様なのでコードに問題はないようです おねがいします。
自己レス インスト場所をいつもと違うところにしてしまっただけでした。 path通したらOKでした
ご返答ありがとうございます。
売り上げクラスを作るという方法もあるんですね。
mainと社員クラスだけで考えようとしてました。
>>717 さん勉強になりました。
730 :
デフォルトの名無しさん :02/09/20 08:47
開発環境はどれがいいんですか?
日本語化されたから Eclipse で
2ちゃん的今年のMostValiableProductsは、日本語化されたeclipseということで。
スペルミスった
win98とmeではset path の記述は違うのですか? 初心者のためのjava講座ではautoexec.batの最後に下記の 二行を追加すればいいと書いてあったのですが、コンパイルできません。 ちなみにmeを使ってます。誰かお助け下され!! SET PATH=%PATH%;C:\jdk1.3\bin SET CLASSPATH=%CLASSPATH%;.
>>734 javac コマンドを打ったときに出るメッセージは?
# なんかこういうのって医者の問診に激しく似てると最近おもた
>>734 path通っているか見ろよ。
>path[enter]
>>735 さん
コマンドまたはファイル名が正しくありませんです。
頭痛が止まりません・・・。
>>736 さん
path = c:\windows;c:\windows\commandで終わってしまいます。
これって、pathは通ってないんですよねぇ?
>>738 さん
commandでautoexec.batをしています。
>>739 日本語になってねぇし…
子プロセスの中で SET やってるんか?
>>738 さん
もし時間をいただけるなら、autoexrc.batの内容を見ていただけませんか?
悩める子羊をお助け下さい!
>>741 ぐだぐだと言ってないで、さっさと貼り付けろや
>>740 さん、すいませんDOSコマンドを言いたかったのです。
これじゃあダメなんでしょうか?
子プロセスの中でSETとは?どゆことですか?
今回はこれかな・・・ C:\jdk1.3\bin\javac.exe って打ったらなんて出る?
>>742 さんぜひにお願いします。
@ECHO OFF
path=c:\windows;c:\windows\command
\hibinv.exe
call \checksr.bat
IF "%config%"=="QUICK" GOTO QUICK
set EXPAND=YES
SET DIRCMD=/O:N
set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15
set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C
cls
call setramd.bat %LglDrv%
set temp=c:\
set tmp=c:\
path=%RAMD%:\;a:\;%path%;%CDROM%:\
copy command.com %RAMD%:\ > NUL
set comspec=%RAMD%:\command.com
copy extract.exe %RAMD%:\ > NUL
copy readme.txt %RAMD%:\ > NUL
rem clean up environment variables
set CDPROB=
set CDROM=
set LglDrv=
GOTO QUICK
:QUICK
SET PATH=%PATH%;C:\jdk1.3\bin
SET CLASSPATH=%CLASSPATH%;.
本当に一番最後に追加しています。どこに追加すればいいのですか?
明らかに関係なさそうなトコは省きました。
>>744 さん
使い方:javac<options><source files>
使用可能なオプションには次のようなものがあります。
.
.
.
と、なにやらコマンドの説明をされてます。
で、再起動はしたのか?
一応、変更するたびに再起動してます。
SET PATH=%PATH%;C:\jdk1.3\bin SET CLASSPATH=%CLASSPATH%;. これを DOS 窓開くたびに打て
path=c:\windows;c:\windows\command を path=c:\windows;c:\windows\command;C:\jdk1.3\bin にすればいいんじゃないの
元々 CLASSPATH が設定されていないのなら > SET CLASSPATH=%CLASSPATH%;. は必要ないな。 ところで、しっつもーん。WinME で autoexec.bat って有効なん?
OS WInMEだったの? WinMEではautoexec.batは実行されないから 上でいわれたやつは 環境変数で設定しなきゃダメだね
753 :
名無しさん :02/09/20 13:57
ある文字列をインデックス0番目から「文字」か「数字」かを解析してくれる メソッドって存在しますか?
J2SE1.3.1_04でJAXPを使おうとしたのですが、クラスライブラリに javax.xmlとorg.w3c.domが入っていないことに気が付きました。 J2SE1.4にバージョンアップするのは面倒なので、 どこかから上記のクラスだけ落としたいと思います。 こんな体験をしたことがある心優しい方がいましたら、URLを教えてください。 お願いします。
みなさん、アリガトウ!!無事にコンパイルに成功しました!
>>735 ~
>>752 の間でアドバイスしてくださったみなさんに感謝します!!
有難うございました!
>>756 さん、すいません。うれしさで、本を買いに行ってました。
むちゃくちゃしてるうちに、原因がわからなくなってしまいました。
多分、システムツールの環境設定でpathに;c:\jdk1.3\binを追加したのが、
決定打だったのでは?と思ってます。
みなさんのアドバイスのおかげです!再度ありがとうございました。
Javaアプリケーションを、 javaコマンドじゃなくて、 exeファイル(?)みたいに実行できないのでしょうか?
>>753 よく分からんけど、
Character.isDigit(str.charAt(0));
とか、そーゆー事でなくて?
>>758 シェルスクリプトで起動用スクリプト書くとか、
起動用の実行ファイル作るとか。
Windowsでダブルクリックで起動したいだけなら jar にするとか、
ネイティブコンパイラ使うとか。
761 :
デフォルトの名無しさん :02/09/20 16:42
あるディレクトリに複数のjarファイルがあるとします。 その場合全てのファイルを使いたい場合はクラスパスはどう書けばいいのでしょうか? /usr/local/lib/にjarがあるとして、 java -classpath .:/usr/local/lib/ test としてもNoClassDefExceptionが出てしまいます。
jar って一個一個指定しなきゃいけないのでは? java -classpath .:/usr/local/lib/a.jar:/usr/local/lib/b.jar test とか… java -classpath .:/usr/local/lib/*.jar test とかやれば ちゃんと展開してくれるかも?
>>762 そうなんですよ。
java -classpath .:/usr/local/lib/a.jar:/usr/local/lib/b.jar test
では成功します。
java -classpath .:/usr/local/lib/*.jar test
はだめでした。
Apache Soapのクライアントを書いてるんですがかなりの数のjarを
指定してやらなければならず何かいい方法が無いかと相談させて
いただきました。
#Makefile書け JAVAC=javac CLASSPATH=.:/usr/local/lib/a.jar:/usr/local/lib/b.jar all:test test:test.java $(JAVAC) -classpath $(CLASSPATH) test.java #↑タブ文字
>>764 CLASSPATH=.:/usr/local/lib/a.jar:/usr/local/lib/b.jar:/usr/local/lib/a.jar:/usr/local/lib/c.jarr:/usr/local/lib/a.jar:/usr/local/lib/e.jar........
が激しく面倒だと言うのが彼の言い分だと思われ。
>>764 Makefileって… せめて Antにしてくれ。
>>763 必要な jar をエクステンションディレクトリに詰め込むとか、
CLASSPATH に設定するのはダメなんじゃ?
外部からエクステンションディレクトリって設定できなかったっけ?
なんかあったような気もするんだけど、気のせいかも…
#ならこうしろ echo /bin/*.exe | perl -ne ' = ho; =~ s/\s/:/g; print ;' /usr/local/lib/*.jar > Makefile
#まちがえた #逝ってくる echo /usr/local/lib/*.jar | perl -ne ' = ho; =~ s/\s/:/g; print ;' > Makefile
#そろそろ氏のう... echo /usr/local/lib/*.jar | perl -ne '$s="$_"; $s =~ s/\s/:/g; print $s;' > Makefile
>>759 おおー!それです。ありがとうございました。
>>763 jar cvf /usr/local/lib/allJar.jar /usr/local/lib/*.jar
javac -classpath /usr/local/lib/allJar.jar test.java
#遅いけど(w
つーかjarにjar入れても動かんだろ。
シュアウェアとフリーのソフトを作ってます。 使える言語は C++, C, アセンブラ です。 javaは一応勉強しましたが 基礎的なマニュアルを読んだ感想だと 1:長い 2:遅い 3:面倒くさい でした。 (↑ごめんなさい…) 移植性とか安定性?の他に java 独自の機能や有効性があったら教えてください。
777 :
デフォルトの名無しさん :02/09/20 19:06
>>776 別に java を使わなくてもいいんじゃない?
>>761 echo export CLASSPATH=$CLASSPATH:`find ~/jardir/*.jar | tr '\n' ':'`
find -name '*.jar' ~/jardir の方がいい気がする
CLASSPATHの質問をしたものです。 スクリプトで生成するって言うのもUNIX的でおもしろいですね。 とりあえずそれで試してみます。 どこのサンプル読んでもクラスパスを設定しろって書いてあるのが気になりますが。 みんな解凍してるのか?それともソースコード入れたら解凍済みのものが入って るんだろうか・・・。
あれだろ、アプリのjarにライブラリのclassを全部ぶっこむって事だろ find ~/jardir -name '*.jar' -printf ';%f'
find ~/jardir -name '*.jar' -printf ';%p' こーか
784 :
デフォルトの名無しさん :02/09/20 21:46
>>776 ・プラットフォーム非依存
・オープン
・ガベージコレクション
OSやストレージに関する部分が抽象化され標準化されているから
開発者がひたすらビジネスロジックの構築に注力できるのが強みかな。
ガベージコレクション、これ曲者。 何も意識せずにビジネスロジックの構築に注力すると、 オブジェクト参照がどうなっているのかが疎かになり、 簡単にOutOfMemoryErrorが発生する。
それはある。ま当然だが、よーするにヘボプログラマでも 上質なコードが書ける魔法の言語ってわけではない。
>>785 別にガベージコレクションがなくてもOutOfMemoryErrorは発生するけどな。
>ガベージコレクションがなくてもOutOfMemoryErrorは発生するけどな ????何が言いたいのか????
>>664 サーブレットとストリーム経由で通信していますが、この場合送信側は
ヘッダを自分で生成し、受信側はヘッダを自分で解析する必要があるのでは
ないでしょうか?"HTTP GET"なんたらとかね。
ふつうサーブレットの枠組みでやっている分には意識しないことですけど。
Javaに限ったことではないのですが、縦書きのエディタの作り方を教えて下さい。 (そういうツールがあるのは知ってますが、自作したいんです。) 横書きのエディタなら作れるんですが、縦にするにはどうしたらいいんでしょうか。 教えて君で申し訳ありませんが、よろしくお願いします
またおまえか。漠然としすぎ。 JavaのSwingでやるなら、TextComponentを継承して表示を適当に どうのこうのするんじゃないの?調べれば? とか、漠然とした回答しか出てこんと思われ 675 :デフォルトの名無しさん :02/09/19 19:01 Javaに限らずなんですが縦書きのエディタって作ること可能ですか? 横書きの普通のエディタなら作れるのですが・・・ 知っている方、知恵を貸してください。お願いします。
>>788 バグ?コードが糞だから、じゃないの?オブジェクト参照が把握できない汚いコード書くから。
>>786 の言う通り。
>>789 OutOfMemoryErrorはGCのせいじゃないだろ、ってコトかと思われ。
web.xmlを簡単に設定できるツールとかご存知ないですか? サーブレットが大量になってくると、手書きはきついっス。
>>794 漏れも面倒臭いので、自作のスクリプトを書きますた。そういうツールがあったらいいよね。
>>791 ヨタ話だが、横書きエディタがあるんなら、描画を90度回転するGraphicsをかますと
お手軽縦書きエディタになるとか。またはGraphics2Dあたりで変形サポートしてなかったっけ。
初心者の頃は「GCあるから楽ちん」とか思いつつstaticなVectorにオブジェクトを追加しまくってたっけ。 あとJFileChooserのメモリリークは1.3.1でも直ってなかったなあ。さっさと直せよ、SUN。
>>797 横書きエディタっても、JTextArea 貼り付けて終わり、とか
その程度のものしか作れてないのでは?
Graphics.drawString() とかで全部自前で描画するぐらい
出来ているんであれば質問せんでも自力で解決してると思うし
>>799 まあそう思うがその前提でこんな感じ↓。ほとんどジョークだが。
public class VTextArea extends JTextArea {
protected void paintComponent(Graphics g) {
Dimension size = getSize();
((Graphics2D)g).setTransform(AffineTransform.getRotateInstance(
Math.PI/2, size.width/2, size.height/2));
super.paintComponent(g);
}
}
漏れもWYSIWYGの簡易HTMLエディタ的な物を作ったときあって、javax.swing.textを使うかどうか迷った。
結局全部自前で作ったけど、そこらへん使ったことのある香具師の話は聞いてみたい。
>>793 >OutOfMemoryErrorはGCのせいじゃないだろ、ってコトかと思われ。
そういうことね。
うちの会社の研修(といっても外部の講師)が糞なのか、
世間一般的に糞テキストしかないのか、あまりメモリを意識させた
コーディングって見かけない。(あってもI/OやDBの開放程度か)
GCが自動的に不必要なものを開放してくれるってのをあんまり強調しないほうがいいのかもね。
792さん、797さん、799さん、800さんアドバイスありがとうございました。 おっしゃるとおり、JTextAreaを使ったものです。 さっそく試してみます。本当にありがとうございました。
803 :
よろしくおねがいします(続き) :02/09/21 14:01
>>790 さん
返答ありがとうございます。
早速ヘッダを解釈する部分の関数を作成して
ためさせていただきます。
結果書き込みはもうしばらくお待ち下さい。
やる気が出てきました。ありがとうございます。
ご教授、ありがとうございました
805 :
デフォルトの名無しさん :02/09/21 15:02
パッケージ名に org.domain.productname. ... みたいな名称付けるのは、死守しなきゃならんもんかな。junit とかは別に、 そんなの関係なしにつけていて、なおかつみんな便利に使えているんだから、 俺は気にしないでいこうかと思ってるんだけど。
公に晒さなければいいんじゃないの そのコードが使われる範囲(ドメイン)の中で 間仕切りできていればいいわけで
>>805 パッケージ名が衝突しない保証がある、とか
パッケージ名が衝突しても大丈夫、とか
パッケージ名が衝突した時の事なんて考えてられっか、とか
そーゆー態度ならば好きにすればよいのでは?
別に同意を得るような事でもなし、
同意を得るんなら、パッケージ名くらい
晒してくれんと何とも言えんし。
厨房がやる分には害が無いけど、影響力のある人達が 俺様パッケージ名ばっかり使うと困るよ
指定スレッドに新規書き込みがあった場合、 携帯にメールで知らせてくれるツールありませんか?
えらく重要なスレッドだな(ワラ
それくらい自分で作れ
大学の合格通知代行しますみたいな商売でもやれ
813 :
名無しです。 :02/09/21 21:15
import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class rel extends Applet { public void init() { Choice cicShopping; int intSum; cicShopping = new Choice(); cicShopping.addItem("ボールペン "); cicShopping.addItem("万 年 筆 "); cicShopping.addItem("シャープペン"); add(cicShopping); } } 上の状態で、 "ボールペン "を選んだ時、 intSum = intSum + 100; "万 年 筆 "を選んだ時、 intSum = intSum + 300; "シャープペン"を選んだ時、 intSum = intSum + 200; と言う機能を追加したいのですが、どうしたらよいでしょうか。 どなたか教えてくださいませんか。
814 :
デフォルトの名無しさん :02/09/21 21:18
jre 1.3から1.4になってプログラム実行速度が速くなるの?
>>805 もうそんなに死守する必要はない…ってどっかで見た記憶が。ソースは忘れた、すまそ。
一応、守っておいたらいいんじゃない?いつ、どんな理由でそのコードが流出するとも限らないんだから。
817 :
名無しです。 :02/09/21 22:54
>>785 そういうアホが人から金を取るプログラムなんか組むな、ということなんだが(藁
819 :
デフォルトの名無しさん :02/09/21 23:09
すげえ恥ずかしい質問だけど引数って何?戻り値って何? 教えて。俺、超馬鹿だから本読んでわからなかった。
引数:関数に渡すデータ 戻り値:関数の出力データ X=F(Y)なら、Yが引数、Xが戻り値。
>>818 サーバーサイドなJavaが流行ってるが、そこに投入される人間ときたら・・・
前のプロジェクトでもJavaやってましたって言ってるが、そいつの作るコード最悪。
まだC++乗換組みのほうがメモリの開放を気にしてくれる。
>>820 数学嫌いだった人間?
>X=F(Y)
y=f(x)
y=F(x)
Y=F(X)
........
>>821 いくらなんでも、サーブレットはオブジェクトのスコープ
(ライフサイクル)くらい分かってないと、まともなコード
かけないはずだが・・・
サーブレットでは基本的にstatic禁止していいはず。
それさえしとけば、最悪オブジェクト越しに確保された外部
リソースであってもGCがいつかは解放してくれるはずさ。
824 :
デフォルトの名無しさん :02/09/22 04:54
UNICODE文字列からEUC文字列にするにはどうしたらよいのでしょうか? s = new String(s.getBytes("iso-8859-1"), "EUC_JP"); としてもうまくいきません SJISの場合は s = new String(s.getBytes("iso-8859-1"), "Shift_JIS"); でいけたのですが・・
>>824 Java の String は Unicode しか扱えません。「EUC のバイト配列」なら取り出すことが出来ます。
byte[] euc = s.getBytes("EUC_JP");
>>824 まず、自分のやろうとしてることを誤解している。
そのイディオムは、間違った文字コード変換を矯正してるだけ。
つまり、EUCのバイト列を間違ってラテン文字として読み込んでしまったのを、
バイト列に戻して、改めて「これはEUCのバイト列だぞ」って宣言して
EUC→Unicode変換して、正しいJavaの文字列(Unicode)にしてるんだよ。
http://www.iana.org/assignments/character-sets Name: Shift_JIS (preferred MIME name)
:
Alias: MS_Kanji
Alias: csShiftJIS
Name: Extended_UNIX_Code_Packed_Format_for_Japanese
:
Alias: csEUCPkdFmtJapanese
Alias: EUC-JP (preferred MIME name)
すんません。マジです。 javascriptは相当やってんですけど、javaもやってみたいんですけど、 javaとかなり共通性があるんですか。 [初心者]Java質問[大歓迎]だからいいでしょ。
>>828 そですか。せっかく覚えたから使えるかと思ったのになぁ。
じゃ、初心者本から始めますタイ。
>>829 ま忘れた方がいい。全然違う。
appletなら分かるんだが・・・
>>830 appletっていう部分では、役立たないこともないってことですね。
コード見ると、かなり似てることは似てるので・・・
まあ、やってみるに越したことないですね。2年位前Jbuilderだったっけ
雑誌付録インストールしたけど、忙しくなってそのまま。っていうか
そのマシンは、8年前ので使い物にならなくなってる。
825,826 レスありがとうございます。 しかしまだしっくり理解していないかも知れませんが・・・ UnicodeのStringで String s = "Insert INTO MYTABLE(mycolumn) VALUES('テスト')"; このような文字列を保持していて それをポストグレスDB(EUC必須)に書き込むときは byte[] euc = s.getBytes("EUC_JP"); としてeucを書き込めばいいのでしょうか?
>>832 そんなアホみたいなことするなよ。JDBCドライバが変換してくれる
835 :
デフォルトの名無しさん :02/09/22 19:00
IRCのクライアントをJavaで書いてるんですが、 //接続用のメッセージを送信 //書き込み省略 //接続歓迎メッセージの受信 InputStreamReader isr = new InputStreamReader(this.connection.getInputStream()); while ((c = isr.read()) != -1) { System.out.print((char)c); } としてローカルでテストしてみると、メッセージが帰ってきたあとのisr.read()で固まります。 なんかアプローチの方法と自分自身がまちがってるような気がしてきたので質問させてください。 ど う す れ ば い い の で す か ?
>>823 ツーか、いまだに大量のサーブレットかいてるのか?
普通、サーブレットから呼ばれるBeanとか単純なビジネスロジックくらいしか書かないんじゃないの?
838 :
デフォルトの名無しさん :02/09/22 19:15
Java重すぎ、使い物にならねぇーYO
839 :
童貞くんw :02/09/22 19:16
セクースのプログラムおしえてください
840 :
デフォルトの名無しさん :02/09/22 19:17
>>385 > InputStreamReader isr
大文字だけ取って変数名にするのはヤメレ。
streamReader とかがおすすめ。
841 :
デフォルトの名無しさん :02/09/22 19:17
JavaはGUIもネットワークプログラミングも簡単で出来て素晴らしいけど・・・ 重い。使う側にとって一番重要な部分が・・・アイタタ
>>840 プライベートみたいだし変数名なんて書く人の好みでいいじゃん。
それとも 840 == 835 で自問自答してるのか?
843 :
デフォルトの名無しさん :02/09/22 19:21
初歩的な質問なのですが、 たとえば、1/3というのは0.333333.....とずっと続くのですが、 これは最後はjavaは四捨五入するのでしょうか? ちょっと試したのですがわかりませんでした double a,b; a = 1/3.0; b = a*1000000; としても、ずっと3が続いているのでわかりませんでした。
>>843 メモリ上では十進数じゃないから意味なし
>>844 そうなのですか?ということはまるめ誤差は発生しないのでしょうか?
846 :
デフォルトの名無しさん :02/09/22 19:33
>>843-845 あえて言うならdoubleの有効桁数までは保持している。
doubleは2進数で値を保持していて、10進表現に直したときに0.3333... が続くだけ。
もし、最初から最後まで10進数で計算(誤差も自分で制御)したいならBigDecimal使うよろし
>>847 丁寧な解説ありがとうございます。
保持しているのが2進数であっても、doubleで扱える(小数)桁数には限度
がありますよね?それは、進数表記はどれであったにしろ
あふれた分はどうなってしまうのでしょうか?
>>848 847はいい加減な説明だから、正確に知りたければ計算機の教科書を見ると良い。
Javaに限った話ではないし、探せばWeb上にもあると思う。
簡単に言えば規格に沿った形で丸められる。
>>849 そうなんです。そのまるめの誤差なんですが、
結局 四捨五入か 切り上げか 切捨てかを知りたいんです。
やはり四捨五入でよいでしょうか?
>>850 だから2進数の基本的なところを勉強しろって。
「四捨五入」なんてのは10進数に対してしか意味を持たない。
今 jdk1.4.1 fcs で試したんだけど 内部クラスを Class.forName() するとき Class.forName( "package.outer.inner" ); //ClassNotFoundExceptionを投げる Class.forName( "package.outer$inner" ); //動作する ってな感じになってるんだけど、 これって仕様で決まってるのかな?
>>850 2進数を理解していないね。
2進数で桁が有限である小数(doubleもこれ)でも、
10進数にすれば循環小数になるんだよ。
だから、10進数の意味で「最後の桁」は存在しない。
ただ、打ち切りだから、真の値よりも小さいだろうとは
想像できるけど、最後の方の桁はゴチャゴチャになってしまう
ん、なんか勘違いしてたかな。 「打ち切りだから」ってのは実際の割り算のアルゴリズムが わからなければ言えないな。そこまでは知らん。 「浮動小数点数」をキーワードに勉強してみれ
参考: 1/3 (10進数) = 0.0101010101... (2進数)
>>853 >2進数で桁が有限である小数(doubleもこれ)でも、
>10進数にすれば循環小数になるんだよ。
2進数で循環小数でないならば、
10進数でも循環小数になりません。
みなさん、ありがとうございます。 gaussの消去により、連立一次方程式を解く数値計算のプログラムを書くのですが、 注意すべきてんがあるかなとおもっていたのです。 うまく出るかな。それとも許容範囲としてある数以下は削除したほうが いいかなあ まるめにより小さくなるけど、詳しくはわからないということですね
>>852 Inner.class.getName() → "Outer$Inner"
>>859 いや、仕様で明文化されているものがあれば知りたいだけだから。
>>858 除算は極力最後。
差の絶対値が大きい数同士の演算に注意。
>>858 浮動小数点数で精度保証するのは難しいんじゃないかな
そうですよねぇ・・・
>>863 吐き出し方は式(行ベクトル?)を選ぶ順番に
自由度があるから
>>861 に留意してなるべく誤差が少なくなる順に適宜入れ替えて計算すればOK
つーかまずはそれなりの答えのでる版を先につくれ。
いっぺんに欲張るとろくなことは無いぞ。
>>864 了解しました!
ありがとうございます!
ピボットを選ぶときに、大きいものを選ぶようにしろってことですよね?
>>837 そうだったのですか。勉強になります。
結局、スレッドを使って接続が切れるまで待ち続けることにしますた。
InputとOutputのループが同時に回っていれば、
たぶんだいじょうぶかと思われまする。
スレッドを使っての出力と、チャンネルへのJOINまで成功しました。 ただ、IRC側から送られてくるデータをStringに取ってきて出力しているのですが、 「あいう」が送られてきたとき、「$B$"(B$B$$(B$B$&(B」となってStringに格納されます。 このままじゃ日本語が読めません。 質問は2つです。 1)デコードが必要だと思うのですが、そもそも何形式でエンコードされているのでしょうか? 2)Javaのクラスライブラリを使うだけで、これをデコードする方法はあるのでしょうか? 教えてください。お願いします。
>>867 元スレに参考サイト書いといたぞ
Javaなら、Stringクラスのコンストラクタ(かvalueOf)とgetBytesあたりで
もしESCコードが抜けてないなら、JISAutoDetectの指定も使えるかも
>>867 "JIS" とか "SJIS" とか "EUC_JP" とか全部試せ。
なんか JIS っぽいような気がするけど。
詳しくは RFC とか プロトコルの仕様書に書いてあるんじゃない?
すごく参考になりました。 ありがとうございます。
getByte()は遅いのでInputStreamReaderとBufferedReader使いましょう
いま"JISAutoDetect"で試してます。ircd接続までの時間が長いです。
BufferedReader br = new BufferedReader(new InputStreamReader(uc.getInputStream(), "JISAutoDetect")); IrcInputThread iit = new IrcInputThread(); iit.setBufferedReader(br); iit.run(); :test!~test@127.0.0.1 PRIVMSG #test : 出力できました。おせわになりました。
"JISAutoDetect" は一見便利だけど 文字コード確定するまで無反応になってしまう罠。 チャットには向かないと思う。
>>875 "JIS"でもイケました。ということは、こっちのほうがいいですね。
なぁ、アプレットでファイルの書き込みはできないが読み込みはできるよな? なんかセキュリティエラーが出るねん。
>>877 そんな事できたら個人情報漏れまくりじゃん
Javaのプログラム中でテキストファイルの差分取りたいので、diffのライブラリがほしいです。 ない?
881 :
デフォルトの名無しさん :02/09/23 21:42
すげえ基本的な質問なんだけど、どうしてJDK/JREに含まれてる標準クラス を使う場合は、CLASSPATHの設定が不要なの? javaはどうやって標準クラス のある場所を知ることができるの?
>>881 WIndowsならレジストリから取得していると思ったがどうか
883 :
デフォルトの名無しさん :02/09/23 22:12
884 :
デフォルトの名無しさん :02/09/23 22:15
お前ら、こんな単純な質問にさえ答えられねえのか?
885 :
デフォルトの名無しさん :02/09/23 22:20
環境変数JAVA_HOMEって、設定しなくても動くしなあ... どうして??? オレも知りたい
全フォルダを検索してるのですよ。
j2sdk1.4.0をインストールしたんですが, このあとにAutoexec.batの中にpath= C:\jdk1.4.0\bin;%PATH%;c:\toolsを書きこめとあるんですが, 普通に1番下に書きこめばいいんでしょうか?
>>881-885 J2SEのsrc.zipを展開するとラウンチャのソース入っているよ。
Win32だと java_md.c から GetModuleFileName してる。
BufferReaderで読み込んだファイルを別のjavaでできたプログラムに送るには どうすればよいでしょうか? readLine()で一行ずつStringにして送ると言う方法は知っているのですが、 都合でできれば、ファイルのまま送りたいと考えています。
>>888 ちゃんとソース見てないな。
.exe ファイルの場所を調べた後、見つからなければレジストリを見る。2段階だ。
>>881 JDK/JREの相対パスから辿るんじゃねえの?ライブラリパスのフォルダ名
変えてやってみれば?
892 :
デフォルトの名無しさん :02/09/23 23:21
javaでのイベント駆動方式プログラミングに関する質問です どなたか お答えできる方がいたら教えて下さい ぶっちゃけた話 java.util.EventObject や java.utilのEventListener を継承(実装)して、 独自のイベントとリスナーによるオブジェクト指向プログラムを組みたいんです。 ですが EventListenerインターフェースの方が API仕様書を見ても何のメソッドも描かれてなくて・・・ どちらかというと AWTEventListener の方が最上級のスーパークラスとしては「それっぽい」ように思われるのですが・・ やはりawtを使うしかないんですかね? CUIは捨てろってことですか?
j2sdk1.4.0をインストールしたんですが, このあとにAutoexec.batの中にpath= C:\jdk1.4.0\bin;%PATH%;c:\toolsを書きこめとあるんですが, 普通に1番下に書きこめばいいんでしょうか?
>>889 よく分からんが 別のJavaアプリから
そのファイルを読み込めばよいだけでは?
>>892 public interface CUIEventListener extends EventListener{
public abstract void eventDispatched(CUIEvent event);
}
とか やれば良いではないか。
>>893 ネタにマジレスすると、OS ぐらい書けや ゴルーーーア
java.lang.Cloneableやjava.rmi.Remoteと同じく 単なる印付けのinterfaceなんでしょ<java.util.EventListener interfaceと言っても必ずしも実装すべきメソッドがあるわけではない 言い方は不正確だが、実行時の型を規定するものなだけだから
java内部でのイベントの発生、キャッチの仕組み自体 良くわかってないってのもあるのですが・・・
>>895 さんのようにやると プログラム内でイベント(CUIEvent event)が発生、あるいは意図的に発生させた場合
リスナー(CUIEventListene)は自動で呼び出されるのでしょうか?
リスナー登録の仕方などもひょっとすると変わってくるような気がしなくもないのですが
>>897 Cloneable は public Object clone() を期待されたりとかあるので
単なるシルシってのとは ちと違う気もする。
>>898 …AWTEvent を外部入力によらずにプログラム内部で「発生」させて
自動でリスナーが呼び出されるか試せば?
>>985 -
どうもありがとうございます 参考になりました
確かに実際にやってみないとどうにもなりませんね・・・がんばってみます
>>896 OSは,win98です。
j2sdk1.4.0のフォルダは,Cドライブにあります
で、diffライブラリはないのかね。
Javaと松茸と先行者の関係を教えてください
javacコマンドを使えるようにするためには,どうすればいいのでしょうか? OSは,win98です
907 :
デフォルトの名無しさん :02/09/24 07:14
>>907 句読点の打ち方からみるに、906=902 だと思うけどな。
910 :
デフォルトの名無しさん :02/09/24 07:33
912 :
デフォルトの名無しさん :02/09/24 11:39
servletを作ろうとしていますが、ソースをコンパイルすると “javax.servlet.は存在しません” と言われてエラーになります。 なんかの雑誌についてたサンプルソース(「Hello」と表示させる) でさえコンパイルできないので、 そもそもj2sdkのインストールがうまくいってないのかとも思いましたが、 どのようにチェックすればよいのかわかりません。 環境はwinXP+j2sdk1.4.1で、 アプレットはコンパイルできてます。
>>912 Tomcat4インストールしとけ。zip版がお勧め
914 :
デフォルトの名無しさん :02/09/24 12:06
Java開発ツールは何がよいでつか(・∀・)?
本格的 → JBuilderかEclipse HelloWorld → Vectorで探す
917 :
デフォルトの名無しさん :02/09/24 15:57
HTMLに組み込まれたパラメータからアプレットにデータを渡すとき、 アプレットはgetparamでその値を取得できますよね?。 ところで、アプレットから他のページ(アプレットの有るページ) にジャンプさせて、ついでにジャンプする前のアプレットが保持していた 変数データも一緒に転送するってことは可能ですか?。 そういうことが詳しく書かれたサイトなどが在ればお教え願いたいのですが・・。 いろんなサイトを回ってみたのですが、自分が望む情報が 見つけられなかったので、知っておられる方よろしくお願いします。
クッキー?
>>915 Webアプリ & タダ -> SunONE Studio(Forte) + Tomcat4.0.4
サーブレットの実行に伴って、指定したURLを新規ブラウザ(ユーザーがデフォルトで指定しているブラウザ)を立ち上げて実行させる方法をご存知の方、いらっしゃいませんか?
922 :
デフォルトの名無しさん :02/09/24 20:26
Object の生成はコストがかかる(生成も GC するときも)というのは分かりました。 では、int[] array = new int[2], というような配列を生成するのも、あまり膨大な数 (膨大というのは、クライアントアプリで、一秒間に50回くらい) やるのはよろしくない のでしょうか。
924 :
デフォルトの名無しさん :02/09/24 21:01
JAVAからVBのプログラムをスレッドで実行するにはどのようにやれば良いのでしょうか。
925 :
デフォルトの名無しさん :02/09/24 21:08
JAVAで指定した幅に右詰めに値を出力するにはどうすればよいのですか? Cでは printf("%10d",a); などと書けば、よかったと思いましたが。
926 :
デフォルトの名無しさん :02/09/24 21:09
JDKとかって色々種類ありますよね? どれダウンロードすればいいんですか? 英語でまったくわけわからないんですが(英語がわからないならヤメロって言われるの覚悟してます)。 もしよければダウンロードページのアドレスも付けて教えてください。
>>921 それはHTMLやJavaScriptですることだ。よそで質問しれ。
>>922 一秒間に50回だけ、なら大した事無いと思うけど…
(iアプリとかのpoorな環境の場合は知らん)
心配だったら配列使いまわすタイプと生成するタイプを
作って比べてみたら?
>>922 作ってすぐ廃棄なら、世代別GCが頑張ってくれるさ。気にすんな。
>>913 ,914
ありがとうございます。
あれからTomcat4入れてみたのですが、
いまだに状況は改善されていません。
インストールや設定に悪戦苦闘しているというのもありますが。。。
もう少しがんばってみます。
apacheもうまいこと連動してくれない。。。
>>931 Tomcat4.0.x なら、common\lib\servlet.jarをクラスパスに加えるとよいかと。
>>932 Windows(各国語)のSDK。ついでに日本語版 J2SE 1.4.0 ドキュメントもDLしとけ。
935 :
デフォルトの名無しさん :02/09/24 22:08
>>934 やっとダウンロードできました。
ありがとうございました。
937 :
デフォルトの名無しさん :02/09/24 22:59
便乗だけど、 printf("%-10.4s", "あああ"); の場合は? 問題は2つあるんだけども。
文字幅を考慮しろってか
短くやるにはgetBytesとarraycopyくらいしか
940 :
デフォルトの名無しさん :02/09/24 23:34
java.util.ResourceBundle#getStringArray() を使うときの propertiesファイルの書き方を教えてください もしかしてオブジェクトの文字列表現とかですか?
>>940 .propertiesファイルでは、PropertyResourceBundle(値はすべてString)の
インスタンスになるので、無理。
任意のクラスを直接持たせたければ、ResourceBundleを継承したカスタムクラスを
書くしかないが、アフォらしいから、普通はカンマ区切りか何かにして書いて、
読み込んでから分割するとかするもんだと思うが
問題は2つ。 1つめは、この場合には後ろに0x20がつかなければならない。 2つめは、文字幅。 ちなみに.NETは文字幅は考慮されない。 FontMetrics使って実現はしているんだけど、 ほかの人はどうしてるのかと思って
>941 ありがとうございます SDK付属デモのNotepadでスペース区切り+StringTokenizer使ってたので、それでやってみます しかし無理だったとは・・・
944 :
デフォルトの名無しさん :02/09/25 01:29
Javaアプレットを印刷しようとしてもカラーにならないんですがどうしたらいいですか?
画面キャプ or デジカメ
>>945 やってみます。
ありがとうございます。
いまいちオーバーライドの重要性がわからないんですけど・・・
949 :
デフォルトの名無しさん :02/09/25 03:36
あ、分からないのが仕様って意味じゃなくて、 オーバーライドを使わないと何もできないような 言語仕様だということです。
951 :
デフォルトの名無しさん :02/09/25 05:00
Javaでゲーム作るのにUMLの知識ははどのくらい必要ですか?
952 :
デフォルトの名無しさん :02/09/25 06:30
java2 SDK Standard Edition V1.3.1_04 java2 SDK SE v1.4.0_01 の2つがインストールされているのですが、 (そのうち1.3は携帯プログラムに使用中) autoexec.batにはSET PATH=C:\j2sdk1.3.1_04\bin と設定してあるのですが、 コマンドまたはファイルが正しくありませんと表示されてしまいコンパイルできません。なんでなのでしょうか?
>>952 で、インストールしてあるパスはあえて秘密なの?
>>920 ありがとうございます。
送信先URLにGETの仕様として送るってわけですね(^^
無事添付して送信できました。
955 :
デフォルトの名無しさん :02/09/25 09:29
>>951 一応、実装のアイデアをまとめるのに使えるかもしれない。別に厳密に知る必要はなくて、
クラス図とかシーケンス図が便利に使えればそれでいいんじゃないか。
>>955 UMLをJavaで実装するには本が多いのがうれしかったり。
>952 パスの話は周期的にでてくるね このスレのちょっと前にもあったけど コマンドまた・・・ってでるのは パスが正しくないから。 C:\j2sdk1.3.1_04\bin 配下ににjavac.exe等々はあるのか? ないならある場所を設定してみ OSによってはautoexec.batいじってもしょうがないけどさ
レスしてくれた方々ありがとうございます。感謝。 Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion' has value '1.3', but '1.4' is required. Error: could not find java.dll Error: could not find Java 2 Runtime Environment. ↑翻訳↓ レジストリ・キー「Software¥JavaSoft¥JavaランタイムEnvironment¥CurrentVersion」は、値「1.3」を持っています。しかし、「1.4」が要求されます。エラー:java.dllエラーを見つけることができませんでした:Java 2ランタイム環境を見つけることができませんでした。 たびたびすみません。さきほどは957氏のとおりでした。 Meなのでシステム設定ユーティリティのPATHがびみょ~にタイプミスしてました。 で、 今度は↑のようなエラーが出てしまいました。 1.4を独習javaの付録CDからインストールした後 携帯プログラムのために1.3をインストールしたため952の通り 2つのバージョンが混在しているのですが、 どうしたらいいのでしょうか?
>>958 C:\Windows\java.exe と javaw.exe を削除しろ。
Javaの複数バージョン共有をしたいなら、 「環境変数設定+開発環境起動」用のバッチファイルでも書けばいいじゃん。
961 :
デフォルトの名無しさん :02/09/25 15:29
ファイルの書き込みと読み込みについて質問です。 C のように fwrite(&(構造体変数),sizeof(構造体の型),1,fp); fread (&(構造体変数),sizeof(構造体の型),1,fp); のようなかんじで、変数を一括してread,writeできる方法ってないですか? 使用する変数の変更があった場合や変数の型が異なる場合、 read用、write用のメソッドを両方いじらなければならないのが かなり面倒なのですが。
>>961 Serializable, ObjectOutputStream/ObjectInputStream
JDKをインストールしたのですが、そのあとAutoexec.batをなんかいじくるらしいのですが、全くわかりません。 ゼロから教えてください。
964 :
デフォルトの名無しさん :02/09/25 15:54
static メソッドってオーバーライドできないんですか?
JAVAで 罫線ひいて カラーで印刷するには どうしたらいいのでしょうか?
>963 本を買うか、ぐぐれ
967 :
デフォルトの名無しさん :02/09/25 16:06
public class ..... { public method(){ } class hoge extends .... { } } のようにクラスにクラスを書いてる人のコード見たのだけれども どういう事?始めて見た。 私的にはとても納得がいかないコードなのですが。
>>967 Inner クラスという奴だ。Java で多重継承チックなことをやりたい
時や、C++ でいう friend クラスモドキを作るとき、ちょっと使う
クラスを別 Java ファイルに書くのが面倒なときなどに使う。
971 :
デフォルトの名無しさん :02/09/25 16:12
内部クラスですか。 あまり御行儀の良い書き方だとは思えないんですが、なぜこの様な書き方するの でしょう? クラスの定義などは*.hファイルに分けたりするのにどうして?
>>971 多態と隠蔽を使いこなせるようになったとき、激しく便利な機能だと
気づくはず。
>クラスの定義などは*.hファイルに分けたりするのにどうして? 分けたりしません。っつか、クラスの定義(?)部分を ヘッダファイルに分けるのって気持ち悪いね。
なるほど、良く分かりました。有り難うございます。 多重継承もどきですか。こういう場所で大丈夫なのかな?
>>973 ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
>>971 ソースを読んでも「なぜ」の部分がわからないってのも困りものだが…
ヒマなら 内部クラス使わないように そのソースを改変してみれば?
> 多重継承もどきですか。こういう場所で大丈夫なのかな? ポカーン
>>975 ここは Javaの初心者用相談スレだったと思うが。
C++ の 「ふつー」 を論じられても…
それに C# も Delphi も クラス定義(?)をヘッダに分けたりしません。
C++ のクラス定義(?)をヘッダファイルに書くのは
C の負の遺産の一部だと思ってたんだけど、
まぁ感じ方は人それぞれって事で。
979 :
デフォルトの名無しさん :02/09/25 16:30
>>962 まだインターフェースも良くわかっていないんですが、(w
データクラスにimplements Serializableをつけて、
後は言われたようにObjectOutputStream/ObjectInputStreamで
できました。
ありがとうございます。
>>967 あるクラスをインスタンス化する権利を独占したい場合、
内部クラスにするのが普通と思われ
(他のやり方もあるかもしれんが)
981 :
名無しです。 :02/09/25 16:42
import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class rel extends Applet { public void init() { Choice cicShopping; int intSum; cicShopping = new Choice(); cicShopping.addItem("ボールペン "); cicShopping.addItem("万 年 筆 "); cicShopping.addItem("シャープペン"); add(cicShopping); } } 上の状態で、 "ボールペン "を選んだ時、 intSum = intSum + 100; "万 年 筆 "を選んだ時、 intSum = intSum + 300; "シャープペン"を選んだ時、 intSum = intSum + 200; と言う機能を追加したいのですが、どうしたらよいでしょうか。 どなたか教えてくださいませんか。
星のデジャブー
addActionListener
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
>813>981 次スレ立ててね そしたら答えてもらえるかも☆
と煽ってみるテスト
>>984 C++ でインナークラス作るのか?
Java に C++ の「御行儀」を持ち込もうとしたから
「感じ方は人それぞれ」と嗜めたつもりなんだが。
addItemListenerか
>>987 (C++ なら) クラスの定義などは*.hファイルに分けたりするのにどうして?
↓
分けたりしません。っつか、クラスの定義(?)部分をヘッダファイルに分けるのって気持ち悪いね。
↓
ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
↓
ここは Javaの初心者用相談スレだったと思うが。C++ の 「ふつー」 を論じられても…
↓
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
↓
C++ でインナークラス作るのか?
結論: 日本語を理解しろ
>>989 C++ なら) クラスの定義などは*.hファイルに分けたりするのにどうして?
↓
(Javaなら)分けたりしません。っつか、クラスの定義(?)部分をヘッダファイルに分けるのって気持ち悪いね。
↓
ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
↓
ここは Javaの初心者用相談スレだったと思うが。C++ の 「ふつー」 を論じられても…
↓
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
↓
C++ でインナークラス作るのか?
自分の発言だけ 語を補うってのは感心しませんな。
991 :
デフォルトの名無しさん :02/09/25 17:25
俺が
>>971 だと勘違いしている方が居られるようですが。
質問者並の表現能力で開き直られてもねぇ。
1000!
sage
995
997
(゚∀゚≡゚∀゚)
次スレだれか立てといてね☆
1000get
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。