08/11/22 04:53:56
>>158
VRというと1995年頃のあれでしょうか。
たぶんどんなに有用なりソースを紹介したところで、あなたの脳みそが順次処理(フローチャートw)に染まってるようなのでいくらUMLやOOを勉強しても無駄だと思います。
今でもまだ理解が足りませんが、私もOOの発想に切り替えるのに苦労したんでw
今教えて差し上げられる事は、先も書きましたがVRっぽくいえば、「大量の頂点座標の計算結果は、とくに描画せずに破棄してもよい」ということでしょうか。
ただ、同期しないといけないところは当然そのオブジェクトが有機体として一つになっているので、
例えば、首は右を向いた(イベント)なのに、胴体だけはpaintが追いつかず、表示しても首が180度回っちゃっているオーメンの呪われた少女wみたくなってるわけです。
これは、上のswingのように、胴体だけは座標計算は終わっているがイベントキューのためにpaint命令がつまっていてpaintが追いてないわけです。
ただこれも解決法がいくつもあるんで、こういうのは(数学上・手続き上で解決できる程度の)アルゴリズムとかですかねw
従来と同じ問題がありますが、100人でやる2人3足のように、そういう足が遅いものは他のオブジェクトからすると迷惑だと思いませんませんか?
176:デフォルトの名無しさん
08/11/22 05:25:20
>問題は、ユーザの操作シーケンスと計算(というかアプリケーションが 実現する処理一般)の内容は一致させる必要がある、という点です。
3Dとか複雑なアプリを作るぐらいになっているなら、プログラムをその場しのぎの独学でやるんじゃなくて、
ちゃんと数学知識の裏づけを持って作ってみたらどうでしょうか。
たぶんこの一文から見てもあなたは小技をいっぱい知ってるが・・・って程度なのが分かります。
例えば、1秒で60フレームとかにこだわらず、10フレームでいいんじゃないでしょうか。それが今のソフト上の限界なのかもしれませんが、あなたの発想は、数学ではなくて、その限界を飛び越えようとする哲学か何かをもってるんじゃないですか?
しかしその小技もシーケンシャル処理だと通用しても、オブジェクト指向だとまったく通用しなくなるんで、その辺りの発想が抜けてないんじゃないかと思います。
別に小技がダメだとかOOがいいんだとか言うのじゃなくて、class数が多くなったアプリだと一人のデベロパがそれを理解することや管理するのが不可能で、もう既にシーケンシャルの発想のままじゃ無理ですよ。
>なので、仮に最近のOOを用いたアプローチでより洗練された設計
javaなら、javafxとかですかねwまだアルファみたいですけど、このプロジェクトが完全中止になる事はないでしょう。
他には、頑張ってるみたいですけど、adobe flashとかも正当な2d guiの進化をしている気がします。
177:デフォルトの名無しさん
08/11/22 05:26:47
>イベントドリブンモデルでは、リソースに適切な順序でロックをかけるのが非常に難しい
だから、コンポネントを「情報表示のコントロール」と考えるとイベントと連動する発想で実装したくなりますが、
「コンポネントは独立していて、一種のアニメーションである」とかだと発想も変わるんじゃないですか。
旧来の発想ではいくらハードが進化しても描画イベントまち(paint)でもたつくわけで、これはソフト(toolkit)の描画機構の問題です。
つまり「コンポネントはイベントと連動して表示しなければならい」という発想が今の限界になってるんじゃないでしょうか?
これだけ問題点が出てきてるんで、後はこれを解決するような設計や機構をUMLとかで作るだけですよw
いくらguiが2dや3dを容易に扱えるようになっても、情報結果表示専用コントロールなどといった発想のままでは今後もテキストエリア程度のまま次の10年がすぎるんじゃないかなと思います。
178:デフォルトの名無しさん
08/11/22 05:31:11
質問させて頂きます。
仮に
KeisanというClassに
public int add(int x, int y){
return x + y;}
というメソッドがあるとし、このメソッドをKeisan以外のクラスで使用するにはどうすればいいのでしょうか。
よろしくお願いします。
179:デフォルトの名無しさん
08/11/22 05:45:42
なんか勘違いしてたのですが、オーメンじゃなくてエクソシストの少女でしたw
最後は神父さんが興奮のあまり2階の窓からダイブしちゃうアレですw
URLリンク(images.google.co.jp)
180:デフォルトの名無しさん
08/11/22 06:09:00
>>178
インスタンス化してaddメソッド呼び出しするんじゃないの?
181:デフォルトの名無しさん
08/11/22 06:10:33
並列処理の人もいるみたいなんでコメントしておきますが、
>イベントドリブンモデルでは、リソースに適切な順序でロックをかけるのが非常に難しい
これもすぐにソリューションが浮かびますよw
ただ私は仕事や専門でやってるわけでも報酬をもらってるわけでもないので、それをお答えするつもりはありません。
一番大事な事は、その問題の効率的・合理的な答えが存在することじゃないですか?
たぶん、並列処理のツールを実際何かで使ってみたり、簡単なGCを実装してみたりすると、あなたもよいアルゴが浮かんでくると思います。
今作ってるのはグラフ理論ですかね。
URLリンク(bkv.so-net.ne.jp)
URLリンク(iv.xight.org)
みたいのでしょうかw
というよりも、今までの私たちの発想になかった次世代のコンポネントの感じがしませんか?
182:デフォルトの名無しさん
08/11/22 06:13:24
インスタンス化する方法を教えてください。もしくはTUTORIALなどのリンクなどでも結構です。
183:デフォルトの名無しさん
08/11/22 06:14:51
new か?
184:デフォルトの名無しさん
08/11/22 06:18:34
>>175
>たぶんどんなに有用なりソースを紹介したところで、あなたの脳みそが
>順次処理(フローチャートw)に染まってるようなのでいくらUMLやOOを
>勉強しても無駄だと思います。
またまた、そんな出し惜しみせずにw
無駄かどうかは自分で判断しますし、少なくともコードは読めますから、
まずは具体例を列挙してもらえると大変助かります。
特に「実験実装」事例に興味があります。
>>adobe flashとかも正当な2d guiの進化をしている気がします。
幸いFlashについてはFlexについてライブラリの構造やイベント処理周りに
関してある程度理解があります。これまでの議論と関連して、どの辺りが
特に優れていると感じられますか?
一つ気になったのは、重いイベントの破棄や、フレームレートの程度や、
コンポーネントと描画の連動の是非は基本的にアプリケーションの仕様
で決まるものであり、OO等の設計論とは別の問題ではないでしょうか。
もう一つ判然としないのは、マルチスレッドの適用範囲です。意図されて
いるのは全体をざっくりMVCに分けたとして、MとVとCの間の結びつきを
非同期にすることを考えられていますか?
それともV相当の部分もより細かく分割して、内部を非同期で処理する
ことを目指されているのか、どちらでしょうか?
185:デフォルトの名無しさん
08/11/22 06:30:10
>>182
Keisanクラスをimportして普通にnewじゃないかな?
間違ってたらごめん。
186:デフォルトの名無しさん
08/11/22 06:56:04
jdkにあるdemoにグラフ理論のデモ・アプレットがあるので(先のリンクと全く同じものです)
それを参考にしたらどうでしょうか。今までの考え方が全く代わりますよ。
flashはもともとアニメーションから始まっているってことを知っているなら、
今までのコンポネントの設計・利用の発想と全く違うし、
MVCは完全に分離されているって事が理解できるのかもしれませんw
あなたのイベントに依存しているpaintモデルは、wikiの記事にもありましたがVCがくっついてるものですかね。
swingやツールキットの設計がOO思考じゃなくて従来のイベント処理を土台にしてるって事なので、
それを利用するアプリは否応なくイベントドリブンの作法に従わなければならないってことでしょう。
いま自作でグラフ論理ライブラリを作って実験してるところなのでなんともいえませんが、
仮にswingと全く逆のアプローチで、全ての視覚コンポネントをnew Thread(comp)としても、人間の感覚に触るようなストレス・コストはありませんよ。
それよりもpaint待ちの0.5秒問題の方がストレスな気がします。
VについてはSwingWorkerのようなソリューションで、内部の描画には触らないほうMVCの完全分離となるんじゃないでしょうか。
コンポネント・コントロール(extends java.awt.Component)は、自分でつくったもののみしかダメって訳じゃないでしょう。
最終的にはレイアウトマネージャの自作実装になるんでしょうけど、まだそこまで手が回らないんですが、
ネットではレイアウトマネージャの実装解説はあまりないですね。
ボタンとかリストぐらいなら、コンテナサイズ変更不可かつnull layoutでいいんでそんなに難しくないんですけど、これは一応guiですが実質的にコマンドライン・プログラムでしょう。
これだけヒントがあれば、必要最小でシンプルなadobe flashライブラリflexの自作などもそんなに難しくないでしょう。
187:デフォルトの名無しさん
08/11/22 08:17:45
最近の情報視覚化やってる連中って「グラフ理論やってる」って自称するもんなのか?
188:デフォルトの名無しさん
08/11/22 08:21:12
>いま自作でグラフ論理ライブラリを作って
ええと、ここは多分グラフ「理論」の事ですよね。グラフ論理だととても
意味が変わってくるので一応確認します。
つまりこれは、グラフ理論を用いて例えば描画にまつわる依存関係や
制約問題を解くライブラリという事でしょうか。
あるいはばねモデルによるインタラクティブなグラフ表示のような、
グラフ「を」描画するライブラリの事でしょうか。
TouchGraphやPrefuseといったライブラリに相当するものでしょうか?
あとFlashがMVCに完全に分離されている、というのは正直どのような
視点から述べられているのか不明確です。MVCのそれぞれに対応する
Flashの構成要素を具体的に示してもらえますか?
189:デフォルトの名無しさん
08/11/22 08:24:02
>>185
Thanks!やってみる。
190:デフォルトの名無しさん
08/11/22 08:53:53
これ人工無能だったら良い出来だよな
191:デフォルトの名無しさん
08/11/22 09:06:18
初心者の質問が無くなるから他でやれ
192:デフォルトの名無しさん
08/11/22 09:29:45
どこいっても迷惑がられると思うんだが
193:デフォルトの名無しさん
08/11/22 10:07:23
デバッグってなんですか。
194:デフォルトの名無しさん
08/11/22 10:38:15
>>193
鞄の中身を取り出して、
要らない物があったら棄てて
また入れ直す作業の事です。
あ、depackかorz
195:デフォルトの名無しさん
08/11/22 10:49:39
livedoorブログを使ってます。
Javaのソースコードをブログの記事に載せたいのですが
如何も奇麗に載せられません。
ソースコード HTML化 コンバーター「唐辛子」も
使ってみましたが奇麗に表示しません。
使い方が間違ってるのでしょうか?
何方かlivedoorブログでソースコード等を奇麗に表示されてる方及び、
奇麗に表示させる事をご存知の方教えて頂けませんか?
よろしくお願いします。
196:デフォルトの名無しさん
08/11/22 11:11:40
>>182
x = new Keisan();
int y = x.add(1, 2);
197:訂正
08/11/22 11:12:23
>>182
Keisan x = new Keisan();
int y = x.add(1, 2);
198:デフォルトの名無しさん
08/11/22 12:38:48
>>188
あなたの文章を読んでいると、あなたは根っからのPG職人ってところですかねw
もし興味あるなら、まずはGraphcis2Dを使えるように勉強したらどうですか?
それと、あなたはいつまでも自分の意見を変えない宗教っぽい人だとおもんですけど、
一筆書き問題を計算して、その結果を表示する事、さらにどの位置にどのような表現で表示するかは、全く別ってことでわかるんじゃないでしょうか。
今作ってるライブラリは根底部分はjdk1.1のアプレットで動かすためにコレクションもMyHashtable, MyVectorとかで自作してるし、
classファイルが100を超えてるんで、UML知ってるかどうか以前にOO指向じゃないと一人では管理する事は明らかに無理です。
というか、こういう苦労話を聞きたいわけじゃないでしょw
199:デフォルトの名無しさん
08/11/22 13:24:55
人工無能のソフトウェアパターンとして、
「はい」か「いいえ」かで答えられるような質問に対しても明示的に答えず、
駄文で文字数稼いで如何にも答えているかのように見せかける
というのがあるのでしょうか。
200:デフォルトの名無しさん
08/11/22 13:27:55
>>186
お前、以前ここで、JFrameが数十回に1回白くなるのはバグだとか
アホを晒してみんなに呆れられてた奴だろ?w
201:デフォルトの名無しさん
08/11/22 13:54:09
>>198
いやぁ、宗教ぽいというより、単に疑問点に対してしつこいだけですよw
どうもあなたのレスの中には次々と新鮮な視点が提示されるため、それらに
対する疑問が解けないうちは意見も変えようが無いじゃないですよね。
特にFlashとMVCの対応は是非とも説明していただけると有り難いです。
これは個人的にはとても新鮮な視点で、故に理解が難しい点も多いです。
例えばFlash界にもCairngormやPureMVCといったMVCフレームワークが
存在します。しかしそもそもFlash自体が明確なMVC構造を持っているので
あればこのようなフレームワークは屋上屋を重ねるものでは無いでしょうか?
一筆書きを解くのと描くのは別問題なのはその通りだと思います。
で、現在開発中のライブラリの目的はどちらなのでしょうか?
202:デフォルトの名無しさん
08/11/22 14:05:39
しまった、真面目に相手して馬鹿を見た……。
203:デフォルトの名無しさん
08/11/22 14:34:14
中二でC言語遣らないで、
Javaから手出して配列とかやってる奴って凄いの?
204:デフォルトの名無しさん
08/11/22 14:47:50
>>200
反応ないところを見るとたぶんそのアホなんだろうなww
こんな鼻糞みたいな奴はほっといて俺達の初心者ちゃんの質問に答えてやろうぜ!
205:デフォルトの名無しさん
08/11/22 15:17:37
>>201
今までの伝統的な手法であったから行き詰まったんでしょう。
ということは全く別な始点でソリューソンする必要があるんじゃないでしょうか。
私から見ると、adobe flash, javafxなんかはtcl/tkの再来(だいぶ違うが)にしか見えないんですけど、
guiのコンポーネント操作(イベントとかも含めたツールキット)は、jvmをプラットフォームにして、java langとanother scriptに分けるぐらいにしないと自然な分離はできないんだなと思います。
つまり、VとCは別のものとして作っても全く問題ないってことです。この辺りに気がつくかどうかは、数学とかパズルのセンスが必要なのかなっておもいます。
逆にいえば、swingはシングルスレットであるって事が強みなんですけどね。
外部調達ならjavax.scriptサポートが必然的に必要だし、invokedynamic bytecodeも必要になってくるって事ですかね。
あまり深く追いかけてませんが、jdk1.1 applet用のライブラリを作っているとEnumerationとEnumeration用の内部クラスばかりなので、
どのjdkでも頻出イディオムだし、クロージャは早いところ仕様をまとめて導入して欲しいところです。
とうか、私はCとかポインタとかもバリバリ使えますよww
ライブラリですけど、アスペクト指向はまだ良く分かってないんでまだですけど、プロトタイプ指向はもう既に実装して実験的ですがライブラリに組み込んでますよ。
描画の方はもう弱点がわかったんでソリューションもできたし、今のところはレイアウトマネージャをどうやって実装するかってところです。
いくつかあるんですけど、グラフ理論に興味があるなら本格的なライブラリならこれですかね。
URLリンク(jung.sourceforge.net)
206:デフォルトの名無しさん
08/11/22 15:22:22
あなたはまず改行を覚えた方がいいですよ
207:デフォルトの名無しさん
08/11/22 15:23:31
トリ付けろ
相手したい奴だけが相手したらいい
それ以外の人に迷惑だ
208:デフォルトの名無しさん
08/11/22 15:28:55
デッドロックを気にしている人もいましたけど、自分で実際に問題となる小さいプログラムを作ってみると上手いソリューションが浮かんでくるんじゃないでしょうか?
MVCのそれですけど、先も書きましたがflashはアニメーションから始まってることを知ってれば、従来のコンポネントとは違うってことを自然と分かるんじゃないでしょうか。
もしくは、>>201はアプレットでアニメーションとか作ったことあると、たぶん今までのイベントモデルでやるんじゃ難しすぎるって事がわかるんじゃないかと思います。
小さい脳みそで考えてばかりいないで、サルみたく手を動かせってことでしょうかww
209:デフォルトの名無しさん
08/11/22 16:01:59
もう俺にはおなかいっぱいw
本とキモイから死んでくれよw
210:デフォルトの名無しさん
08/11/22 16:25:24
やっぱり人工無脳なのかなぁ
211:デフォルトの名無しさん
08/11/22 16:28:01
初心者が質問しにくいナガレだな
212:デフォルトの名無しさん
08/11/22 16:28:31
人工無能でこれぐらいできるなら音声認識&読み上げ機能組み込んで
ボケ老人の相手とかさせたらビジネスになるんじゃないかと思ったりする
213:デフォルトの名無しさん
08/11/22 17:09:45
もうJAVAは難しすぎる!おれはC#にする!絶対!!
214:デフォルトの名無しさん
08/11/22 17:46:39
>>212
それは既に初ねミクで実装されてるよww
おまえ、頭大丈夫か?
215:デフォルトの名無しさん
08/11/22 17:51:38
あぁ、人工無脳を疑うコメにこれまた人工無脳で生成されたかの
ようなツッコミが。頭痛くなってきたよ~
216:デフォルトの名無しさん
08/11/22 18:20:54
ジャバなんか鼻糞じゃんか。オレは最強のMVCであるMICROSOFT.NETをすすめる!
217:デフォルトの名無しさん
08/11/22 18:29:02
ありゃ。一気に脳みそレベルが下がっちゃったみあいw
218:デフォルトの名無しさん
08/11/22 18:49:18
もう次から次から新しいことなんか覚えられないよ
やっぱり俺はC#でいいや
マイクロソフトと俺は心中することに決めた
219:デフォルトの名無しさん
08/11/22 19:06:14
知ってたら教えて欲しい。
javaからクラスパスを取得する方法ってあるかい?
ClassLoader.getSystemResource("hogehoge.ini")
こんなコード書いてるんだけど、nullしか返ってこないんだ。
だから、クラスパスを表示してみてみたいと思ったんだ。
220:デフォルトの名無しさん
08/11/22 19:21:34
System.getProperty("java.class.path")
自己解決した、これで取得できた。
System.out.println(System.getProperty("java.class.path"));
これで表示できた。
ちょっとググルキーワード変えたら出てきた。
221:デフォルトの名無しさん
08/11/22 20:59:08
どうでもいいけど、>>200、>>204。
とてもわかりやすい自演をみた。
222:デフォルトの名無しさん
08/11/22 21:09:00
エスパーさんこんばんは
223:デフォルトの名無しさん
08/11/22 21:38:15
あの・・・エクソシストって映画なんですね・・・その首の女の子がこっち見てるんですけど・・・・
224:デフォルトの名無しさん
08/11/22 22:35:50
Javaの勉強してだいぶ立つんだけど(俺は超底辺のブラック勤務)
独学だからいかんせん抜けが多い。でも市販の書籍だけではとてもきちんと
知識をつけることはできない。色々ググってたら、URLリンク(www.rsch.tuis.ac.jp)
っていうページみてとてもうらやましく思った。で、大学の教科書が欲しくなった。
どうやったら大学の教科書って手に入るの?
225:デフォルトの名無しさん
08/11/22 22:40:33
amazon
226:デフォルトの名無しさん
08/11/22 23:06:11
質問です
文字列の中で変数を使いたいのですが
どのようにしたらよいのでしょうか?
227:デフォルトの名無しさん
08/11/22 23:14:52
変数らしきものを自力で探し出して置き換える
簡単な方法はない
228:226
08/11/22 23:21:20
>>227
そうだったのですか・・・
では面倒ですけど、地道に変数の値を文字列に入力していくことにします。
ありがとうございました。
229:デフォルトの名無しさん
08/11/22 23:30:57
ん?
単純に
int a=3;
String str = "1足す2は" + Integer.toString(a);
System.out.println(str);
とか↑こんな感じのことをいってるんじゃないのか?
230:226
08/11/22 23:44:34
>>229
まさにそんな感じでした。
いま試してみたらばっちり上手くいきました。
ありがとうございました!
231:デフォルトの名無しさん
08/11/22 23:49:38
>>229
String str = "1足す2は" + a;
でいいじゃん。文字列に+するときは自動的にtoStringされる。
232:229
08/11/23 00:45:58
>>231
そうなのけ?Javaはもう4年くらいやってないからよくわからん。。
勉強になったよ。ありがとう。質問者さんも解決したみたいでよかった。
233:デフォルトの名無しさん
08/11/23 01:27:55
>>232
Javaでは、String自身を除く全てのデータ型(nullも含む)について、Stringへの変換が規定されてる。で、+演算子の前後どっちかがStringなら、もう一方もStringに変換される。(Java言語仕様第3版5.1.11, 5.4, 15.18.1参照)
234:デフォルトの名無しさん
08/11/23 03:14:13
String a=10; エラー
String a=""+10; OK
235:デフォルトの名無しさん
08/11/23 05:01:11
>>234
で?
236:デフォルトの名無しさん
08/11/23 10:21:50
沖縄に外国人3000万人受け入れ計画
URLリンク(life.bbs.thebbs.jp)
こんな法案が可決したら日本は破綻する
(ちなみに東京の人口は1280万人)
選挙権がある方は良く考えて投票してください
237:デフォルトの名無しさん
08/11/23 15:06:46
あほみたいな質問なんですが、javaのパスは通るのですがjavacのパスだけ通ってくれません。
使用しているOSはwindows XP HE SP3
インスコしたのはver6のup10
パスの記述は間違っていませんし、実際にその階層にjavacもあります
OSを再起動をしてみるのですが、ずっと迷子のままです
wikiもggrksもしてみましたが、解決法にたどり着けずに苦しんでます
だれか、こんなあほの子に救いの手をください。
238:デフォルトの名無しさん
08/11/23 15:32:06
>>237
「パスが通らない」という意味がわからん。パスは通すもんだ。
マイコンピュータで右クリックメニューを出して「プロパティ」を選択
→「詳細設定」タブで「環境変数」ボタンを押す
→上半分の「xxx のユーザー環境変数」(xxx の部分はお前のユーザー名)のところに、変数「PATH」がないか探す
→→変数「PATH」がない場合は、「新規」ボタンを押して、変数名に「PATH」、変数値に「C:\Program Files\Java\jdk1.6.0_10\bin」を記入し、「OK」→「OK」と押す
→→変数「PATH」がある場合は、PATHの行をダブルクリックして、変数値の末尾に「;」(セミコロン。コロンと間違えないように)で区切って「C:\Program Files\Java\jdk1.6.0_10\bin」を記入し、「OK」→「OK」と押す
→コマンドプロンプトを開いて、「echo %PATH%」と入力してリターンを押す。表示される中に上で記入した値が入っていれば、設定が反映されている
→「javac」と入力してリターンを押し、使い方のメッセージが表示されれば、記入した値が正しいことが確認できる。そうじゃなければ何かミスってる
239:デフォルトの名無しさん
08/11/23 15:55:23
>>238
それでもうまくいかなかった
#echo %path% で通っているにも拘らず
ので、一度windowsから復元をかけてインスコ前にして、
再インスコしました。再インスコしたらうまくいったので、
インスコに失敗していたのかもです。どもです。
240:デフォルトの名無しさん
08/11/23 16:16:04
JSPでフォームに入力したテキストをMySQLに入れるプログラムを作っているのですが、
登録しても登録されていない。
MySQLのログを見ると確かにINSERT文がMySQLに送信されているのですが……
そのINSERT文を丸ごとコピペしてコマンドラインでmysqlコマンドを使って直接ぶち込むと
きちんと登録されます。
エラーログには何も残っていません。
これは何が原因でしょうか?
241:デフォルトの名無しさん
08/11/23 16:20:38
RMI(りもーとめそっどいんヴぉけーしょん)のサンプルをたくさんやってみたいんだけど
オライリーの本しかない(´・ω・`)
でも、オライリーは昔からあんまりすきじゃない(´・ω・`)ピアソンエデュケーションとかがすき。
そういうことでRMIのオライリー以外の本とかRMIのことが割合詳しく載ってるWebページしってるひといたら
おしえて(´・ω・`)
242:デフォルトの名無しさん
08/11/23 16:22:29
オライリーの本って、くどくど長たらしいよね(´・ω・`)
かといって、面白そうなページからやろうとすると、くどくどした
説明のところを何ページもやらないとできないようになってる(´・ω・`)
クックブックとか別だけど。
243:デフォルトの名無しさん
08/11/23 16:36:51
>>238
>javaのパスは通るのですがjavacのパスだけ通ってくれません。
使用しているOSはwindows XP HE SP3
javaは最初からパスが通ってる。だから、パスを設定しなくても実行できる(JVMをインストールした時点で)。
で、パスが間違いなく通っているのにjavacが使えないというのは、100%ない。だからパスが間違ってる。
1)パスとパスの区切りにセミコロンはいれたか?要するに前のパスとの区切りでセミコロンはいれた?
2)パスはエクスプローラ(マイコンピュータなど)を開いて、必ずアドレスバーを表示するようにして
jdkのインストールディレクトリ\binまでたどっていき、アドレスバーの文字をコピーしてパス設定のダイアログに貼り付ける
この際、今まで記述してあったパスとの区切りにセミコロンを必ずいれること。アドレスバーの出し方は↓
URLリンク(www.progless.com)
244:デフォルトの名無しさん
08/11/23 16:41:29
javaの勉強始めようと思ってる大学生です。
まともに使える言語がないので勉強しようと思ったんですが、どのような方法で
勉強するのがお勧めですか?
2週間ほどWebで教えてくれるサイトを巡って、書いてあることをひたすら読んでいるんですが、
正直スキル向上する気がしません。
for,ifなどの基本的な命令は使えます。
245:デフォルトの名無しさん
08/11/23 16:48:53
>>240
ちゃんと MySQL に接続できてるか、とか DB 名(っちゅーか DSN)間違ってないか、とか
テスト用にローカルに立てた MySQL につないでないか、とか調べろ。それ以上はエスパーに頼め。
>>241
2年前に仕事で RMI やったけどあんまり Web に情報無いよね。本もないし…。
仕事ではクライアント側が自分の RMI オブジェクトをサーバに登録して、サーバから呼び出してもらう
ってのを作ったけど、ググった情報だけでなんとかなった。
そもそも RMI って結局はメソッド呼び出しの遠隔版だからそんなに情報必要じゃないんだよね。
まあがんばれ。
246:デフォルトの名無しさん
08/11/23 17:07:30
>>244
ソースコードを読んで書く。適当なサンプルプログラムをひっぱってきて、読む。読んだらちょっと自分で機能を追加したり変更しりして動かしてみる。
動かすときは、デバッガで1行ずつステップ実行したり、要所要所にprint系の文を突っ込んで変数の値がどのように変化していくのかを見てみる。
何をどうやったらプログラムがプログラムとして成立しているのかを理解したら、1から書いてみる。
247:デフォルトの名無しさん
08/11/23 17:17:51
>>246
やっぱりソースコードを自分で作成することが大事なようですね。
自分も今の方法で勉強するか、その方法で勉強するか迷っていたんです。
ありがとうございます。
質問追加してしまって申し訳ないんですが、その勉強方法をするためのソースコードとして
勧められるようなものってなにかありますか?
248:デフォルトの名無しさん
08/11/23 17:44:21
>>243
そりゃもう何度もやってましたよ、と
おかしいから質問したのであって、記述ミスとかの話じゃないです
249:デフォルトの名無しさん
08/11/23 18:24:34
>>248
なぜ環境変数等を晒さないの?
echo %PATH%とdir "C:\Program Files\Java\jdkxxx\bin"の出力結果
cmdがおかしいとか、記述ミスじゃないと判断する前に当然自分では確認したんだよね?
250:デフォルトの名無しさん
08/11/23 18:37:59
>>248
とりあえず絶対pathで使えるかやってみたら?
c:\ほげほげ\javac なんとか.java
が動くかどうか。
251:デフォルトの名無しさん
08/11/23 19:08:19
なんですぐ入れ食い状態になるの?
252:デフォルトの名無しさん
08/11/23 19:09:45
puts("'javac' は、内部コマンドまたは外部コマンド、\n操作可能なプログラムまたはバッチ ファイルとして認識されていません。\n");
だったらうけるw
253:デフォルトの名無しさん
08/11/23 19:44:05
javaスレだし、Cはいらん
勉強するならCからだけどなw
254:デフォルトの名無しさん
08/11/23 20:41:43
>>249,250
239にも書いたように、再インスコで動くようになりましたよ、と。
どもですどもです。
255:デフォルトの名無しさん
08/11/23 20:57:19
iアプリのプログラムを書いたりしてみてるんですが…
これの際にわざわざ
「どこかの鯖にそのjarをUL⇒携帯電話端末でそれをDL」
ってやらないと自分のケータイで実行することってできないの?
256:デフォルトの名無しさん
08/11/23 20:59:37
>>255
iモード携帯電話用Java(iアプリ) Part18
スレリンク(tech板)
257:デフォルトの名無しさん
08/11/23 21:01:51
>>256
スレ違いすみません。
早速除いてみます
258:デフォルトの名無しさん
08/11/24 01:29:09
jdk1.6.0_07をインストールしたのですが、環境変数の設定が解らず困っています。
参考書を参照しているのですが。
新規CLASSPATH
新規path
新規jAVA_HOME
何を入れたらいいのでしょうか?
OSはXPです。
259:デフォルトの名無しさん
08/11/24 01:32:09
>>258
可愛いこと言うな!コノヤロー
260:デフォルトの名無しさん
08/11/24 01:36:18
>>259
どういう事でしょうか?
261:デフォルトの名無しさん
08/11/24 01:49:45
>>258
多分、その参考書には載ってないと思う。
262:デフォルトの名無しさん
08/11/24 02:32:20
パーティ用にクイズゲームを作ろうとしていますが、
スコアボードとして「+」や「-」をクリックすると数字が増減するjavaのプログラムを組もうと試みています。しかし、テキストボックスを利用すると文字が小さすぎてパーティで利用するには不向きです。
・テキストボックスのフォントサイズを変える方法
・無理なら、数字の書かれた画像を+-クリックで増減させる方法
・それも無理ならクリックするごとに☆画像を増やす方法
・javaで無理ならFLASHのサンプルなどあればご教示いただけると幸いです。
OSはXPです。ブラウザは今のところIE6ですが、特に何でもかまいません。
263:デフォルトの名無しさん
08/11/24 03:19:42
>>262
画面の解像度を VGA にするとか。
264:デフォルトの名無しさん
08/11/24 03:49:53
JAVA?アプレット?javascript?
エスパー的にはjavascriptはスレ違いとしか応えようがないぜ
JavaScript
スレリンク(tech板)
ここで質問するといいんだろうか
265:デフォルトの名無しさん
08/11/24 06:06:02
①Map.Entry<String, Integer> x
②y=y+x.getValue();
③System.out.println(y);
④bw.write(y);
①のようにマップのエントリを行い、
②でintで宣言したyとxの値を足した場合
DOS画面では結果が表示されるのに(③)、ファイルに保存した場合(④)■的な文字化けになってしまいます。
MAPの値を直接足すのはダメなのでしょうか?文字コードも色々変えてるのですが変わらず困っています。
心当たりのある方お願いします。
266:デフォルトの名無しさん
08/11/24 06:16:56
バイナリで書き込んでると予想
bw.write(""+y);
こんな風に""+を追加したら文字列として書き込んでくれるかもしれない
267:デフォルトの名無しさん
08/11/24 06:23:09
>>266
て…天才だ!!!!!
しかも即レスでありがとうございます!!感動しました。
仕組みはよく分からないんですがバイナリになるんですね。
ここで聞いてよかった…。感謝します。
268:デフォルトの名無しさん
08/11/24 06:30:43
照れるぜ
画面に表示する時は、当たり前のように文字列なんだけど
ファイルに保存となるとバイナリかテキストのどちらかになるんだ。
1+1だと結果は2になるけど、
""+1+1だと結果は"11"になる
>>266の方法はこのルールを使っただけなんす
269:デフォルトの名無しさん
08/11/24 06:44:34
>>268
なるほど!勉強になります!
てっきりマップにアドレス的なものがあって変換しなきゃならないとか
色々模索してたんですが、writeのほうにそのような仕様があったんですね。
初歩的な知識不足でご迷惑おかけしました。
悩みが解消してこれで寝れます。本当にありがとうございました。
270:デフォルトの名無しさん
08/11/24 10:38:28
英語の本は(海外の本)は、間違いが生じないように細かく詳細に書くこと基本で大事だって思想だからしょうがない。
だけどそれだけしっかり書いてある(仕様がしっかりしている)からどこでも通じるし信用できるんだけどね。
それに比べて日本の解説本は酷いだろ。
教科書とかも助教授あたりが自分の書きたいところだけ細かく書いてるだけで、5年もすれば捨てちゃうような内容だし、コンピュータ雑誌と同じじゃないの?
だからちゃんとした教科書が欲しいなら結局英語の本(とその翻訳)になっちゃうんだよね。
rfcとかもも含めてそういう堅い本が読めない奴はこの世界に入るのはあきらめたほうがいいな。
271:デフォルトの名無しさん
08/11/24 13:42:51
258です。
どなたか教えて下さい。
272:デフォルトの名無しさん
08/11/24 13:51:24
>>271
可愛いね^^
273:デフォルトの名無しさん
08/11/24 14:02:37
大学で出た課題の中で、配布されたプログラムの中で
equals()とhashCode()をオーバーライドしてるんですか
その理由はjava.lang.Comparableのマニュアルを見れば分かるよ
と言われたんですが意味分かりません
どういうことなのか分かりますか?
274:デフォルトの名無しさん
08/11/24 14:10:43
1、Javaではequalsをオーバーライドしたらhashcodeをオーバーライドしなければならない
2、Comparableはオブジェクトの比較をするためequalsをオーバーライドしなければならない
1,2はみんなでこうしようと決めた約束事 もちろん文書には書いてある。エラーにならないかもしれないけれども
1、
URLリンク(java.sun.com)(java.lang.Object)
URLリンク(java.sun.com)()
2、
URLリンク(java.sun.com)
275:デフォルトの名無しさん
08/11/24 14:12:41
>>273
URLリンク(java.sun.com)
>C クラスの自然順序付けは、C クラスのすべての e1 および e2 について、
>e1.compareTo(e2) == 0 が e1.equals(e2) と同じ boolean 値を保持する場合にだけ、
>「equals との一貫性」を保持します。
・・・
>自然順序付けでは、equals と一貫性があることは、必須ではありませんが強く推奨されます。
>これは、明示的なコンパレータを指定しないソートされたセットやソートされたマップを、
>自然順序付けが equals と一貫性のない要素またはキーと一緒に使用すると、
>セットとマップの動作が保証されなくなるからです。
URLリンク(java.sun.com)(java.lang.Object)
>通常、このメソッドをオーバーライドする場合は、hashCode メソッドを常にオーバーライドして、
>「等価なオブジェクトは等価なハッシュコードを保持する必要がある」という
>hashCode メソッドの汎用規約に従う必要があることに留意してください。
上記の通りだが、どこがわからない?
276:273
08/11/24 14:15:04
>>274
>>275
分かりました。ご丁寧にありがとうございます。
277:デフォルトの名無しさん
08/11/24 14:28:21
マニュアルを見ろ、と言われて、何を見ればいいのかわからなかった、ということだろうか
278:デフォルトの名無しさん
08/11/24 14:47:55
258です。
しつこいようですが、教えて下さい。
279:デフォルトの名無しさん
08/11/24 14:50:45
何様?
280:デフォルトの名無しさん
08/11/24 14:59:39
>>258
CLASSPATH → 設定不要。非標準のライブラリ(自作を含む)を使うときだけ気にしろ。
PATH → >>238 参照。jdk1.6.0_10 を jdk1.6.0_07 に読み変えるか、JDK6.0update10をインストールしろ。
JAVA_HOME → 設定したことないが、必要なのか? これ。
281:デフォルトの名無しさん
08/11/24 15:24:22
>>280
ありがとうございます。
やってみます。
282:デフォルトの名無しさん
08/11/24 16:08:09
import java.io.*;って何ですか?
283:デフォルトの名無しさん
08/11/24 16:11:29
java.io の全てのトップレベルクラスを単純名でアクセスできるようにする。
284:デフォルトの名無しさん
08/11/24 16:17:47
>>282
いちいちパッケージ名を含めたクラスの完全限定名をコード中に書かなくてもいいように、
java.ioパッケージに属するクラスなら短い単純名だけに省略化して書けるようにする。
java.io.Reader r = new java.io.BufferedReader(new java.io.FileReader("hoge"));
と長々と書かずに、
Reader r = new BufferedReader(new FileReader("hoge"));
と書ける。
285:デフォルトの名無しさん
08/11/24 16:21:44
>>284
なるほど!わかりやすく説明して下さって有難う御座います♪
286:デフォルトの名無しさん
08/11/24 23:30:45
クラス分けについて質問です
SQlDBから値をとってきたとき
取得データを
dataclassというクラス(フィールドにはUserID,passなどの個別のデータがある)
をつくり
別のクラスでインスタンスして
arraylist<dataclass>のような使い方をして入れようと思ってるのですが
このやりかただとデータが10万以上など大量になったときに
メモリを食うと書いてありました。
通常SQLDBっからresultsetでとってきたデータはどのように扱うのでしょうか
このあとJSPで表示するのに使います
287:デフォルトの名無しさん
08/11/24 23:59:51
>>286
基本的にはその方法でOK。
データが10万レコード以上になっても、JSPでの表示のために毎度
10万レコードを全て取得する必要があるわけでは無いでしょう?
ちゃんとDBに投げるSQLクエリを吟味して、JSPでの表示に必要な
データだけを検索して取得するようにすればOK。
そうすればJava側で消費するメモリの大きさは基本的にDB中の
レコード数とは無関係になるはずです。
>このやりかただとデータが10万以上など大量になったときにメモリを食うと
杞憂かも知れませんが、非常に誤解を招く記述に思えます。
もしかするとDBからレコードを全件引っ張ってきて、Java側で絞り込み
をかけるような実装を紹介しているのかも知れません。
もしそうだとすれば、そんな参考書or参考サイトは役立たずですので
捨ててしまって下さい。
288:デフォルトの名無しさん
08/11/25 00:01:39
>>286
一気にデータを取得して全部をひとつのリストに入れるのではなく、
表示を作り上げていく段階で少しずつ必要なデータだけを保持する。
289:デフォルトの名無しさん
08/11/25 02:14:23
下記のソースがコンパイルエラーになるのですが、何が悪いのでしょうか?
エラー内容は「ローカル変数zが初期化されていない」というのですが。。
[Test.java]
import java.applet.*;
import java.awt.*;
public class Test extends Applet {
public void init() {
Zukei[] z;
z[0] = new Maru();
z[1] = new Sankaku();
z[2] = new Shikaku();
}
public void paint(Graphics g) {
z[0].draw(g);
}
}
290:デフォルトの名無しさん
08/11/25 02:15:47
[Zukei.java]
import java.awt.*;
public interface Zukei {
int left = 10;
int bottom = 10;
void draw(Graphics g);
}
291:デフォルトの名無しさん
08/11/25 02:17:10
[Maru.java]
import java.awt.Graphics;
public class Maru implements Zukei {
public void draw(Graphics g) {
g.drawString("Maru", left, bottom);
}
}
Sankaku.javaとShikaku.javaも同じような感じで定義しました。
292:デフォルトの名無しさん
08/11/25 02:26:44
eclipseが起動しないんです。
ダブルクリックするとロゴが瞬間表示されて起動されません。
何が問題なんでしょうか?
293:デフォルトの名無しさん
08/11/25 02:29:28
>>292
マルチ乙
294:デフォルトの名無しさん
08/11/25 03:28:51
import java.applet.Applet;
import java.awt.event.*;
import java.awt.*;
public class Eventtest extends Applet implements MouseListener{
private int x = 0;
private int y = 0;
public void init() {
addMouseListener(this);
}
public void paint(Graphics g) {
g.drawOval(x, y, 20, 20);
}
public void mouseClicked(MouseEvent me) {
x = me.getX();
y = me.getY();
repaint();
}
}
エラーが出ます。わかる方教えてください。
Exception in thread "AWT-EventQueue-1" java.lang.Error: Unresolved compilation problem:
The type Eventtest must implement the inherited abstract method MouseListener.mouseExited(MouseEvent)
295:デフォルトの名無しさん
08/11/25 03:46:03
>>294
The type Eventtest must implement the inherited abstract method MouseListener.mouseExited(MouseEvent)
296:デフォルトの名無しさん
08/11/25 10:26:24
>>292
パソコン買い換えると良いよ
297:デフォルトの名無しさん
08/11/25 12:33:48
>>289
Zukei[] z;
を
Zukei[] z = new Zukei[3];
にしてみれば?
298:デフォルトの名無しさん
08/11/25 14:08:54
このようなArrayListを作ったんですが、
ArrayList arrA
┗listB[]
┣String valC
┗String valD
このなかのvalCを取り出そうと思い
arrA.listB[i].valCと記述したのですが、エラーが返ってきました
正しくvalCを取得する方法を教えてください。
299:デフォルトの名無しさん
08/11/25 14:18:14
((listBの要素の型[])((ArrayList)arrA).get(arrAのインデックス))[i].valC
300:デフォルトの名無しさん
08/11/25 14:28:38
>>299
それってVectorでも対応できるかな?
ArrayList をVectorに変えたらキャストできませんと構文エラーがでました。
301:デフォルトの名無しさん
08/11/25 14:40:15
Vectorには対応してません。
302:デフォルトの名無しさん
08/11/25 15:01:13
>>301
そうですか、ArrayListで対応してみます。
ありがとう御座いました。
303:デフォルトの名無しさん
08/11/25 15:06:45
おい、おまえら!
前から思ってたんだけど、ついでだから聞かせてもらう。
VectroとArrayListの違いってなによ?煮たようなもんだろ?
304:デフォルトの名無しさん
08/11/25 15:28:51
>>303
URLリンク(www.tohoho-web.com)
305:デフォルトの名無しさん
08/11/25 15:45:15
>>297
しましたがまだエラーになるみたいです。
java.lang.Error: Unresolved compilation problem:
Syntax error on token(s), misplaced construct(s)
at Test.init(Test.java:6)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
306:デフォルトの名無しさん
08/11/25 15:46:03
>303
同期されてるかいないかによるパフォーマンスの違い。
StringBufferとStringBuilderも同様。
307:デフォルトの名無しさん
08/11/25 16:24:56
>>304,306
表向きはそうなんだけどね・・・よくAPIを読んで比べてみなよ。
もし気がつくなら初心者卒業ってことだと思うけどね。
308:デフォルトの名無しさん
08/11/25 16:46:11
ちゃんとインストールされてるはずなのに昨日までは入れてた
Java対応のチャットに「対応のブラウザでご利用ください」と言われるようになりました
309:デフォルトの名無しさん
08/11/25 17:12:41
javaで綺麗なグラフ描くを描くにはどうすればよいですか
310:デフォルトの名無しさん
08/11/25 17:15:00
graphics.drawString("グラフ描く", 0, 0)
311:デフォルトの名無しさん
08/11/25 17:17:27
うっそ~ん
Javaでデータからエクセルのようなグラフを描くのにはどうすれば
312:デフォルトの名無しさん
08/11/25 17:20:55
マイクロソフト・エクセルを使うだけです。
313:デフォルトの名無しさん
08/11/25 17:27:05
いっや~ん
エクセル嫌い嫌いJavaで描きたい
314:デフォルトの名無しさん
08/11/25 17:42:44
jfreechartでも検索するがいい。
自前でやるなら、Graphics,Graphics2Dを使って、310のように実装すればいい。
315:デフォルトの名無しさん
08/11/25 17:50:33
あっりっがっとうございます!m(_ _)m
316:デフォルトの名無しさん
08/11/25 18:02:04
>>305
まあ、こっちではそこのエラーが消えたからまあいいや。
317:デフォルトの名無しさん
08/11/25 20:36:16
今の時代のJavaの勉強は、Applet使ってアニメーションからJavaの世界に入ったりはしないんですか。
円・ドル換算プログラムみたいにGUIコマンドアプリは分かるんですけど、アニメーション・プログラムをやるならflashなんでしょうか?
318:デフォルトの名無しさん
08/11/25 21:01:05
実行環境の話はこっちでいいのかいな?
willcomのWX310SAについてなんだが。
319:デフォルトの名無しさん
08/11/25 21:41:38
質問です
+、=、*、/の4つの記号と数字を含む文字列”str”をchar型に変換して
1文字ずつ調べ、もし記号だったら抜き出す。
という作業をしたいのですが、うまく動きません。
どのようにしたらよいのでしょうか?
char[] c = str.toCharArray();
char[] d = new char[200];
int j=0;
for(int i=0;i<c.length;i++){
if(c[i]==('+'|'-'|'*'|'/')){
d[j]=c[i];
j++;
}
}
320:デフォルトの名無しさん
08/11/25 21:46:28
]==('+'|'-'|'*'|'/')
ペットたちは元気でしたか?
321:318
08/11/25 22:04:38
反応ないけど質問書いておく
某本に載ってた手順で、開発環境としてJ2SE1.5をインスコして
プログラム作ったら、エミュレータ上では動作したがWX310SAでは動作しなかった。
けど、J2SE1.4.2をインスコしなおしたらWX310SAで動作した。
1.5と1.4で何か変わってる?
それとも単にWX310SAでは1.4しか対応してない?
322:デフォルトの名無しさん
08/11/25 22:27:02
>>321
クラスファイルの構造が変わってる。
> > javac -help
> 使い方: javac <options> <source files>
> 使用可能なオプションには次のものがあります。
《略》
> -source <release> 指定されたリリースとソースの互換性を保つ
> -target <release> 特定の VM バージョン用のクラスファイルを生成する
Java5以上で使うなら、javacに「-target 1.4」を指定すればいいと思うよ!!
323:318
08/11/25 23:10:11
>>322
thx
試してみる
324:デフォルトの名無しさん
08/11/25 23:36:55
>>287-288
ありがとうございました
dataBase data =new dataBase();
sertAtribute("data1",data)
と
<useBean id="data1" class="pacage.dataBase">
だと
1.どちらかでdata1でつかえるのか
2.それとも全部含めて出ないとつかえないのか
data1.getData()メソッドとしてつかえるのはどれでしょうjか?
useBeanのとき同時にインスタンスしてるのかsetatributeの変数名を
引き継いでるのかいまいちわかりません
325:デフォルトの名無しさん
08/11/26 00:41:21
>>319
Java の文字の比較方法を勉強すればうまくいくと思う。
326:デフォルトの名無しさん
08/11/26 01:08:47
JVMはエミュレータの一種なんですか?
327:デフォルトの名無しさん
08/11/26 01:53:21
というか何のエミュレータだと思いますか?
328:デフォルトの名無しさん
08/11/26 02:08:29
どうでもいいがなんでシーケンシャルな処理とオブジェクト指向が対比されてんだ
あとはUMLとかで作るだけとか
描画を完全にマルチスレッドでやれると思ってるとか
コンポーネント毎にスレッド化するとか
javaFXとかjava2Dとか
オブジェクト指向とスレッドとか
ま、VRAMに直書きが描画の全てという時代なら容易にできたかもしれん。
329:デフォルトの名無しさん
08/11/26 02:15:13
>>326
通じないことは無いだろうけど、普通エミュレーターとは言わないと思うなあ
(広義には知らない)
エミュレータってのは、実在するハードや環境なんかを模倣するものを指す
一方でJVMはその名の通り仮想的な計算機。実在しない
……と、ここまで書いてから「Java仮想マシン仕様」を読み直してみると
>最新のJava仮想マシンの実装では、より高度に洗練された方法によってWin32やSolaris上で
>Java仮想マシンのエミュレートを行っている
という文脈があるので、普通に使うっぽい
330:デフォルトの名無しさん
08/11/26 02:19:12
>>319
書き方がC言語っぽいけど、Javaはnew char[200];みたいなことをしなくてもstr.length()があるよん
配列はポインタじゃないから、c.length でも同じ値とれるけど
URLリンク(java.sun.com)
ここはよく読むといいよ
以下蛇足 0-9の文字で文字列を分ける=演算子を取り出す
String str="-1+2*3+4";
String split[]=str.split("[0-9]+");
for (int i = 0; i < split.length; i++) {
System.out.println(split[i]);
}
こういう方法もあるんだって知っておくのもいいかも
331:デフォルトの名無しさん
08/11/26 02:28:43
>>329
たぶんその書き方は、Java仮想マシンという仕様を(実質オペコード)、エミュレータとして実装したってことじゃないかと思う。
332:デフォルトの名無しさん
08/11/26 02:28:50
>>328
>どうでもいいがなんでシーケンシャルな処理とオブジェクト指向が対比されてんだ
(答) だって人工無脳なんだもん
333:デフォルトの名無しさん
08/11/26 02:30:34
>>328
あの・・・よく読んでいるようですけど・・・もしあなたの言う「~とか」を否定すると、Windowsなどで動く全てのGUIアプリを否定することになりますよ?
334:デフォルトの名無しさん
08/11/26 03:23:14
>>328
おまえがコンソールアプリしか作ってない理解できないんじゃないのか?
VRAMとか言ってるけど、おまえがGUIアプリを作ってもせいぜいポトペタしかやったことないんだろww
335:デフォルトの名無しさん
08/11/26 03:32:51
>>333
ああ、あなたも人口無能でしたか。
336:デフォルトの名無しさん
08/11/26 03:35:47
人口無能ww
337:デフォルトの名無しさん
08/11/26 03:37:35
ポトペタがあれば永遠に俺は幸せ!
338:デフォルトの名無しさん
08/11/26 04:11:19
ほう
339:デフォルトの名無しさん
08/11/26 04:20:15
ポトペタのユーザはともかく、ポトペタな開発を実現するツールキットを設計
する人は偉大だと思うな。
その才能を多くの凡庸な開発者達のために役立てているし、つまらん仕事
を最小限の手間暇で片付けられるので大変世の中に貢献している。
なのでかの人工無能くんにはポトペタでとてもマルチスレッドなGUIアプリが
構築できるツールキットを是非開発して欲しいと思う。
340:デフォルトの名無しさん
08/11/26 04:34:25
SUNが破産手続き開始の申し立てだそうだ。記念カキコいっとけ。
スレリンク(newsplus板)
341:デフォルトの名無しさん
08/11/26 07:41:44
>>340
SUN は SUN でも microsystems じゃないやつだろ。Second Life のベンチャーじゃん。
まあ Sun micro はいつもリストラ計画だの四半期ベースが改善しただの見てるこっちを
ハラハラさせるニュースが多いことは確かだが。
342:デフォルトの名無しさん
08/11/26 08:41:13
>>339
それって座標計算とレイアウトなだけじゃないの?
そうするとゲーム開発者は偉大ってことになるし。
sincosとか使ったことないし、tanの2倍角の公式とか知らない口でしょw
343:326
08/11/26 08:41:16
>327
俺が通っていた工業高校では、情報技術者試験のアセンブラ科目で使う
CASLを搭載したと仮定しているコンピュータのエミュレータをWindows上で動かしていて、
「仮想計算機のエミュレータ」と呼んでいたので、
実在はしないが仕様は決定されているコンピュータなら、
それをソフトウェアで再現したものはエミュレータと呼べるのかな、
じゃあJVMもエミュレータなのかな、って思ったんです。
>329
おお、ありがとう!
仕様でエミュレータって呼ばれてるんですね。
スッキリしたw
344:デフォルトの名無しさん
08/11/26 08:55:47
>>343
ああそれそれ、JVMはCASLと同じ考えでいいんじゃないの。
実際JVM仕様を読んで自分でfile.classを吐き出す簡単な処理系を作れるなら、jrubyとかgrooovy,sclara,javafxとかのマイ言語作ってるのと同じだし、javacだってjvmプラットフォームの1つに過ぎない。
というか、仕様が最低限しかないから簡単だから俺ならJVMで動くCASLかCを作るけどね。
345:デフォルトの名無しさん
08/11/26 08:57:09
>>342
お前どっかずれてるわ
346:デフォルトの名無しさん
08/11/26 09:17:50
HttpClientで、executeMethodして接続しているところを割り込んで止める方法はないでしょうか?
347:デフォルトの名無しさん
08/11/26 10:00:45
>>345
というか、おまえならどうやって作るの?
348:デフォルトの名無しさん
08/11/26 10:02:54
リストやツリーのデータ構造を自作できない奴に何言っても無駄無駄
349:デフォルトの名無しさん
08/11/26 10:17:39
だなw
350:デフォルトの名無しさん
08/11/26 10:31:15
>>343
頑張って大学に入って頑張って勉強してくださいなw
351:デフォルトの名無しさん
08/11/26 12:26:24
public static void main(String args[]){
int a = 4, b = 7;
int i, j;
for(i = 0; i < a; i++){
if (i%2 == 0){
for(j = 0; j < b; j++){
System.out.print("*");
}
}
else {
for(j = 0; j < b; j++){
System.out.print("=");
}
}
if (i%2 == 1){
System.out.println();
}
}
}
*******=======
*******=======
と表示したいのですが、最後のif文で改行処理の判断をするのではなく、これを表示処理の判定に含めたいです。
どなたかやり方を教えて下さい。出来れば簡単な方法でお願いします。
352:デフォルトの名無しさん
08/11/26 13:03:48
フレームワークとしてマルチスレッドなGUIを構築できたら
開発環境の仕事はソースの生成アシストとナビゲーションだろ
どっちにしても難しいなこれは
俺にはむりむり
353:デフォルトの名無しさん
08/11/26 13:15:03
>>342
ポトペタを実現するのに必要な事として座標計算とレイアウトしか
想像出来ないおまいさんはマジ幸せ者だよ。ホント。
354:デフォルトの名無しさん
08/11/26 13:15:30
そんなデカイのを作る必要はないな。既に有用なIDEがいくらでもある。
もっと違った視点で見てみると面白い活用法が浮かぶんじゃないか?
355:デフォルトの名無しさん
08/11/26 13:24:36
>>354
いや、俺が欲しいのはポトペタなんだが。
是非とてもマルチスレッドなGUIアプリを開発できるツールキットを開発してくれ。
それが出来ればIDEなんてEclipseのプラグインとしてサクッとすればいい。
おまいさんには簡単だろ?
356:デフォルトの名無しさん
08/11/26 13:36:41
ていか、もう出来てるんだが?
それも座標計算とレイアウトだけで。
マルチスレッドなGUIアプリを開発できるツールキットってのは何を言ってるか意味不明だけど、
君が欲しい機能や仕様をまとめてくれればたやすいんじゃないの?
357:デフォルトの名無しさん
08/11/26 13:42:42
たぶんなんだけど、マルチスレッドとスレッドセーフがよく分かってないんじゃないの?オジサンだからw
358:デフォルトの名無しさん
08/11/26 13:57:28
>>356
ああ、おまいさんのいうポトペタとはドラッグアンドドロップでGUIをデザイン
出来る事だけを言うわけですね。わかります。
ポトペタなめんなよw
あとマルチスレッドなGUIツールキットの仕様については人工無能君に聞いてくれ。
元々彼がSwingその他を馬鹿にするところから始まったネタだから。
359:デフォルトの名無しさん
08/11/26 14:04:40
ネタなのにあえて釣られることはない
360:デフォルトの名無しさん
08/11/26 14:12:08
Java終了のお知らせ
SUNが破産手続き開始の申し立て
スレリンク(newsplus板)
361:デフォルトの名無しさん
08/11/26 14:17:42
>>360
>>340で既出
362:デフォルトの名無しさん
08/11/26 14:48:57
まあ、たしかにJava2Dでやっちゃえばなんでもありになるわな
あとはイベントどうするかってのとスレッド(協調動作)にそいつがどれほど慣れてるかだし
実際問題Java2DはGUIのときに出てくるだけで、イベントとかスレッドはGUI関係ないしなぁ
363:デフォルトの名無しさん
08/11/26 14:49:41
Vector vlistA
├String aID
└list[]
├String kekka1
└String kekka2
指定したaIDのlist[]の中身を追加、削除したいのですが、addやremoveでは無理でした。
追加、削除方法を教えてください。
364:デフォルトの名無しさん
08/11/26 14:57:57
ArrayList vlistA
├String aID
└ArrayList list
├String kekka1
└String kekka2
にすれべおk
365:デフォルトの名無しさん
08/11/26 15:02:29
>>364
図がずれてました。
Vector vlistA
├String aID
└list[]
├String kekka1
└String kekka2
list[]は仕様上、配列のままにしておきたいんです。
366:デフォルトの名無しさん
08/11/26 15:04:19
そんな仕様は糞だ
367:デフォルトの名無しさん
08/11/26 16:35:15
>>362
その通りなんだけど、個人で作って利用するプログラムと他人様が利用して
作成物の保守もするツールキットとでは設計の基準が異なるんだよね。
後者ではちゃんと利用者像を想定して、落としどころを見つける必要がある。
そのためには機能の絞り込みも必要で、何でもありにはならないんだ。
368:デフォルトの名無しさん
08/11/26 17:13:32
>>365
list[]を追加、削除のたびにnewしてやればいいんじゃね?
もしくは、削除ならforで回して詰める、追加もforで回して隙間あけて入れる。
追加する余裕が配列になければnewしてやる
369:デフォルトの名無しさん
08/11/26 17:24:12
>>351
簡単にということなので、変数一個減らして、for文一個減らしてif文全部無くしてみた。
import java.util.*;
class Nichan {
public static void main(String[] args) {
int a = 4, b = 7;
char[] out = new char[b*2];
Arrays.fill(out,0,b,'*');
Arrays.fill(out,b,b+b,'=');
for(int i=0; i<a/2;i++){
System.out.println(String.valueOf(out));
}
}
}
370:351
08/11/26 18:02:51
>>369
回答ありがとうございます。
なるべく原形とどめつつ最後のif文だけ何とか出来ませんかね?
注文多くてごめんなさい。
371:デフォルトの名無しさん
08/11/26 18:16:17
>>370
if (i%2 == 1){ /* hogehoge */ } ってことは、
if (i%2 == 0){} else { /* hogehoge */ } ってことでしょう。
for(j = 0; j < b; j++){
System.out.print("=");
}
System.out.println();
372:370
08/11/26 19:03:13
>>371
なるほど・・・
ありがとうございました。
いい勉強になりましたm( _ _ )m
373:デフォルトの名無しさん
08/11/26 19:47:45
>>318,323
もう解決してるかもしれないけれど、
携帯電話・PHS 関連なら、MIDP スレも参考になる情報もあるかも。
WILLCOM の電話機なら、MIDP 2.0 に準拠しているようだから。
CLDC+MIDP+携帯電話用Javaスレッド part 8
スレリンク(tech板)l50
374:319
08/11/26 20:24:06
>>320,325,330
ありがとうございました。
if(c[i]=='+'|c[i]=='-'|c[i]=='*'|c[i]=='/')
こうしなくちゃいけなかったんですね。
ようやく分かりました。
String型のメソッドは覚えておいたほうがよさそうですね。
よく読んでおきます。
splitを使ったやり方も、試して見たいと思います。
ご丁寧にありがとうございました。
375:デフォルトの名無しさん
08/11/26 20:54:59
C出身なら if (stg.charAt(i)=='+' || stg.charAt(i)=='-') ですかね。
ジャバ出身者でtoCharArrayを使うのはなかなかいません。
376:デフォルトの名無しさん
08/11/26 21:21:36
すいません、JAVA3Dと
URLリンク(acerola3d.sourceforge.jp)
上URLのacerola3Dを使ってappletに表示させたいのですが行き詰ってしまいまして。
どなたかご教授願えませんでしょうか?
377:318
08/11/26 21:28:43
>>373
おお、専用スレがあったんですね。
thxです!
378:デフォルトの名無しさん
08/11/26 21:55:53
Javaってあれだね?最初、Javaからやったらわけわかんなかったけど
色々言語やったら好きになった。便利だね。Write anywhere, Run once.だっけ?
379:デフォルトの名無しさん
08/11/26 21:57:33
正しくは write once test anywhere
380:デフォルトの名無しさん
08/11/26 22:07:47
URLリンク(xy.yu.to) (ここは本来のサイトではないが)
この荒れまくりカオス絵チャのminiっていう部屋の
秘密スペース(枠外)への書き込みってどうやれば
できるようになるのか解析して教えろ。
あと、1人の防衛プログラマーのクリアツールが強すぎて、
荒しプログラマーがことごとく全員返り討ちになってるから
オマエラが面白くしてみろ。
ゲハハハごめんね
381:デフォルトの名無しさん
08/11/26 22:14:32
日頃からコード書いていて処理に慣れてる人はメソッド名が長い!冗長だ!とか文句言ったりしなくなりますよww
さらに演算子オーバーロードー!!プロパティ!!とかも「はぁ?」って感じですかね?(笑)
382:デフォルトの名無しさん
08/11/26 22:29:32
>>374
「|」じゃない。「||」だ。
まぁ、どうせ>>374のままだとエラーが出るからすぐわかるはずだけど。
383:デフォルトの名無しさん
08/11/26 22:32:50
サーブレットで文字化けみたいになるんですが
すべて?ってのは文字化けではないですよね?
コンテンツタイプの設定でEUC_JPやShift_JISなどに変更しても変わりません
どうしたら直るか教えてもらえませんか?
384:デフォルトの名無しさん
08/11/26 22:53:09
>>382
>>374 は確かに良い書き方ではないけど、
エラーはでないぞ。
| と || の違いを分かってないのか?
385:319
08/11/26 22:55:03
>>375,382
なるほど~
わざわざchar型に入れ替えるより
charAtを使った方がすっきりしますね。
一応やってみて『|』でもうまくいったのですが
この場合『||』の方がいいんですかね?
386:デフォルトの名無しさん
08/11/26 23:03:34
>>384
げ、論理演算て整数にしか定義されないと思い込んでたよ。
型違反になると思ってた。
387:デフォルトの名無しさん
08/11/26 23:08:39
>>386
ま、そんなもんでしょ。
ANSI Cを骨の隋までしゃぶってるわけじゃないし、そこまで細かく知ってる人いないし。
いちおう | は全部評価するってこと。
388:デフォルトの名無しさん
08/11/26 23:12:15
charAtだと余計なメソッド呼び出しの分コストがあるかな。
ストリームだと[]で受けるから、Stringにしないでそのままst[k]とかすることはある。
389:デフォルトの名無しさん
08/11/26 23:26:12
Javaって|はビット演算子じゃないの?
390:デフォルトの名無しさん
08/11/26 23:41:43
>>389
| はビット単位の整数演算子でもあるけど、論理演算子でもある。
391:デフォルトの名無しさん
08/11/26 23:41:55
>>389
そう思って>>382を書いたら恥かいた(^^;
&, |, ^ については、整数と真偽値の両方について定義されてて、整数のときはビット演算子、真偽値のときは論理演算子として振る舞う。
ただし、演算子の左右が両方とも整数か、両方とも真偽値でなければならなくて、例えば、1|trueはコンパイルエラー。
言語仕様の15.22参照。
392:デフォルトの名無しさん
08/11/26 23:56:22
>>390,391
thx
何か微妙な仕様だなw
そこらへんは、C/C++から派生した言語として統一しておいてほしいね。
無駄に悩みそうだしw
393:デフォルトの名無しさん
08/11/27 00:10:30
どう考えても妥当な仕様だと思うが。
これ以外のどれでもいまいちな仕様になるだろ。
394:デフォルトの名無しさん
08/11/27 00:46:37
複数の意味を持たすメリットが微妙に見える
C/C++と同じでいいじゃん
395:デフォルトの名無しさん
08/11/27 01:43:36
javaでは真偽値と整数は非可換なんで&や|での扱いをC/C++と同じにするのは妥当とはいえない
396:デフォルトの名無しさん
08/11/27 01:56:44
いやいや、整数のみ(ビット演算のみ)に意味を持たせればいいじゃん、
と言う意味なのだが。
C/C++でも通常boolで|や&は使わないし。
それがイコールC/C++と同じにすることになると思うけど。
あれ?俺何か勘違いしてる?
397:デフォルトの名無しさん
08/11/27 02:11:13
論理演算子として、
|…or。左辺も右辺も必ず評価。
||…or。左辺が真なら右辺は評価しない。
&…and。左辺も右辺も必ず評価。
&&…and。左辺が偽なら右辺は評価しない。
だと思ったけど、違った?
398:デフォルトの名無しさん
08/11/27 02:31:29
|| や && はあるのに ^^ はないのは如何に
399:デフォルトの名無しさん
08/11/27 02:37:44
つか、当たり前だった
400:デフォルトの名無しさん
08/11/27 02:38:08
>>398
右も左も計算しないと結果が出ないんだから、^ と等価になるだけじゃね?
401:デフォルトの名無しさん
08/11/27 03:42:55
>>398
ワロス
booleanでの&と&&の使い方・・・ ようするに>>397みたいなのなかなか参考書に書いてないか、気づきにくいよね
402:デフォルトの名無しさん
08/11/27 06:41:36
if (t == null || t.length() == 0) ...
みたいな書き方をしたとき、
(t == null) が true なら t.length() が呼ばれないので
NullPointerException が発生しない。
foo() と bar() が確実に1回ずつ呼ばれないと困るとき
if (foo() | bar()) ...
みたいに書ける。
403:デフォルトの名無しさん
08/11/27 07:39:47
このスレがはじめて役に立った
404:デフォルトの名無しさん
08/11/27 10:02:53
>>402
>foo() と bar() が確実に1回ずつ呼ばれないと困るとき
>if (foo() | bar()) ...
>みたいに書ける。
タイプミスなのか意図的なのかが分かり難いからあまり使って欲しく無いな
405:デフォルトの名無しさん
08/11/27 11:36:28
System.setIn(),setOut()などで入出力を変更したとします。
その後、元々の標準入力・出力を取得することはできますでしょうか?
単純に別に元々のものを持っておけばいいのですが、気になったので分かる方お願いします。
406:デフォルトの名無しさん
08/11/27 12:40:27
携帯でプログラミングできますか
407:デフォルトの名無しさん
08/11/27 13:07:02
>>406
おすすめしないができる。
408:デフォルトの名無しさん
08/11/27 13:43:51
>>407
ありがとうございます
タイピングが遅いとかですかね
409:デフォルトの名無しさん
08/11/27 14:25:20
>>305
スコープの問題は?
init メソッドの中で宣言されてるZukeiに
paintからアクセスしようとしてるからダメなんじゃねーすか?
initメソッドの外にの外にZukei[] z;って書いたらよいとおもわれ~。
Zukei[] z;
init(){
}
>>316
うそつけ。
410:デフォルトの名無しさん
08/11/27 15:48:25
javaで作ったプログラム(SQLサーバとやりとりして出力があるなら出力する)を3分起きに実行させ続けたいのですが
何を使ったらいいでしょう?スレッド?は違いますよね・・・
411:デフォルトの名無しさん
08/11/27 16:00:54
cronとかタスクスケジューラとかそういう話?
412:410
08/11/27 16:04:08
>>411
いや、javaのプログラム内で繰り返したいです
昔ちょっとやってたんですけど、HDDクラッシュでデータがなくて・・・
413:デフォルトの名無しさん
08/11/27 16:10:15
スレッドをまわしっぱなしにしてsleepで(180)とかにすればいいのかな?
414:デフォルトの名無しさん
08/11/27 16:15:19
>>413
sleep はミリ秒だぞ
415:デフォルトの名無しさん
08/11/27 16:16:13
タイマーでもいけるんじゃない。このあたりで。
java.util.timer
javax.swing.Timer
java.util.concurrent.ScheduledExecutorService
416:デフォルトの名無しさん
08/11/27 16:24:23
>>414
そうだった、180000だな、ありがと
417:デフォルトの名無しさん
08/11/27 16:39:57
javaにはfork()は無いの?
418:デフォルトの名無しさん
08/11/27 17:19:05
Tomcatユーザメーリングリストに参加
(URLリンク(www.jajakarta.org))したくても参加できないのですが、
どうすればよいでしょうか?
419:デフォルトの名無しさん
08/11/27 17:25:53
TimerTask使うのがらくなんじゃね?
420:デフォルトの名無しさん
08/11/27 17:30:37
ある関数 List<String> hoge(List<String> list); を開発しています。
hoge() には、String を要素とする List が渡されてきます。
このとき、List が保持している String は重複しているかしていないか、わかりません。
この関数の中で、重複している要素は削除して、リストを返したいです。
(Set を返却値としたかったが、呼び出し元が List を要求していて、そこは修正できない)
そこで以下のようなプログラムを書きました。
List<String> hoge(List<String> list) {
Set<String> set = new HashSet<String>(list);
List<String> resultList = new ArrayList<String>(set);
return resultList;
}
このように一度 Set に入れなおすことで重複を自動的に削除し、
List に変換しています。
○質問:
Set や ArrayList に入れなおすとき、中の要素は
コピーされて渡されるのか、参照渡しになるのでしょうか?
HashSet や ArrayList のコンストラクタのソースを見ると、中で
AbstractCollection#addAll(Collection) が呼ばれているようです。
その中では、渡された Collection を Iterator で回して
得られた要素を add しているので、参照渡しにしていると考えました。
hoge() 関数には大量(10万単位)の文字列が渡ってくるので、できれば
OutOfMemory を起こしたくないため、参照渡しになってほしいです。
421:デフォルトの名無しさん
08/11/27 17:43:41
>>420
オブジェクトを == で比較してテストすればいいじゃない。
422:デフォルトの名無しさん
08/11/27 17:57:29
>>420
中の要素は、コピーされようがコピーされまいが参照渡し。
423:デフォルトの名無しさん
08/11/27 18:00:04
>>422
Javaには参照渡しはない。
424:デフォルトの名無しさん
08/11/27 18:00:56
そして議論は質問と関係ない方向へ、というわけですね
425:デフォルトの名無しさん
08/11/27 19:36:33
private なコンストラクタしかないシングルトンがコピーできたらコレクションは最強だな
426:デフォルトの名無しさん
08/11/27 19:56:12
俺、病気で高校中退して、25でJavaプログラマになれたんだけど、
当然、大学とかいってないから、予備知識なんてなにもない。
このスレ見るたびに、すごい専門的なこと書く人がたくさんいて、すごい自信なくす。。
個人的には、業務に間に合うように一生懸命勉強してるつもりなんだけど。
いつか、だめになるんじゃないかととても不安。
427:デフォルトの名無しさん
08/11/27 20:03:36
大学の4年より、実務の半年のほうがよっぽど濃いかもよ?
濃いの解釈はまかせる
428:デフォルトの名無しさん
08/11/27 20:06:02
今情報系の大学院2年だけど
学部時代で授業でやるのなんてほんの一部のプログラミング知識だけだよ
Cの基本的なことだけやって終わり
あとは自分で覚えてくだけだから、>>426より大学生の方がよっぽどレベル低いよ
ここで回答してる人たちは本当にすごい人だなと思う
429:デフォルトの名無しさん
08/11/27 20:09:20
このスレってそんなにレベル高いか?
430:デフォルトの名無しさん
08/11/27 20:10:22
実務では、ちゃんとやろうとしても
コピペ坊の華麗な手さばきにはついていけません
431:デフォルトの名無しさん
08/11/27 20:12:20
さらに、野生の勘が閃く削除坊の使い手が現れると
プロジェクトは終焉を迎えます。
432:デフォルトの名無しさん
08/11/27 20:23:33
大学で勉強するのは、研究対象として定量的に評価できるもの。
実務で必要とされるであろうものとは、方向性が異なる。
それでも、それで論文みたいなものを書くすごい人とかいるけど
433:デフォルトの名無しさん
08/11/27 20:35:46
>>428
しょぼい大学だったからじゃないの~?
434:デフォルトの名無しさん
08/11/27 20:38:07
全く経験のない人はなぜか特別視するけど,
実際プログラミングの勉強なんかExcel覚えるのと変わらん
435:デフォルトの名無しさん
08/11/27 20:43:39
そろそろマ板へ移動しよう
436:デフォルトの名無しさん
08/11/27 20:48:57
>>433
学歴コンプか?
大学なんて入試の難易度と授業の内容に差なんかないぞ
437:デフォルトの名無しさん
08/11/27 20:58:02
>>426
業務系のプログラマならそこそこの腕で食っていけるんじゃないかと思う
客観的な評価なんてここじゃできんから
周りのプログラマと比べて、自分より上な人と、下な人の数で判断するしかないんかな
後はプログラムを楽しいと思えてれば、楽しんで仕事してお金貰えるなんてハッピーって感じで生きていけばいいさ
438:デフォルトの名無しさん
08/11/27 21:02:05
TreeSet<Object> tree = new TreeSet<Object>();
tree.add( /* 何か色々と追加 */ );
HashSet<Object> hash = new HashSet<Object>(tree);
assert tree.size() == hash.size();
これで AssertionError が出てくるんですが……なぜだか誰か教えていただけませんか?
439:デフォルトの名無しさん
08/11/27 21:03:52
ってごめん! いきなりわかったっ orz
ありがとう~(´;ω;`)ノシ
440:hitto
08/11/27 21:35:42
開発環境: Java , Struts
JSPにおいて
<input name=sex_kbn value=1 checked>男
<input name=sex_kbn value=2>女
このようなチェックのつけ方は学んだのですが、
前画面から送られてきたsex_kbnの値が1の場合は男に、2の場合は女にあらかじめチェックを付けて、
画面を表示するとなると方法がわかりません。
教えていただけるとありがたいです。
よろしくお願いします。
441:デフォルトの名無しさん
08/11/27 21:37:17
>>434
日本語でおk
Excel覚えるって何?Excelの存在を覚えるって事かな?
442:デフォルトの名無しさん
08/11/27 21:37:41
>>440
マルチ乙
443:デフォルトの名無しさん
08/11/27 22:09:13
>>441
最近こういうあおりも、もう面白くないんだよね。
おまえの方が日本語やり直しのようだなw
444:デフォルトの名無しさん
08/11/27 23:12:00
すみませんが教えてください。
Class<T>のgetSimpleNameというメソッドを使用していますが
これがExceptionを発生します。
同じソースでも違う環境ではエラーにならないので
環境の問題だと思うのですが
何かヒントだけでもいただけないでしょうか?
445:デフォルトの名無しさん
08/11/27 23:33:36
ゲーム製作版なんてあったんだね。知らなかった。
446:デフォルトの名無しさん
08/11/28 00:00:51
>>444
エラーになる環境のJDKのバージョンと、
getSimpleName() 使うと Exception 出す Class<T> の生成方法やら toString() の出力結果ぷりーず
447:デフォルトの名無しさん
08/11/28 00:40:28
>>444
生の java.lang.Exception を throw するって結構特殊な気がするので、その辺から原因を絞り込めるんじゃないだろうか?
448:デフォルトの名無しさん
08/11/28 00:51:19
>>444はマルチポストだよ。
仕事でやってるからエラーは貼れないそうで。
仕事でやってるならにちゃんねる頼るのはどうかなー。
449:デフォルトの名無しさん
08/11/28 01:02:32
>>444
環境依存はJavaの問題じゃないってのが答え
それと、おまえはもう来るな
450:デフォルトの名無しさん
08/11/28 09:52:32
コレクションで、リスト構造は持つが重複を許さないようにしたい場合、リストとは別に含まれているかのチェックのためにセットを持たせたりしますか?
List#containsで判断するのはいかにもコストが高そうでいやなんです。
451:デフォルトの名無しさん
08/11/28 10:14:22
最初から java.util.Set じゃいかんのか?
452:デフォルトの名無しさん
08/11/28 10:43:56
>>450
あなたの言う「リスト構造」って何のために使うの?
453:デフォルトの名無しさん
08/11/28 11:01:15
LinkedHashSet じゃダメなのか?
454:デフォルトの名無しさん
08/11/28 11:17:35
>>453
探していたものはまさにそれです。ありがとうございました。
APIドキュメント読み足りませんでした・・
>>452
基本的にはSetとして使うのですが、加えた順序が欲しくなったんです。
具体的にいいますと、プロクシの収集を行っていたのですが、ページ中に上の方が新しいものがあったためです。
それが登録された時間までプロクシのオブジェクトに加え、Comparetorで比較というのもありかもしれませんが、何か他に方法がないかと気になったので質問させていただきました。
455:デフォルトの名無しさん
08/11/28 11:52:31
URLリンク(rg550.hp.infoseek.co.jp)
2次元画像のパターンマッチングをしているのですが、上のプログラムで
マッチングの閾値の設定がどう行われているのかよくわかりません。
また閾値を低くするにはどのようにすればいいのでしょうか。
どなたかご教授お願いします。
456:デフォルトの名無しさん
08/11/28 12:58:15
閾値ってか白黒画像だろう扱ってるのは
カラー画像は読み込み時に toBinaryImageで白黒化されている
457:デフォルトの名無しさん
08/11/28 13:01:01
Tomcatユーザメーリングリストに参加
(URLリンク(www.jajakarta.org))したくても参加できないのですが、
どうすればよいでしょうか?
tomcatスレがないのでここで質問させていただきました。
(正確にはありますが、関係ないようだったので)
458:455
08/11/28 13:18:42
>>456
ではどのようにパターンを読んで抜き出しているのでしょうか?
閾値の設定は
459:455
08/11/28 13:20:31
>>458
間違って一度書き込んでしまいました^^;
ではどうやってマッチングの閾値を設定するプログラムを作ればいいのでしょうか?
今のやつではターゲットと全く同じパターンしか抜き出すことができなくて・・・。
460:デフォルトの名無しさん
08/11/28 14:59:52
swingでJFileChooserを使ってファイルの保存ダイアログを表示させています。
そこで「拡張子の指定がなかった場合は自動的に.txtを付与する」という機能を付けたいのですが
どういったメソッドが用意されているでしょうか
461:デフォルトの名無しさん
08/11/28 15:07:42
getSelectedFileでもオーバーライドすれば?
462:デフォルトの名無しさん
08/11/28 22:54:59
最近本を買って勉強を始めたのですが、本のサンプルソースを丸写ししてもコンパイルにエラーが出てしまいます。
始めたばかりでよく分からないのですが、
import java.util.Scanner;
や
int x = stdIn.nextInt();
がダメなようです。
いきなり変数にキーボードから代入するという初めのほうで止まってしまって困っています。
全部のソースを上げたいのですが、ロダとかいろいろ使い方が分からないので抜粋しました。
ググっても知識がなさ過ぎて、ますます分からなくなる始末でした。
もしよければどこが悪いか教えていただけると幸いです。
463:デフォルトの名無しさん
08/11/28 22:57:16
>>462
javaのインストールとかパスとかは通したの?
464:デフォルトの名無しさん
08/11/28 23:06:38
エクリプスいれてやってみ
465:デフォルトの名無しさん
08/11/28 23:06:39
javaのバージョンは何使ってます?
1.5くらいからだっけ?.Scanner
466:デフォルトの名無しさん
08/11/28 23:08:00
>>462
hello worldは実行できたの?
467:デフォルトの名無しさん
08/11/28 23:09:27
scannerはJDK 5.0から。
468:デフォルトの名無しさん
08/11/28 23:09:54
みんな親切だなwこんな教えて君以下のカス相手に
469:デフォルトの名無しさん
08/11/28 23:21:08
今度から君の質問にも答えてあげるから今回はひがむな、教えて君
470:462
08/11/28 23:29:14
hello worldはできました。
どうやらバージョンが悪かったようです。
確認したら C:\j2sdk1.4.2_18 となっていたので、新しいの入れないとダメみたいですね。
みなさん、こんな初歩の初歩の質問に答えていただきありがとうございました。
471:デフォルトの名無しさん
08/11/28 23:33:02
for(int a=0; a<12; a++){
これのa++で1足すって事ですよね?
2づつ足したい場合は如何すれば良いんですか?
472:デフォルトの名無しさん
08/11/28 23:36:14
a+=2
473:デフォルトの名無しさん
08/11/28 23:39:10
>>472
有難うございます
474:デフォルトの名無しさん
08/11/29 00:14:48
>455
どっかで見たことあると思ったら宿題スレか
475:デフォルトの名無しさん
08/11/29 02:22:30
>>455
見た感じ、半数以上の"1"(黒?)のドットが一致すればヒットしそうだが。
476:デフォルトの名無しさん
08/11/29 03:53:17
ResultSet の getString と getNString はどう違うんですか?
NCHAR型 読み込むときに getString 使ってると何か問題起きるとか?
477:デフォルトの名無しさん
08/11/29 06:44:36
TreeMap<Integer, Integer> treemap = new TreeMap<Integer, Integer>();
for(~){
treemap.put(keyl, val);
}
int j = treemap.size();
int[] order = new int[j];
for (Map.Entry<Integer, Integer> in : treemap.entrySet()) {
order[--j] = in.getValue();
System.out.println("j:"+j);
System.out.println("Key:" + in.getKey());
System.out.println("Val:" + order[j]);
}
このようにtereemapの要素を配列に降順にいれようとしたのですが、treemapの要素がマイナスのとき
それがサイズとしてカウントされませんでした。
例: 1,6,33,7,-1,-9 のときのサイズは4つ
これは何故こうなるのでしょうか?
というかそもそもこれよりも簡単綺麗に降順にして配列にいれる方法ありましたら教えてください
478:デフォルトの名無しさん
08/11/29 09:57:10
>>477
>というかそもそもこれよりも簡単綺麗に降順にして配列にいれる方法ありましたら教えてください
降順にするならComparatorを実装したクラス一個作ってそれを使ってtreemapを
コンストラクトした上で
treemap.values().toArray()で配列を取り出すとかすればいけそうな気はする
479:デフォルトの名無しさん
08/11/29 15:03:16
>>478
ありがとうございます
今試しにやってみたところtreemapの精度が正確ではないのか
ソートがところどころ順番がおかしくなっていました
2つの要素i,jがありそれぞれをセットとして、iで降順にソートし、その順番でjを配列に格納するにはどうしたらいいのでしょうか?
i , j
4 , 43
675, 23
262, 5
を
675, 23
262, 5
4 , 43
とソートしたいと思っています
int [][]ar = new int[64][2]; //無駄な配列ができますが、ループが終わるまで要素数がわからないので・・・
int j;
for(int i =0;i<64;i++){
if(iがある条件なら){
j= getKey(~);
}
ar[i][0] = j;
ar[i][1] = i;
}
そしてこのarをar[i][0]の降順にソート
int ar2 = new int[ar.length];
for(int i=0; i<ar.length;i++){
ar2[i] = ar[i][1];
}
return ar2;
480:デフォルトの名無しさん
08/11/29 15:26:07
>treemapの精度が正確ではないのか
うけたw
481:デフォルトの名無しさん
08/11/29 16:46:47
>>479
どこから突っ込めばいいんだ・・・
482:デフォルトの名無しさん
08/11/29 17:33:21
>>479
やっつけで作ってみたけど、やりたいのはこゆこと?
import java.util.*;
public class Test{
public static void main(String args[]){
TreeMap<Integer, Integer> treemap = new TreeMap<Integer, Integer>(new TestCmp());
treemap.put(Integer.valueOf(4),Integer.valueOf(43));
treemap.put(Integer.valueOf(675),Integer.valueOf(23));
treemap.put(Integer.valueOf(262),Integer.valueOf(5));
Object[] keys = treemap.keySet().toArray();
Object[][] result = new Object[keys.length][2];
int i=0;
for(Object key:keys){
result[i][0]=key;
result[i][1]=treemap.get(key);
System.out.println("key="+result[i][0]+":val="+result[i][1]);
i++;
}
}
}
class TestCmp implements Comparator{
public int compare(Object i1, Object i2){
if((Integer)i1<(Integer)i2){return 1;}
if((Integer)i1>(Integer)i2){return -1;}
return 0;
}
public boolean equals(Object o){
if(o.equals(this)){return true;}
return false;
}
}
483:デフォルトの名無しさん
08/11/29 17:45:56
Comparatorを書かなくても元々キーの昇順にソートするComparatorを持っているからそれを逆にすればいい。
TreeMap<Integer, Integer> treemap = new TreeMap<Integer, Integer>();
treemap.put(4 , 43);
treemap.put(675 , 23);
treemap.put(262 , 5);
TreeMap<Integer, Integer> reversemap = new TreeMap<Integer, Integer>(Collections.reverseOrder(treemap.comparator()));
reversemap.putAll(treemap);
System.out.println(treemap);
System.out.println(reversemap);
配列に代入するところまでは書かない。
484:デフォルトの名無しさん
08/11/29 17:49:26
進捗バーについての質問です。ご教授ください。
for文で約30レコードのデータをオラクルから持ってきていていまして、
そのデータのロードがあまりにも遅いために進捗バーを設定したんですけど、
for文内でsetValue()で値を随時セットしているようにしても、バーは正しく動作せず、
パッと突然0%から100%に変わってしまいます。どうやらfor文の中で値を設定しても
バーの表示が変わるのはfor文を抜けた直後なのが原因だそうですが、
だとすれば、一体どのようにすれば進捗バーはちゃんと動作してくれるのでしょうか?
Eclipseを利用して画面を作成しています。
485:デフォルトの名無しさん
08/11/29 17:49:58
treemapが最初にありきの場合なので、
最初から逆順ソートのComparatorを持つTreeMapを作って、
それにputしていくのならこれは関係ないね。
486:デフォルトの名無しさん
08/11/29 17:55:26
>>484
バーが正しく動作しないのではなくバーを正しく動作させていないのでは
ここらへんを参考に
URLリンク(java.sun.com)
487:デフォルトの名無しさん
08/11/29 19:24:40
JNI使って、
int[] を返す native な関数をつくり、
DLLを C/C++ で実装し、
malloc とかしてメモリ確保してそのポインタをして返しやったりした場合、
Java 側ではガベージコレクションされなくなるんでしょうか?
(new したものしかガベージコレクション対象にならない?)
また、free するような関数も DLL で実装して、
int[] (jintarray になるのかな?) を渡して
開放とかってできるんでしょうか?
DLL で画像処理させたい(MMXとかを使う)ので、
メモリアライメントがとれてる配列を使いたいので、、、
スレ違いかもしれませんが、よろしくお願いします。
488:デフォルトの名無しさん
08/11/29 20:36:14
Serializableで、プリミティブ基本型と配列型が自動で直列化されるということは、
もし全てのクラスでSerializableを実装していると
cloneみたく自分でコピーのコード書かなくてもデープコピーになるってことでしょうか?
489:デフォルトの名無しさん
08/11/29 21:07:17
StringのindexOfメソッドの引数は何故charではなくintなのでしょうか?
490:デフォルトの名無しさん
08/11/29 21:10:16
>>489
charだろ
491:デフォルトの名無しさん
08/11/29 21:22:12
>>487
とりあえずJNIスレはこの板にあるのでそちらで聞いた方が良いだろう、
という事と、JNIに準じたコードを素で実装するよりSWIGを利用した方が
色々と楽が出来ると思います。
それこそガベージコレクタ周りもサポートありますし。
492:デフォルトの名無しさん
08/11/29 21:48:50
わからないからってすぐすれ違いにするなよ
493:デフォルトの名無しさん
08/11/29 22:10:41
>>487
malloc で確保したメモリを返しても int[] にはならんよ。
1.4以降の NewDirectByteBuffer 使うとか?
スレリンク(tech板:587-596番) あたりに出てるけど
ネイティブ側で確保したメモリは、JVMのガベコレは解放してくれないので
自前で解放する必要があるみたいね。
494:デフォルトの名無しさん
08/11/29 22:11:15
いや、そういうわけじゃないんだけどね。
普通はByteBuffer.allocateDirectをつかう。
この関数は、要望が多かったから、君がやりたいようなことをそのままJVMでサポートした関数だから。
これも使いたくないって言うなら、ちゃんとAPIドキュメント(JNI)を読むこったw
495:デフォルトの名無しさん
08/11/29 22:15:38
>>492
分かったら、ちゃんと仏様って呼ぶんだぞ
496:487
08/11/29 22:32:12
>>491
ありがとうございます。ただ、色々と複雑な画像処理をするので、
自分で細かくカスタマイズできるレベルが希望なんです。
>>493
うおー、勉強になりました。
ちょっとこれでやってみます。ありがとうございます。
497:デフォルトの名無しさん
08/11/29 22:37:24
APIも読んでない野郎はカス
498:デフォルトの名無しさん
08/11/29 22:42:36
JavaってIO関連のAPIの頭の中の整理がいまいちつかないんだけど
俺の頭が悪いのか、皆そうなのか・・・
なんどやってもだめ。すぐ忘れる。
499:デフォルトの名無しさん
08/11/29 22:44:19
こんなやつ>>492に親切に答えてやるな。
どうせAPIも読まない独学だし、こういうカスが調子に乗ったらどうすんの?
こういうのがそのうち祟り神(荒らし)になっちゃんだしな・・
500:デフォルトの名無しさん
08/11/29 22:46:08
>>498
そのうち慣れるよ
俺も昔はインプットストリームだバッファーなんたらだって頭がおかしくなりそうだったが
最近は見慣れたし、1度書いたコードをコピペしてシャキーンと直せば解決したりもする
501:デフォルトの名無しさん
08/11/29 22:58:47
シャキーンもなにも、JNIスレも探してないしすぐ発狂するし、こういう奴は見込みないよ。やめとけ、やめとけ。
502:デフォルトの名無しさん
08/11/29 23:00:27
>>500
ていうか、おまえは人様が作ったパッケージを使ってるだけだろ?
自分で作ったこともないクセに偉そうにするな。おっさんw
503:デフォルトの名無しさん
08/11/29 23:04:24
>>498
ここはおまえの日記帳じゃないからとっとと消えろw
504:デフォルトの名無しさん
08/11/29 23:10:15
>>502
人様が作ったから頭にはいらねーんだよボケが
自分で作ったらいくらなんでも覚えとるわい!
しかし、IDついてないのにみんなよく特定できるな
505:デフォルトの名無しさん
08/11/29 23:15:31
ソースにはIDあるよ
506:デフォルトの名無しさん
08/11/29 23:20:23
>>504
雑魚w
507:デフォルトの名無しさん
08/11/29 23:21:53
>>505
まじか!
俺なんて、自分が書き込んだIDもわからんぜよ
508:デフォルトの名無しさん
08/11/29 23:45:47
>>482-483
ありがとうございます
無事実現したいことができました
509:498
08/11/30 00:20:36
>>500
ありがとう。わけわからんくなるよね?本当に。
>>502
市ね。ごみ屑。
510:デフォルトの名無しさん
08/11/30 00:23:47
コンストラクタの処理を途中で数秒間止めてから
その後コンストラクタの続きの処理を動かすにはどうすればいいでしょうか?
public コンストラクタ(){
System.out.println("1");
ここで数秒処理を止める
System.out.println("2");
}
このような処理にしたいのですが
511:デフォルトの名無しさん
08/11/30 01:06:50
eclipseで動かしてるプログラムなんですが下記のエラーが出ます。
データを読み取って新たにファイルを作り出すプログラムなのですが・・・
何が原因でしょうか?
java.lang.IntrnalError: fillbuf
at org.apache.crimson.parser.InputEntity.parsedContent(InputEntity.java:545)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1871)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1824)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1824)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1824)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1552)
at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:534)
at org.apache.crimson.parser.Parser2.parse(Parser2.java:318)
at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:287)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:650)
512:デフォルトの名無しさん
08/11/30 01:27:40
>>511
多分、eclipse ではなくプログラムの方に問題がある感じだね。
513:デフォルトの名無しさん
08/11/30 09:16:51
ランダムにリンクが飛ぶスクリプトを拾ったんですが、
新ウィンドウでリンクを開く場合はどうしたらいいでしょうか。
アドレスのあとにtarget="_blank"と入れてもだめでした・・・。
<form>
<input type=button onClick="jump()" value="ランダムリンク">
</form>
<script>
url = new Array();
/* リンク先のURLを好きなだけ記述 */
url[0] = "test0.html";
url[1] = "test1.html";
function jump() {
p = Math.round(Math.random() * (url.length - 1));
parent.top.document.location = url[p];
}
</script>
514:デフォルトの名無しさん
08/11/30 09:30:01
>>513
それJavaScriptじゃ。。。
該当スレで聞いて下さい
515:デフォルトの名無しさん
08/11/30 09:32:08
すれ違いでしたか、すみませんでした。
516:デフォルトの名無しさん
08/11/30 12:22:00
>>509
スレが汚れるだけだからこういうの止めてくれないか?
517:デフォルトの名無しさん
08/11/30 16:21:25
汚れるといってもあなたの陰金には負けます
518:デフォルトの名無しさん
08/11/30 17:13:56
Unix環境などX Windowがない環境でグラフィック処理を行うと
エラーになるため、以下の環境変数を指定して実行すると正常に動作するというのを見つけました。
java -Djava.awt.headless=true hogehoge
そこで質問させてください。
awtの処理でOSに依存するネイティブな処理が走るけど、
グラフィックをサポートしていないOSではエラーとなるため
上記の設定が必要だと思ってます。
では、上記設定を行うとネイティブで行ってた処理を誰が行ってくれるのでしょうか?
Java側にネイティブのグラフィック処理に変わる実装があり、
そちらで処理してくれるのでしょうか?
それでしたら、そもそもネイティブな処理を呼び出す必要がないですよね?
java.awt.headless=true を指定すると
正常に処理される内部のメカニズムを教えてくださいm(__)m