トップページ⇒tech
1001コメント352KB

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

レス数が1000を超えています。これ以上書き込みはできません。
0001Javaってなんぼじゃ!おりゃーNGNG
☆★☆こんなメッセージが出たら >>2 へ☆★☆
『'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッ ファイルとして認識されていません。』
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』

>>2-3 初心者によくある質問と回答・他のFAQサイトへのリンク
>>4  JDKの配布元とAPIドキュメントへのリンク
>>5-6 過去スレの一覧
>>7-10 関連スレ
>>11 2ちゃんねる外のJavaサイト・無料の開発環境の配布場所
(諸般の事情でずれた場合は >>2-20 )

Google で検索 ⇒ http://www.google.co.jp/
JavaFAQ で探す ⇒ http://www.gimlay.org/~javafaq/javafaq.html
ご要望によりじゃばこサイト ⇒ http://www.javaco.org/
■JavaScriptの質問■はWeb製作板 ⇒ http://pc3.2ch.net/hp/
  または「JavaScript デス」スレへ⇒
http://pc2.2ch.net/test/read.cgi/tech/1052273054/

パソコンの基本操作に関しては、PC初心者板へどうぞ ⇒ http://pc.2ch.net/pcqa/

これからJavaのプログラムを始めたいかたは >>2-4 へ
必要な情報やコンパイラのダウンロード先へのリンクがあります。

基本的に sage 進行でおねがいします。また煽り厨は放置でお願いします。
※初心者なんでよろしくです。
0002デフォルトの名無しさんNGNG
Q. javac コマンドを実行したときに、
『コマンドまたはファイル名が違います』や
『'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。』
と表示されてコンパイルできません。
A. javac.exeへのPATHが通っていません。
http://java.sun.com/j2se/1.4.1/ja/install-windows.html
を良く読んで、javac.exe のあるディレクトリ(例: C:\j2sdk1.4.1_01\bin )のパスを
環境変数PATHに追加してください。 その後、
Windows98/MEの場合はOSを再起動、
Windows2000/XPの場合はコマンドプロンプトを立ち上げなおしてください。
設定したパスが正しければ、javacが使えるようになります。
それでも同じエラーが出る場合は、設定した値が間違っています。
よく見直してください。

Q. javac Hello.java でコンパイルはできるのですが、
java Hello を実行しようとすると
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』
と表示されて実行できません。
A. カレントディレクトリ(.)がクラスパス(classpath)に含まれていません。
コマンドプロンプトで、
set CLASSPATH=%CLASSPATH%;.
と設定する。最後の「;」と「.」を見落とさないように!
または、
http://www.gimlay.org/~javafaq/S004.html#S004-02
を読んでカレントディレクトリ「.」を環境変数CLASSPATHに追加してください。

クラスパスとはなにか(JavaFAQ 基礎知識)
http://www.gimlay.org/~javafaq/S004.html
0003デフォルトの名無しさんNGNG
Q. Javaのインストール方法、パスや環境変数の設定方法が分かりません。
A: Java(TM) 2 SDK インストールガイド
http://java.sun.com/j2se/1.4.1/ja/install.html
http://java.sun.com/j2se/1.4.1/ja/install-windows.html

Q: クラスの使い方が分かりません。
A: Java 2 プラットフォーム API 仕様
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

Q: SDKの仕様や、Javaの使い方、コマンドの使い方を教えて下さい。
A: Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.4/ja/docs/ja/index.html

Q: Javaの言語仕様が知りたいです。
A: Java言語規定
http://www.y-adagio.com/public/standards/tr_javalang/index.htm
http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html

Q: 「僕以外の人も、同じ疑問を持ったはず」と思えるような質問があります。
A: Java House ML Topics / Java FAQ / Java Tips
http://java-house.jp/ml/topics/
http://www.gimlay.org/~javafaq/
http://www.javaworld.com/columns/jw-tips-index.shtml

このほかのFAQ(良くある質問とその回答)はこちら↓をご覧ください。
http://www.gimlay.org/~javafaq/javafaq.html
0004デフォルトの名無しさんNGNG
■■■ JavaのコンパイラとAPI リファレンス ■■■
【Sun J2SE SDK 1.3】
http://java.sun.com/j2se/1.3/ja/download.html
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html

【Sun J2SE SDK 1.4】
http://java.sun.com/j2se/1.4/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【Sun J2SE SDK 1.4.1】
http://java.sun.com/j2se/1.4.1/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【IBM J2SE SDK 1.1/1.3】 (要ユーザ登録)
http://www-105.ibm.com/developerworks/tools.nsf/dw/java-devkits-byname?OpenDocument&Count=100
0005デフォルトの名無しさんNGNG
JAVA厨房
http://piza.2ch.net/tech/kako/966/966391052.html
Java相談室
1 http://piza.2ch.net/tech/kako/971/971960169.html
2 http://piza.2ch.net/tech/kako/980/980858322.html
3 http://piza2.2ch.net/tech/kako/994/994150280.html
4 http://pc.2ch.net/tech/kako/997/997791189.html
5 http://pc.2ch.net/tech/kako/1003/10035/1003567552.html

ネタ心者歓迎!今更ながらにJavaを学ぼう!
1 http://piza.2ch.net/tech/kako/981/981424252.html
2 http://pc.2ch.net/tech/kako/993/993358225.html

ネタ心者歓迎! 今更ながらにJava相談室
01 http://pc.2ch.net/tech/kako/1003/10035/1003569074.html
02 http://pc.2ch.net/tech/kako/1006/10064/1006408230.html
03 http://pc.2ch.net/tech/kako/1007/10078/1007802486.html
04 http://pc.2ch.net/tech/kako/1010/10105/1010545421.html
05 http://pc.2ch.net/tech/kako/1012/10129/1012968994.html
06 http://pc.2ch.net/tech/kako/1015/10154/1015418174.html
07 http://pc.2ch.net/tech/kako/1018/10186/1018631329.html
08 http://pc.2ch.net/tech/kako/1020/10204/1020453823.html
09 http://pc.2ch.net/tech/kako/1021/10215/1021555964.html
0006デフォルトの名無しさんNGNG
【初心者・ネタ】Java質問・相談スレ【大歓迎】
01 http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
02 http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
03 http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
04 http://pc3.2ch.net/tech/kako/1026/10266/1026601774.html
05 http://pc3.2ch.net/tech/kako/1028/10280/1028096225.html
06 http://pc3.2ch.net/tech/kako/1029/10297/1029774594.html
06+ http://pc3.2ch.net/tech/kako/1031/10313/1031397913.html
07 http://pc3.2ch.net/tech/kako/1032/10329/1032944182.html
08 http://pc3.2ch.net/tech/kako/1032/10329/1032944246.html
09 http://pc3.2ch.net/tech/kako/1034/10343/1034303501.html
10 http://pc3.2ch.net/tech/kako/1035/10355/1035570359.html
11 http://pc3.2ch.net/tech/kako/1036/10361/1036142056.html
12 http://pc3.2ch.net/tech/kako/1037/10374/1037407642.html
13 http://pc3.2ch.net/tech/kako/1038/10387/1038731106.html
14 http://pc3.2ch.net/tech/kako/1040/10401/1040150533.html
16 http://pc3.2ch.net/tech/kako/1042/10424/1042407622.html
16+ http://pc2.2ch.net/tech/kako/1043/10436/1043654161.html
18 http://pc2.2ch.net/tech/kako/1044/10449/1044983072.html
19 http://pc2.2ch.net/tech/kako/1046/10461/1046166884.html
20 http://pc2.2ch.net/tech/kako/1047/10475/1047544179.html
21 http://pc2.2ch.net/tech/kako/1048/10486/1048689029.html
22 http://pc2.2ch.net/test/read.cgi/tech/1049715659/l50
23 http://pc2.2ch.net/test/read.cgi/tech/1051284438/l50
24 http://pc2.2ch.net/test/read.cgi/tech/1052625006/l50
25 http://pc2.2ch.net/test/read.cgi/tech/1054041744/l50
26 http://pc2.2ch.net/test/read.cgi/tech/1055601178/l50
27 http://pc2.2ch.net/test/read.cgi/tech/1057249423/l50
0007デフォルトの名無しさんNGNG
28 http://pc2.2ch.net/test/read.cgi/tech/1058408362/

■■■ Java関連スレいろいろ ■■■ 
【IDE 統合開発環境】
【Java/C/他】統合開発環境Eclipse RC6
http://pc2.2ch.net/test/read.cgi/tech/1051840417/
えっ?JBuilder8が発売?
http://pc2.2ch.net/test/read.cgi/tech/1038042372/l50
【Meadow】Java開発環境(・∀・)イイ【JDEE】
http://pc2.2ch.net/test/read.cgi/tech/1017214967/l50
【統合】Java開発環境スレ
http://pc2.2ch.net/test/read.cgi/tech/1038118138/l50
【Java】NetBeans vs Eclipse【IDE】
http://pc2.2ch.net/test/read.cgi/tech/1029407008/l50

【携帯・モバイル】
携帯JAVAのスレッド
http://pc2.2ch.net/test/read.cgi/tech/1011977260/l50
iモード携帯電話用Java(iアプリ) Part 3
http://pc2.2ch.net/test/read.cgi/tech/1040898596/l50
iアプリでゲーム (ゲーム製作技術板)
http://pc2.2ch.net/test/read.cgi/gamedev/1005042631/l50
京セラJAVA搭載PDauPocketCosmo」 (モバイル板)
http://pc3.2ch.net/test/read.cgi/mobile/1021979970/l50
0008デフォルトの名無しさんNGNG
【サーバサイドゃ;ンタープライズ】
EJB(初心メ鰹+})
http://pc2.2ch.net/test/read.cgi/tech/1017240849/l50
= ?Servlet/JSP(EJB萱洫 ソ貰々レ = ?(WebProg泊ァ
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/l50
TOMCAT
http://pc2.2ch.net/test/read.cgi/tech/998525941/l50
Servlet/JSPv》レームワークり雁"Xレ
http://pc2.2ch.net/test/read.cgi/tech/1001950590/l50
EJBw.Iら!!逐?
http://pc2.2ch.net/test/read.cgi/tech/1036481443/l50
JavaサーブレットQ& LV2
http://pc.2ch.net/tech/kako/1012/10127/1012728608.html
サーバーサイドJAVAり梳 [ゆ雁"Xレ
http://pc.2ch.net/tech/kako/1004/10049/1004972840.html
0009デフォルトの名無しさんNGNG
【サーバサイドやエンタープライズ】
EJB(初心者歓迎)
http://pc2.2ch.net/test/read.cgi/tech/1017240849/l50
■■ Servlet/JSP(EJB含む) 質問スレ ■■ (WebProg板)
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/l50
TOMCAT
http://pc2.2ch.net/test/read.cgi/tech/998525941/l50
Servlet/JSPのフレームワークを語るスレ
http://pc2.2ch.net/test/read.cgi/tech/1001950590/l50
EJBは終わってる
http://pc2.2ch.net/test/read.cgi/tech/1036481443/l50
JavaサーブレットQ&A LV2
http://pc.2ch.net/tech/kako/1012/10127/1012728608.html
サーバーサイドJAVAをまたーり語るスレ
http://pc.2ch.net/tech/kako/1004/10049/1004972840.html
0010デフォルトの名無しさんNGNG
【その他】
クライアントサイドJavaどうよ?
http://pc3.2ch.net/tech/kako/1002/10021/1002160815.html
クライアントサイドJavaどうよ? part2
http://pc2.2ch.net/tech/kako/1032/10326/1032665721.html
クライアントサイドJavaどうよ? part3
http://pc2.2ch.net/test/read.cgi/tech/1045891783/l50
ム板のみんなでRobocode (・∀・)ヤロ−ウヨ!1台目
http://pc3.2ch.net/tech/kako/1020/10201/1020161792.html
Java 高速GUI SWT
http://pc2.2ch.net/test/read.cgi/tech/1032448424/l50
【徹底討論】Java3Dの可能性について考える
http://pc2.2ch.net/test/read.cgi/tech/1033703640/l50
★お前らJavaはJNIで組もうぜ★
http://pc2.2ch.net/test/read.cgi/tech/1033795664/l50
Javaアプレットのゲームの限界は! (ゲーム製作技術板)
http://pc2.2ch.net/test/read.cgi/gamedev/1005230153/l50
【Java編】 学校の宿題は俺にやらせろ 【Java編】
http://pc2.2ch.net/test/read.cgi/tech/1040552821/l50
祝 JAVA Developer創刊
http://pc2.2ch.net/test/read.cgi/tech/1024967343/l50
0011デフォルトの名無しさんNGNG
■■■ 他板のJavaスレッド ■■■
UNIXでJAVA (Unix板)
http://pc.2ch.net/test/read.cgi/unix/1011292632/l50
LinuxのJAVAチューニングスレ (Linux板)
http://pc.2ch.net/test/read.cgi/linux/1004594459/l50
◆◆◆◆◆◆MacでJava◆◆◆◆◆◆ (新Mac板)
http://pc.2ch.net/test/read.cgi/mac/991194610/l50

■■■ 撲滅させたいかた、死滅を心配してるかた ■■■
CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/tech/kako/1009/10097/1009707596.html
C#とJava、どっちをおぼえればいいの?
http://pc2.2ch.net/test/read.cgi/tech/1006715468/l50
Java撲滅委員会
http://pc.2ch.net/tech/kako/996/996848309.html
Java撲滅委員会
http://pc3.2ch.net/test/read.cgi/tech/996848309/l50
●●JAVAって死滅しちゃうの????●●
1 http://pc.2ch.net/tech/kako/1005/10051/1005159122.html
2 http://pc.2ch.net/tech/kako/1006/10060/1006053686.html
3 http://pc.2ch.net/tech/kako/1008/10081/1008162230.html
4 http://pc2.2ch.net/tech/kako/1042/10422/1042268758.html
5 http://pc2.2ch.net/tech/kako/1046/10465/1046539052.html
6 http://pc2.2ch.net/test/read.cgi/tech/1047748598/
0012デフォルトの名無しさんNGNG
■■■ 民間サイト ■■■
巨大なJavaリンク集
Java的リンク
http://www.geocities.co.jp/SiliconValley/6064/java_link.html
What's New about Java(Java に関する最新ニュース)
http://www.gimlay.org/~andoh/java/javanew.html

■■■ 無料の統合開発環境 ■■■
【Eclipse R2】
http://www.eclipse.org/downloads/index.php
【Sun ONE Studio 4 (Forte 4)】
http://jp.sun.com/products/software/tools/jde/try/index.html
【NetBeans v3】
http://www.netbeans.jp/dowonload.htm
【JBuilder 7 Personal】
http://www.borland.co.jp/jbuilder/jb7/download/

※2chではないので暴れないように。
0013デフォルトの名無しさんNGNG

いつもおまえらスレ立て人には、感謝してます
乙
0014デフォルトの名無しさんNGNG
いつもおまえらスレ立て人には、憤慨してます
死ね
00151NGNG
続きやってくれた人ありがとうです。
0016デフォルトの名無しさんNGNG
>>1、続きやった人
オツ
0017デフォルトの名無しさんNGNG
だまれウンコ共
乙
0018デフォルトの名無しさんNGNG
っていうかよく見たらclassにpublicついてないじゃん。
氏ねよマジで。
>>1 乙
0019デフォルトの名無しさんNGNG
いいかげんCLASSPATH環境変数を使うのは非推奨にしたらどうよ。
0020前スレ898NGNG
>>983
BufferedReader myReader = null;
try{
try {
myReader=new BufferedReader(new FileReader("aaa.txt"));
String line;
int count=0;
Point3d[] vertices = new Point3d[1000];
StringTokenizer st=null;
while ((line = myReader.readLine()) != null) {
if(count==1000)break;
st=new StringTokenizer(line," ");
double[] temp=new double[st.countTokens()];
for(int j=0;st.hasMoreTokens();j++){
temp[j]=Double.parseDouble(st.nextToken());
}
vertices[count]=new Point3d(temp[0],temp[1],temp[2]);
}
}
catch(Exception e){
}
finally{
myReader.close();
}
}catch(Exception e){
}
コンパイルは通ったのですが実行時にjava.lang.NullPointerExceptionエラーが
LineArray geometry = new LineArray(vertices.length, GeometryArray.COORDINATES); ←この行
で発生しました
外部ファイルを参照しないときはこんなことなかったのに
0021デフォルトの名無しさんNGNG
verticesがnullぽ
0022デフォルトの名無しさんNGNG
vertices.length
0023デフォルトの名無しさんNGNG
GeometryArray.COORDINATES
0024デフォルトの名無しさんNGNG
>>20
皆さんがおっしゃるとおりvertices.lengthの値がnullだと思われます。
ソースが見れないのでなんともいえませんがverticesを宣言できてないのでは?
FileReader(”aaa.txt”)の部分でエラーが生じてそうな悪寒
aaa.txtがまずクラスファイルと同一階層にあるかを調べてみてください。
それがしっかりできているならPoint3d[] vertices〜の下でprintlnして見たり
catchブロックでなんらかを出力させてみたりしてください。
これだけの情報じゃなんともいえないです・・すんません

0025デフォルトの名無しさんNGNG
>>前スレ903
>rand.nextInt() & 0x3ff;
>
>↑で乱数の値は0〜1023までになってるでしょうか?

rand.nextInt() % 1024; にしろ、範囲は 0〜1023 になるはずだが
一般的には一様にならない。
基本的に乱数の下位ビットは比較的短い周期で元に戻ってしまう。
0026デフォルトの名無しさんNGNG
>>1
連続カキコでとまったかな〜?と思ったので続きやらせていただきましたが
私の方も>>12を書いた時点で
連続カキコにひっかっかり、今までかけませんでした泣く
これ、すぐに復帰できるようにするにはしばらくおとなしくしてるしかないんですかね?
0027前スレ898NGNG
皆さんレスありがとうございます。
Point3d[] vertex = null;
としてやると実行できました。
まだJavaよくわかっていませんがこれからも頑張ります。
本当にありがとうございました。
0028デフォルトの名無しさんNGNG
>>19 賛成。
0029デフォルトの名無しさんNGNG
PureJavaってなぁに?
0030デフォルトの名無しさんNGNG
Linux Redhat9.0
SDK 1.4.1_04
環境において、JAVA2Dを利用し文書を作るアプリを作っています
「半角カナ」フォントを変えようと思い
$JAVA_HOME/jre/lib/font.properties.ja内のsansserif設定を
変更前)
sansserif.1=-kochi-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0201.1976-0
sansserif.2=-kochi-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0208.1983-0
変更後)
sansserif.1=-shinonome-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0201.1976-0
sansserif.2=-shinonome-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0208.1990-0
と変えましたが、「半角カナ」が総て □ となってしまいました。

xfontsel,xfdでは確認できるフォントを使用しました。
見落している箇所をどうかご指摘願います。
0031デフォルトの名無しさんNGNG
>>28
クラスパス非推奨ってどういうこと?
全部extフォルダに入れるとか、IDE使えってこと????
0032デフォルトの名無しさんNGNG
>>31
環境変数に設定するのを非推奨にしようってことだろ?
全部extフォルダに入れるなんてもってのほか。
コンパイル時や実行時に個別に指定するほうがイイってこと。
AntとかIDE使うのもその手段の一つだが。

いまだにJ2EEアプリ実行するのに実行ユーザの環境変数に
クラスパス設定するヤシとかextにライブラリ入れるヤシとかいて
あきれるな。
0033デフォルトの名無しさんNGNG
究極は

java.lang.String s=new java.lang.String("text");

とか推奨か?
0034デフォルトの名無しさんNGNG
環境変数のCLASSPATHは使わないほうがいいでしょ。

CLASSPATHが設定されていなければ
c:\somewhere>java HelloWorld
が動作する。

CLASSPATHが変なところに設定されているから動かなくなるだけ。

いっぱいjarファイルが必要なアプリはバッチファイルを作って、
set JARS=foo.jar;bar.jar
java -classpath %JARS%;. net.2ch.SomeApp
とでもすればいい。
0035デフォルトの名無しさんNGNG
>33
java.langはimportしなくても使えるぞ。
0036デフォルトの名無しさんNGNG
>>33
クラスパスとimport混同してない?
こんなヤシは>>2見れ
0037デフォルトの名無しさんNGNG
クラスパス非推奨派は理由を述べないな
0038デフォルトの名無しさんNGNG
>>37
ポータビリティが低下するからに決まってんだろ。
そんなことわざわざ言ってもらわないとわからなのか・・・・?
0039ただの見物人NGNG
わかんねーよ。Javaしらねーし
0040デフォルトの名無しさんNGNG
>37
SUNはこう言ってるが。

The -classpath option is preferred because you can set it individually for each application
without affecting other applications and without other applications modifying its value.

ttp://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/classpath.html
0041デフォルトの名無しさんNGNG
classpathオプションが好まれる?
0042デフォルトの名無しさんNGNG
>>41
そう。環境変数に設定せずに、実行時に指定する方法が推奨。
必要なクラスパスはアプリによって違うからな。
0043デフォルトの名無しさんNGNG
-classpath オプションが推奨されているのは、アプリケーションごとに個別に設定できるので、
ほかのアプリケーションに影響を与えたり、ほかのアプリケーションからこの値が変更されたりすることがないためです。
0044デフォルトの名無しさんNGNG
つまり環境変数は使わずにオプションを使えってことか。
0045デフォルトの名無しさんNGNG
>>44
よくできました
0046デフォルトの名無しさんNGNG
インストールするとCLASSPATHを設定するアフォなアプリもあるから、
初心者向けのQ&Aとしてはこんな感じか?

Q. javac Hello.java でコンパイルはできるのですが、
java Hello を実行しようとすると
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』
と表示されて実行できません。
A. カレントディレクトリ(.)がクラスパス(classpath)に含まれていません。
コマンドプロンプトで、
java -cp . Hello
と設定する。「-cp」の後ろの「.」を見落とさないように!
「.」の前後には半角空白が必要です。
または、
http://www.gimlay.org/~javafaq/S004.html#S004-02
を読んでカレントディレクトリ「.」を環境変数CLASSPATHに追加してください。
0047デフォルトの名無しさんNGNG
コマンドプロンプトで、
java -cp . Hello
と実行する。「-cp」の後ろの「.」を見落とさないように!
~~~~~~~~~~
の間違い。
0048デフォルトの名無しさんNGNG
java -cp `pwd` Hello
0049デフォルトの名無しさんNGNG
Javadocドキュメント(?)部分に変更履歴を書くと思いますが、
その変更履歴の書き方のフォーマットって用意されていたりしますか?
あれば教えて下さい。
0050デフォルトの名無しさんNGNG
String s = "a" + "b" + "c" + "d" + "e";
は
String s = new StringBuffer("a").append("b").append("c").append("d").append("e").toString();
としてコンパイルされるとJavadocに書いてあったんですが、
実際には双方の実行時間がまったく違いました。
Stringリテラルの連結のほうが圧倒的に速いのです。
なぜでしょう?
J2SE-1.4.2でコンパイルし、実行しました。
005150NGNG
ちなみにこんなソースです。
public class Concat {
 public static void main(String[] args) {
  int iteration = 1000000;
  String t = "a" + "b" + "c" + "d" + "e";
  {
   Date before = new Date();
   for(int i = 0; i < iteration; i++){
    String s = "a" + "b" + "c" + "d" + "e";
   }
   Date after = new Date();
   System.out.println("String literal loop : " + ( after.getTime() - before.getTime() ));
  }

  {
   Date before = new Date();
   for(int i = 0; i < iteration; i++){
    String s = new StringBuffer("a").append("b").append("c").append("d").append("e").toString();
   }
   Date after = new Date();
   System.out.println("String buffer loop : " + ( after.getTime() - before.getTime() ));
  }
 }
}
0052デフォルトの名無しさんNGNG
StringBuffer使った方は実行時に連結されていて、
リテラルの方はコンパイル時に最適化されて既に連結されて
バイトコード生成されているとか?
0053デフォルトの名無しさんNGNG
>>50

これはどう?

String s = "a";
s += "b";
s += "c";
s += "d";
s += "e";
0054デフォルトの名無しさんNGNG
>>53
StringBufferより2.5倍ほど遅くなりました。
String.Buffer.toString()を4回余計に呼んでいると思えば遅くなるのもうなずけます。
でもリテラル連結が一番速いのはなぜでしょうね。
>>52さんの言うとおりなのでしょうか。
0055デフォルトの名無しさんNGNG
>>54
なんか雑誌で読んだんだけど

Stringの連結は1行でやれ!
それが出来ない場合(複数行にまたがる場合)はStringBufferをつかえ!
0056デフォルトの名無しさんNGNG
>>55
だ・か・ら
それはなぜなのか?って議論してるんでしょ?
0057デフォルトの名無しさんNGNG
対処法を教えてください。
"http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C"からダウンロードして、テキストとして正常に表示したいです。
以下のwhile((line = br.readLine()) != null){の部分で弾かれています。
原因は%8F%5Cに有るようです。以下の例にあるURLはIEで正常に表示されます。
javaのバグっぽいですが、なにとぞよろしくお願いいたします。m(_ _)m

import java.net.*;
import java.io.*;
public class TestBufferdReader {
public static void main(String[] args){
URL url = null;
try{
url = new URL("http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C");
Object obj = url.getContent();
if(obj instanceof InputStream) {
String line;
BufferedReader br = new BufferedReader(new InputStreamReader((InputStream)obj));
while((line = br.readLine()) != null){
System.out.println(line);
}
}else{
System.out.println("DownLoadしたObjectはInputStreamとして扱えません。");
}
}catch(Exception e){
e.fillInStackTrace();
}
}
}
005857NGNG
以下のwhile((line = br.readLine()) != null){の部分で弾かれています。
↓
ごめんなさい。
そこで弾かれてるわけじゃなかったです。
0059デフォルトの名無しさんNGNG
>>57
>javaのバグっぽいですが
って・・普通自分のコード見直すだろ?

それとも、他では動くのにこのURLだと動かないって事?
単に表示するだけなら
ソケットでGetコマンド打てばいいんじゃない?
0060デフォルトの名無しさんNGNG
>>59
>他では動くのにこのURLだと動かないって事?
その通りです。

javaで取得しないと意味が無いんで…。
006157NGNG
すみません。↑僕です。
0062デフォルトの名無しさんNGNG
実行すると403 Forbiddenが返ってくるね。なんでだろ。
006359NGNG
えと、とりあえず試したんですが
クエリ送った場合は何も表示されませんね
もうチョイ粘らせてください
006457NGNG
>>62
本当に不思議なんですよ。
今までjavaのバグに何度か見舞われたけど、今回は僕の力では無理だった・・・。
0065デフォルトの名無しさんNGNG
>>59
いろいろ張る前に、
e.fillInStackTrace()→e.printStackTrace()
と変更してからにしてね。これが最低限のエラー処理。
0066デフォルトの名無しさんNGNG
>>63
がんばって頂いている様で、ありがとうございます。m(_ _)m
006759NGNG
>>65
ご指摘ありがとうございます。
今後気をつけます。m(_ _)m
0068デフォルトの名無しさんNGNG
同じことをHttpUnit経由で実行すると上手くいくので、
java.netパッケージの使い方が間違ってるんじゃないかな。
使ったこと無いんで知らないけど。
006957NGNG
>>68
そうですか・・・。
本見て作ってるんで、そんなはずは無いと思うのですが、一応確認してみます。
007059NGNG
クエリ(num=100&hl=ja&ie=Shift_JIS&q=%8F%5Cの部分)を別の方法でセットした方が
いいと思って探してるんだが
URLクラスに限ってみるとgetQuery()
はあるけど
setQuery()
っていうのはないねぇ
今度はURL周辺探ってみます
007157NGNG
while((line = br.readLine()) != null)
の外にbr.close();がなったです。ただ結果には影響しないですが・・・。
007259NGNG
>>70
すみません。よろしくお願いします。m(_ _)m
007357NGNG
ソース見直しました。新しいソースを張っておきます。
import java.net.*;
import java.io.*;
public class TestBufferdReader {
public static void main(String[] args){
URL url = null;
try{
url = new URL("http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C");
Object obj = url.getContent();
if(obj instanceof InputStream) {
String line;
BufferedReader br = new BufferedReader(new InputStreamReader((InputStream)obj));
while((line = br.readLine()) != null){
System.out.println(line);
}
br.close();
}else{
System.out.println("DownLoadしたObjectはInputStreamとして扱えません。");
}
}catch(Exception e){
e.printStackTrace();
}
}
}
0074デフォルトの名無しさんNGNG
>>50
52の言が正しい。
"a" + "b" + "c" + "d" + "e" という式は "abcde" に静的に評価できるので
コンパイル時に "abcde" に自動的に置き換えられる。
これはJava言語仕様で決まっている。

Javadoc にあるのは静的に評価できないときの話。例えば
String a = "a", b = "b", c = "c, d = "d", e = "e";
なら a + b + c + d + e は new StringBuffer(a).append(b).append(c).append(d).append(e).toString() になる。
007559NGNG
ほかのHPとか試した?
おれ、BIGLOBEの検索の方で試したんだけど・・・
動いたよ
googleのやつが特別なんじゃないかな?
たとえば、そのページ内からじゃ無いと検索CGI叩けないとか・・・
んで、俺もSocket使ったプログラムでやったけど
これもgoogleがダメで
BIGLOBEはOKだったよ
0076デフォルトの名無しさんNGNG
>>57
googleはUser-Agentヘッダを見ていて、ブラウザの種類によってはじいているようだ。
URLの生成の前にこれをいれると上手くいく。
System.setProperty("http.agent", "お好みの正しいUser-Agent");
ちなみにおいらのはこんなんだった
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)"
007759NGNG
>>75
>たとえば、そのページ内からじゃ無いと検索CGI叩けないとか・・・
いや、そんなこと無いですと言いたい所ですが、その通りなようで・・・。
さっきちゃんと確認したなのになぁ・・・。
おかしいなぁ・・・。
どうもありがとうございます。m(_ _)m
0078デフォルトの名無しさんNGNG
>>74
>これはJava言語仕様で決まっている。
おいおい…
007957NGNG
>>76
そうだったのか・・・。
今までjavaでUser-Agentの扱い方が解からなかったのですが、これできっかけがつかめました。
とりあえず、やってみます。
ありがとうございました。m(_ _)m
0080デフォルトの名無しさんNGNG
>>78
("a" + "b" + "c" + "d" + "e").intern() == "abcde" は言語仕様で決まっていますが何か?
008159NGNG
すげえ>>76
できたぞい
008257NGNG
>>76
本当にありがとうございます。m(_ _)m
ちなみに、僕のは"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"でした。

今までUser-AgentはURLにUser-Agent=&見たいに追加するもんだと思って、一生懸命総当たり戦してました。
あまりにも苦労してたんで、知ったとき感動して、本当にちょっと涙出ちゃった。
008359NGNG
>>57
な、泣くなよおい・・・俺まで泣きそうだよ
0084デフォルトの名無しさんNGNG
すまん。Java言語仕様ではなくJava仮想マシン仕様だった。
0085デフォルトの名無しさんNGNG
>>80
>("a" + "b" + "c" + "d" + "e").intern() == "abcde" は言語仕様で決まっていますが何か?
おいおい…
0086デフォルトの名無しさんNGNG
>>84
>すまん。Java言語仕様ではなくJava仮想マシン仕様だった。
おいおい…
008757NGNG
>>59
さすがに、もう泣きやんだ。
今ちょっと一人でニヤニヤしてる。
008859NGNG
おれ、オナニーしてました
なんかうれしくってね

0089デフォルトの名無しさんNGNG
おいおいといってるやつは
http://www.takilab.cs.kobe-u.ac.jp/~java/publications/javaVM5.html でも読め
0090デフォルトの名無しさんNGNG
>>89
言語仕様とVM仕様とAPI仕様読んでから出直してください。
0091黒猫NGNG
こんにちわ(*・・*)。

益々日差しも強まり・・・(略)。

んと、お邪魔します(*..)、
JAVAでしたいことがあるんですけど、
どうしてもその手段が見つからなくて・・・
もし宜しければ助けてください(;;)。

したいことは、
現在のマウスのディスプレイ上の座標を取得したいの。

それで、最後にマウスが動いた時のイベントをListenerで取得して、
保持していこうかなって考えたんですけど・・・・
それはawt等のコンポーネント上でのこと・・ですよね、、(;;)?

awtコンポーネント上では、
MouseMotionListenerインターフェースを使って、
addMouseMotionListenerメソッドでコンポーネントにセットして出来るんですよねぇ・・・・。
でも、awtとかSwingのコンポーネント以外でマウスの動いた座標をとりたくても、
リファレンスみても見つからなかったんですぅ( ノ_;)

黒猫の見つけ方が下手なのでしょうか(;;)。
もし、お知恵をお借りさせていただけましたら嬉しいですぅ。

乱文で失礼しますぅ。
0092デフォルトの名無しさんNGNG
ぐぐれ。
0093デフォルトの名無しさんNGNG
getX
0094デフォルトの名無しさんNGNG
>>91
>>awtとかSwingのコンポーネント以外で
Appletという意味???
>>リファレンスみても見つからなかったんですぅ
java.awt.eventにあります。
---------------------------------------------------------------
int X,Y;
addMouseMotionListener(new MouseMotionAdapter(){
public void mouseMoved(MouseEvent e){
X=e.getX();
Y=e.getY();
}
});
-------------------------------------------------------------------
です。

>>黒猫の見つけ方が下手なのでしょうか(;;)。
黒猫って何ですか?
もしかしてブラック キャット(No.�]�V)・・・
0095デフォルトの名無しさんNGNG
>>94
それじゃ黒猫の要求にこたえられない
0096デフォルトの名無しさんNGNG
>>95
swingでのイベントの処理ってこと?
0097デフォルトの名無しさんNGNG
いや、そうでなくって
Swing、AWT以外の場所でも
マウスの位置知りたいってこと
0098デフォルトの名無しさんNGNG
あーFramの外でも座標がわかるようにしたいのね!!!
そんなことできるの???
0099デフォルトの名無しさんNGNG
Javaでは無理なんじゃねーの?

JNI 使ってやるか・・。
0100デフォルトの名無しさんNGNG
目で見て数えればいいんじゃないかな?
上から1つ2つ3つ・・・120つ・・・
左から1つ2つ3つ・・・パンつ・・・
ってさ!
0101デフォルトの名無しさんNGNG
>>101
               _,......,,,_
               ,、:'":::::::::::::::::``:...、
           /::::::::::::::::::::::::::::::::::::::\
          i::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
            !::::::::::::::::::::::;‐、:::::::::_::::::_::::';
         |::::::::::::::::::::::|  :: ̄      ``!
         r''ヾ'::::::::::/  ::          |
         l r‐、\::/  _,,、ii_;;_、    _,,,l、
         ヽヾ〈    ::= -r:;;j_;、`/ :;'ィ;7
          !:!_,、    :: ` ー  : |: `´/     なに言うとんじゃ、ぼけ
         ,./ヽ |  、_  ::  ,: 'r' :i |:  /       
       ,../ `ヽ;_  i | '"、_:::__`:'‐'. /
        / ``'ー 、_\  ! `::` ̄''`チ`シ
    /ー 、_    `\:、_ :: ` ̄/
   /     ``ヽ、   ヽ`'7‐--'゛
0102デフォルトの名無しさんNGNG
いくら 100 をゲットしても、松本に睨まれたらおしまいだな。w
0103デフォルトの名無しさんNGNG
>>101
自分で自分にいってんのか?w
あせっちゃったねw
0104デフォルトの名無しさんNGNG
最近Javaもあんまり分かってないのに興味本位でJava3Dに手を出し始めた者なんですが

ttp://www.javadrive.jp/java3d/base/index1.html

↓は↑のページの一部

public BranchGroup createSceneGraph() {
BranchGroup objRoot = new BranchGroup();
objRoot.addChild(new ColorCube(0.4));
objRoot.compile();
return objRoot;
}

のように表示した図形をボタンを押したりしてポンっと魔法みたいに
消したり表示したりする方法ってありますかね?
0105デフォルトの名無しさんNGNG
エクリプス使ってるんですが,エクリプスに関係ないと思うので,
ここで質問させてください.

例えば,xerces.jarとかjdom.jarなんかのを外部jarをインポートして
作ったプログラムを,ひとつのjarファイルにまとめるときに,
外部jarもまとめて入れることは出来ないのでしょうか?

つまり,ユーザの環境でクラスパスとか設定しなくともすむように,
ひとつの実行ファイルに出来ないかという意味なのですが,
よろしくお願いします.
0106デフォルトの名無しさんNGNG
>>105
最初から外部JARにしないで
プロジェクトの中にコピーもってくればいい
0107デフォルトの名無しさんNGNG
>>106
なるほど・・・有難うございます.やってみます.
0108デフォルトの名無しさんNGNG
>>104
イベント処理を追加して、ボタンを押したときにcreateImageでオフスクリーン描画を
すれば消える。
また違うボタンを押したときにcreateSceneGraph()を呼び出すようにする。
---------------------------------------------------------------------
クラス KeyEventのフィールドにキーボード(106)すべての設定がありますので
クラス KeyAdapterでそのキーを押したときすなわちequals()でtrueである場合
なんかをするみたいな感じ・・・
0109デフォルトの名無しさんNGNG
>78=85=86=90

String x = "a" + "b";
String y = "ab";
とおなじソースに書いた場合、x.equals(y) が true になるのは当たり前だが
x == y も true になるのを知らないだろ?
これが ("a" + "b").intern() == "ab" が true になることが規定されているという意味だ。

ちなみにコンパイラによる最適化によってたまたま x == y になるのではない。
Java 仮想マシン仕様によってそうならないといけないと規定されている。
0110デフォルトの名無しさんNGNG
>おいおいクンへ
仕様なんだよ
0111デフォルトの名無しさんNGNG
>>109
>これが ("a" + "b").intern() == "ab" が true になることが規定されているという意味だ。
この一行は全然関係ないね。

String
0112デフォルトの名無しさんNGNG
>>111は間違えて途中で送信。

>>109
String a = new String("a");
String b - new String("b");
(a + b).intern() == "ab"
↑これがどうなるか知ってるだろうな?
0113デフォルトの名無しさんNGNG
おい、オタク野郎ども!
他でやれよバカ
0114デフォルトの名無しさんNGNG
>>104
repaint();
0115デフォルトの名無しさんNGNG
> String b - new String("b");
コンパイルエラー
0116デフォルトの名無しさんNGNG
>>109
> String x = "a" + "b";
> String y = "ab";
> とおなじソースに書いた場合、x.equals(y) が true になるのは当たり前だが
> x == y も true になるのを知らないだろ?
これは仕様じゃないんだけどね。
0117デフォルトの名無しさんNGNG
>>114
repaint();の意味わかってます?
0118デフォルトの名無しさんNGNG
>>115
  ─── 、─丶
 (___ノ(   )
 (ノ ー   |  /
 [・][・]─-6 /   <ンモー 揚げ足とる〜ゥ
  C      ソ   
 (!!!!_,_   /
   ヽ、 `/
0119デフォルトの名無しさんNGNG
このサイトで「実装コードにコメントは書くべきではない」と書いてあるけど
そういうもんなの?

http://member.nifty.ne.jp/masarl/article/junit/programming-style-guide.html
0120デフォルトの名無しさんNGNG
>>119
extreme programing では「実装コードにコメント書くな」という事になってるだけ。
必要があると思うなら書いとけ。
0121デフォルトの名無しさんNGNG
>119

極端だな、こりゃ。
ただ、非常に限定された場合にはありえるかも。
このページはXPでテスト側コードが十分にドキュメント化されているわけだし。

実装詳細のコメントはいらんということかも。
/* You are not expected to understand this. */
とでも書いておくか。
0122デフォルトの名無しさんNGNG
その人の主観かどうか見極めながら読め
書こうが書かまいが、間違いとは言いがたい
0123デフォルトの名無しさんNGNG
>>118
「教師生活25年」とか言うのかと思った
0124デフォルトの名無しさんNGNG
>>123
似てないよ全然
ソルマック
0125デフォルトの名無しさんNGNG
>>112
true
0126デフォルトの名無しさんNGNG
>>125
バドワイザーでつか?
0127黒猫NGNG
93さん、94さん、95さん、96さん、97さん、98さん、99さん
ありがとうございますぅ(*・・*)。

93さん、94さん、例をありがとう御座います♪
でも、95さん、97さんが仰ってくださいました様に、
コンポーネントの外でのイベントを取得したかったのですぅ(;;)。

JAVAでの実現方法、簡単では無さそう・・ですね( ノ_;)。。。

マウス移動は出来るのにぃ(><)。。。
動作が出来てプロパティ取得が出来ないなんて・・・(;;)。。

ありがとうございました(*><)。。

追伸
黒猫の姿、好きなんです(*・・)、、
0128デフォルトの名無しさんNGNG
内部クラスの中から、それを直接囲んでいるクラスのオブジェクトを
参照するコマンドを教えてください。thisでもなくsuperでもなく…
0129_NGNG
http://homepage.mac.com/hiroyuki44/
0130デフォルトの名無しさんNGNG
OuterClassName.this
0131デフォルトの名無しさんNGNG
>128
ttp://gimlay.org/~javafaq/S016.html#S016-10
0132デフォルトの名無しさんNGNG
最近はJavaをJAVAと書くのが流行りなんですか?
0133デフォルトの名無しさんNGNG
いいえ。JAVAです。
0134デフォルトの名無しさんNGNG
OK。俺が甘かった。
0135が@Mたんちゅき p3204-ipad12fukuokachu.fukuoka.ocn.ne.jpNGNG
>>127 黒猫たん。
JavaHouse的には、
アプレットの外にあるマウスポインタの位置を知ることはできない、という見解みたい。
アプリケーションの場合は知らないけど。

http://java-house.jp/ml/topics/topics.html#core-awt-mouse
Java House Topics
# アプレットの外にあるマウスポインタの位置を知ることはできない [j-h-b:8672]
http://java-house.jp/ml/archive/j-h-b/008672.html#body
[JavaHouse-Brewers:8672] Re: appletの外のevent について

たしかに最近のJavaって、こんなこともできるから、
Javaのコンポーネントから外にはみだしたマウスカーソルの位置も、
わかってよさそうな気はする。

import java.awt.*;
public class MouseRobot {
  public static void main(String[] args) {
    try {
      Robot robot = new Robot();
      for (int n = 0; n < 500; n++) {
        robot.mouseMove(n, n);
        Thread.sleep(10);
      }
    } catch (Exception ex) {
    }
  }
}

あと、これあげる。
http://javawebstart.minidns.net/images/2get.jpg
0136が@Mたんちゅき p3204-ipad12fukuokachu.fukuoka.ocn.ne.jpNGNG
それはそうと、つぎのスレこそ、>>8をカットしたほうがいいとおもう。
前スレ、前々スレ以来、ずっとコピペされ続けてきたけど。
0137デフォルトの名無しさんNGNG
自分が書いたメソッドやクラスの
変数やら定数を一覧で取得するには
どげんしたらよかとでしょ?
0138デフォルトの名無しさんNGNG
>>137
javadoc
0139137NGNG
もうしわけありませんでした。
言葉足らずでした。

デバッグのときとかに
ログで出せたりしないのかなーって
いみだったんです・・・。
0140アプレット初心者NGNG
こんばんわ。
アプレットのことで少々お聞きしたいことがあります。
画面フルサイズの親パネルの上に子パネルがいます。
親パネルにイメージを描画するのですが、そのイメージが大きくて、
子パネルにかかってしまいます。
かかってしまうならいいのですが、子パネルの下にイメージがいってしまうようで、
イメージが切れてしまいます。
これはどうにもならないでしょうか??
一日考えても全く分かりませんでした。
どなたか教えて下さい...
0141デフォルトの名無しさんNGNG
>>136
すまん。
連書き規制回避にレンタルサーバ経由で w3m 使って書いたやつだ。

>>139
Eclipse のデバッガ
0142デフォルトの名無しさんNGNG
どういう時にreturnをつけるのか、
つけないのかが、よくわかりません。
0143デフォルトの名無しさんNGNG
API リファレンスを眺めて、どういうメソッドがあり、どういう戻り値にしているかを研究してみやう。
0144104NGNG
detach();
で消したり表示したりしようと思うのですが

shape.setCapability(BranchGroup.ALLOW_CHILDREN_WRITE);
shape.setCapability(BranchGroup.ALLOW_DETACH);
objRoot.detach();

とやってもうまく消えてくれません(TдT)
0145デフォルトの名無しさんNGNG
>>142
ttp://msugai.fc2web.com/java/method.html
ttp://msugai.fc2web.com/java/methodSamples.html
0146山崎 渉NGNG
(^^)
0147黒猫NGNG
>>135さん、ありがとう御座いますぅ(*・・*)。

猫さん可愛い(><)!!!!!



置いておいて・・・(;・・)ノ■

うゅ、出来ない・・みたいですね(;;)。。
JVM使ってる故の制約・・なのかなぁ。。。

0148デフォルトの名無しさんNGNG
Java3D勉強中
 ど お し て 
どのHPにもどの本にも
物体を表示
物体を回転
物体を移動
とかしかのってなくて
物体を消す
ってのがないんだよ
ヾ(*`Д´*)ノ"ヾ(*`Д´*)ノ"ヾ(*`Д´*)ノ"





どなたか教えてくださいませ
0149デフォルトの名無しさんNGNG
>>148
おれは、3Dの仕組み知らないのだが
塗り潰せばいいやんっておもうんだが
そういうことはやりたくないの?
0150137NGNG
>>141
製造してるのはアプレットで、
サーバ側にDBに接続したりするクラスがあるみたいなのですが、
それでもEclipseでできますでしょうか?

DBと接続やらするクラスを僕のマシンに持ってきたらいいのかな・・。
あとサープレットコンテナもTOMCATじゃないのかもしれない感じなんです・・。

そんなわけでコードの中で一覧を取得して
それを任意のタイミングで吐き出せればなぁーと
思ったわけなんです。
0151148NGNG
>>149
チェックボックス?で選択する形式で
1:球
2:立方体
3:三角形
とかで1にチェックを入れてボタンを押せば球が表示されて
2にチェックが入っていれば球を消して立方体を表示させたいのです。
さらにその図形を回転させたいのですが・・・

回転させることはできるのですがどうしても消して2つ目の図形を表示させることができません
0152デフォルトの名無しさんNGNG
だから、3Dは知らないけど
paintで描くの?Java3Dって?
だったら、コードの書き方間違ってるんじゃない?と俺は思う
普通に作れば勝手に背景塗り潰されてから
描画されるはずだが・・・J**の場合はチョイしくみ違うが・・・
結果は同じになる
0153デフォルトの名無しさんNGNG
>>151
っていうか、楽しそうだな
そのソースうpしてくれ
3Dの魅力を俺にも分けてくれ
0154黒猫NGNG
こんばんわぁ(*・・)。

んとんと・・・移動できるのなら、
画面外に移動させるとか、、出来ないのかなぁ(・・;

それか、3DのコンポーネントをCanvasの上にaddして、
そのCanvasをsetVisible(false)するとかぁ(・・’)。。
0155デフォルトの名無しさんNGNG
うざい
0156_NGNG
http://homepage.mac.com/hiroyuki44/
0157デフォルトの名無しさんNGNG
>>151
俺も昔研究でJava3Dを使ったときあるけど、
同じように追加は出来てもremoveが出来なかった記憶がある。
で、今昔使ってたソース見て(すっげー恥ずかしい)やってみたら出来たよ。
一応↓がその(削除で追加)のコア部分だけど,
俺も忘れてしまって詳しくは説明出来ないから自分で理解してくれ.
STLGroupってのはSTLGroup extends BranchGroupで
STLファイルを読み込んで3Dオブジェクトを生成するクラス.

public void actionPerformed(ActionEvent e) {
if (!(e.getSource() instanceof JFileChooser))
return;

File selectFile = this.stlFileChooser.getSelectedFile();
String filename = this.stlFileChooser.getName(selectFile);
String absFilename = selectFile.getAbsolutePath();

this.universe.getLocale().removeBranchGraph(this.scene);

for (int i = 0, n = this.transformGroup.numChildren(); i < n; i++) {
Node node = this.transformGroup.getChild(i);
if (node instanceof BranchGroup) {
this.transformGroup.removeChild(node);
}
}

this.transformGroup.addChild(new STLGroup(absFilename));
this.universe.addBranchGraph(this.scene);
}
0158デフォルトの名無しさんNGNG
あとこんなのも作ってる.

private void createSceneGraph() {
this.scene = new BranchGroup();
this.scene.setCapability(BranchGroup.ALLOW_DETACH);
createTransformGroup();
this.scene.addChild(this.transformGroup);
}

private void createTransformGroup() {
this.transformGroup = new TransformGroup();
this.transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
this.transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);

BoundingSphere bounds = new BoundingSphere(new Point3d(), 1000.0);

MouseRotate rotator = new MouseRotate(this.transformGroup);rotator.setFactor(0.01);rotator.setSchedulingBounds(bounds);this.scene.addChild(rotator);

MouseTranslate translator = new MouseTranslate(this.transformGroup);
translator.setSchedulingBounds(bounds);this.scene.addChild(translator);

MouseZoom zoomer = new MouseZoom(this.transformGroup);zoomer.setSchedulingBounds(bounds);this.scene.addChild(zoomer);

PointLight pLights[] = MyLightCreator.getPointLights();
for (int i = 0; i < pLights.length; i++)
this.transformGroup.addChild(pLights[i]);

this.transformGroup.addChild(MyLightCreator.getAmbientLight());
}
0159148NGNG
>>151
見たいならUPするけど
Java3d始めて2週間くらいだからソース汚いとか言われそうで少し怖いな
ちなみにJavaすっとばしてJava3dやってます
0160148NGNG
おおいつのまにか157,158の書き込みが
ありがとうございます
難しそうですが解読してみます
0161148NGNG
159のレスは153へですね
ミスです
0162デフォルトの名無しさんNGNG
変数名とかはJavaFriendlySocietyのやつに合わせてたと思う。
重要なのは
this.scene.setCapability(BranchGroup.ALLOW_DETACH);
の記述と
this.universe.getLocale().removeBranchGraph(this.scene);
でいったんsceneを切り離したあとに削除処理を行って、また
this.universe.addBranchGraph(this.scene);
でuniverseに追加し直すことじゃないかな。
まあ、universeやらsceneが何を表してるかはもう忘れてしまったけど。
適当に言ってるから知らんよw
0163黒猫NGNG
javax.media.j3d.Groupクラスの
removeChild(int index)メソッドって、使えませんかぁ(・・;?

↓ Java 3D 1.2 API Documentation (javadoc)より、ですぅ。
http://java.sun.com/products/java-media/3D/forDevelopers/J3D_1_2_API/j3dapi/
0164デフォルトの名無しさんNGNG
PG3ヶ月目の者です。
職場で、↓のソースを見たのですが、ちょっと疑問に思ったもんで、
質問させてください。

if( xxxx.compareTo(yyy) == -1 ){
mecheodA(); // Aの処理を実行
}else{
mecheodB(); // Bの処理を実行
}

もともと、ここの処理が書かれているところでは、
yyyより、xxxxが小さかった場合、Aの処理を実行し、
yyyより、xxxxが大きかった場合、Bの処理を実行するようになっています。

しかし、上のコーディングの
if( xxxx.compareTo(yyy) == -1 ) の条件の意味は、
xxxx.compareTo(yyy)を実行した結果の値が-1だった場合、
Aの処理を実行するという意味になってしまうと思います。
この条件式だと
yyyより、xxxxが小さかった場合、Aの処理を実行し、
yyyより、xxxxが大きかった場合、Bの処理を実行するということを
満たしていないと思っています。
なぜなら、xxxx.compareTo(yyy)で、yyyより、xxxxが小さかった場合は
負の数が得られますが、その負の数が必ず-1であるとは限らないと
考えているからです。

この考えであっているのでしょうか?
一応、調べた結果、自分なりそう結論付けました。
週末に、先輩方に聞き忘れてしまいましたので、ココで質問させて
もらいました。
どなたか、質問に答えていただければありがたいです。
0165?NGNG
みてね〜♪
http://cappuccino.h.fc2.com/cappuccino.html
0166デフォルトの名無しさんNGNG
んな、どうでもいい質問して。
0167デフォルトの名無しさんNGNG
普通に
xxxx.compareTo(yyy)
が何を出力しているか自分で確かめてみるのが一番だと思うけど
xxxx > yyy
xxxx = yyy
xxxx < yyy
の3通り
0168sageNGNG
>>161もっと致命的な・・・ネタ?!
0169デフォルトの名無しさんNGNG
>>167

レスありがとうございます。

>xxxx.compareTo(yyy)
>が何を出力しているか自分で確かめてみるのが一番だと思うけど
>xxxx > yyy 、xxxx = yyy 、xxxx < yyy の3通り

なるほど。テストする時は、その3通りのパターンを考えてテストしたいと
思います。
ただ、まだ自分のPCが与えられてなくて、ソースと詳細設計書を見ながら、
自習しているといった感じなので、まだしばらくの間、テストができないんです・・・。
0170デフォルトの名無しさんNGNG
>>164
インタフェース Comparable
public int compareTo(Object o)
戻り値:
このオブジェクトが指定されたオブジェクトより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数

とあるから、チミの主張は正しいと思われ。
0171デフォルトの名無しさんNGNG
>>169
compareTo()の返り値がなんなのかがよくわからないから、そのへんを
意識してソース読み返してみては?
大きいか、同じか、小さいかの3種類を返すだけなのか、それとも
大きかったら小さかったら、その差を返すのか、とか。
0172デフォルトの名無しさんNGNG
多分
-1
0
1
だと思うけどどうだろ・・・
0173デフォルトの名無しさんNGNG
そうだったとしても、インタフェース通りに使え
0174デフォルトの名無しさんNGNG
>>172
きめうちするとバグの元になるよ。
0175デフォルトの名無しさんNGNG
>>172
インタフェースComparableは>>170が書いてる通り、
> 小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
なんです。-1や1に限定してしまうと、似たようなインタフェースの
Comparatorなんかの使い勝手が悪くなる。
0176デフォルトの名無しさんNGNG
>>173
少なくとも、String#compareTo() は -1 0 1 以外の値も返す。
0177デフォルトの名無しさんNGNG
定数返すようにすればもっと判りやすいんだろうが・・・
列挙型が無いのがだるいな
0178デフォルトの名無しさんNGNG
一つのクラスで多くの事を処理するよりも
なるべく複数のクラスに分けて作っていった方が
良いのですか?
0179デフォルトの名無しさんNGNG
>>178
そういう問題に悩むようになったんなら、
もう少しオブジェクト指向プログラミングについて勉強するのがいいと思う。
(複数のクラスに分けたほうがいいと言ったところで、クラス設計で悩みだすのがオチだから)
0180デフォルトの名無しさんNGNG
>>177
列挙型なら Tiger で追加される。
0181デフォルトの名無しさんNGNG
>>178
イエス

「一つのクラスで多くの事を処理する」場合も
インタフェースは簡潔にするといい(facadeぱたーん
0182デフォルトの名無しさんNGNG
抽象電化製品クラスを継承した既存のテレビクラスとビデオクラスがあって、
これからテレビデオクラスを作るとしたらどうします?
is-a、has-a?
0183デフォルトの名無しさんNGNG
has-a
0184デフォルトの名無しさんNGNG
テレビデオはテレビとビデオを持っているわけだね。
0185デフォルトの名無しさんNGNG
>>183
テレビデオって事ですね?
了解しました
0186デフォルトの名無しさんNGNG
>>182
厳密に言うなら
そのどちらでもない
いうなれば
家電製品クラスのサブクラス同士
0187デフォルトの名無しさんNGNG
public class テレビデオ extends 抽象電化製品 {
テレビclass tv;
ビデオclass video;
...
public void on() {
tv.on();
video.on();
}
}
とかか?
0188182NGNG
どうでもいい質問にレスサンクスです。
Java言語では必ずhas-a関係になると思うのですが、
これが多重継承が許される言語になるとis-aも候補に出ると思うんですよね。
(Javaでis-aにしようと思うと間に何かかまさないといけないですよね?)
has-aにするのと
class テレビデオ extends 電化製品, テレビ, ビデオ
のようにis-aにするのと何が違うのかとふと疑問に思った次第です。
0189デフォルトの名無しさんNGNG
初心者にお勧めなJavaの参考図書ってありませんか?
できれば最近のやつで。
「やさしいJava」というものがいいと聞ききましたが、
できればもうちょっといろいろな人の意見を参考にしたいです。
0190デフォルトの名無しさんNGNG
>>182
>どうでもいい質問にレスサンクスです。
こんなこといわれると、おれたち何してたんだろうって思っちゃうので・・・
0191182NGNG
>>190
はわわわわ、すみませんでした。
0192デフォルトの名無しさんNGNG
>>189

「わかるかな?JAVA」
「BlackBookJavaプログラミング」
「赤坂5丁目Java1番」
「独習Java」
「俺たちのJava」
「詳細Java GUI編」
「なかなかJava前編」「どうしてJava後編」
「デザインパターンで考えるJava入門」
「Java質問スレ1〜28巻」
「今日からはじめるJavaプログラミング」
「集中講座Javaの2週間」
「猫でもわかるJava言語」
「ヒカルのJava」
「Java bo beautiful human life」
0193デフォルトの名無しさんNGNG

「ああ!あの時の・・・Java」
0194デフォルトの名無しさんNGNG
「ああ、昔あったよね・・・そんなJava」
0195デフォルトの名無しさんNGNG
「山下君!この書類Java頼む」
0196デフォルトの名無しさんNGNG
「食事中にJava見るんじゃありません!」
0197デフォルトの名無しさんNGNG
>>182
日本語で考えればいい

テレビ「は」家電製品である  だからis

家電製品はテレビ持ってるっていわないだろ?

車とエンジンは

エンジンは車ではない
車はエンジンでもない

車にはエンジンあるから has

テレビデオって言うのは難しいけど

基本がテレビだと考えよう

そうすれば、テレビデオはテレビでありis

テレビデオはビデオもってるhas

俺の父ちゃんhage



0198デフォルトの名無しさんNGNG
Java 的には
Interface テレビ
Interface ビデオ
Interface テレビデオ extends テレビ, ビデオ
じゃないのかなぁ
0199デフォルトの名無しさんNGNG
え〜?
テレビとかビデヲインターフェースにするには
ちょっと具体的じゃない?
どうせならAV機器って言うインターフェースの方がマッチしてると思うんだけど・・・
0200デフォルトの名無しさんNGNG
>>199
>>182は既存だって書いてあるのもあるが、
テレビは単独でも動作することを考えるとインターフェースはない。
ただ、ビデオに関しては「録画機能を持つ」と定義すればあり得るかも・・・ないか。
0201148NGNG
>>157
消えたああああああ!!!
無事消えました。
ありがとうございます。

消えたのはいいけど次の物体が表示されないという問題がまだあるんですが・・・
ま、それは明日にしよう
今日はもう寝る!疲れた
0202デフォルトの名無しさんNGNG
そうなんだけどさ、
最近のソースを読むと、InterfaceとFactoryパターンの組み合わせが多いから、

interface Applicance {}
interface Television extends Appliance {}

class TelevisionImpl implements Televison {
}

class TelevisionFactory {
public Television createInstance() { ... }
}

みたいなコードがはやりっぽいと思うんだけど。
0203デフォルトの名無しさんNGNG
プラグマティックに言えば、既に作成されているだろう家電製品、
テレビとビデオがどう設計されているかによる。
テレビとビデオがクラスなら、余計なメソッドを外に見せないためにも
コンポジションするのが妥当かと。
0204182NGNG
実際の例は書けないけど、うちの学生の間で長いこと使われているコードで
[携帯電話クラス]があって、それに[計算機クラス]を継承して
[計算機付き携帯電話クラス]を作ってたんですよね。
のちにカメラ機能を追加できそうだったので、
[計算機つき携帯電話クラス]を継承して
[計算機とカメラ機能付き携帯電話クラス]を作ったんです。
さらに色々な機能を付けてたのですが
あまりにも複雑になってきたので、個人的にリファクタリングして
[携帯電話クラス]を継承して、全部has-a関係にし、
[多機能な携帯電話クラス]にしたんです。
分かりやすさは前よりも向上したのですがただ、
このあとにまた他の機能を追加したとき、今度はあまりにも多機能になり過ぎて
分かりにくくならないか?
と思いまして、このリファクタリングは本当に正しかったのか
と疑問に思ったんです。
>>202とか興味深く、もっと本読んだりして勉強したいと思います。
0205デフォルトの名無しさんNGNG
>>204
基本的には203のいうとおりクラス継承でなくオブジェクトコンポジションを利用して設計しておけばいいですよ。
だからあなたのリファクタリングは正しいです。
可能であればオブジェクト継承元のクラスをインターフェースにするとさらに動的な構造を持たせることが可能です。
0206デフォルトの名無しさんNGNG
よく、クラスを作るときに
そのクラス内からしか使わないメソッドをprotectedにしてあるコードをよく見ます
これは(このクラスを継承することがあろうがなかろうが)こう言う風に書いておいたほうがいいのですか?
0207デフォルトの名無しさんNGNG
文字列を改行したいのですがいい方法を探してます。
たとえば1〜500の長さの文字列を
一定の文字数たとえば50文字ごとに改行を入れるような感じです。
0208デフォルトの名無しさんNGNG
>>206
privateだろうが
0209デフォルトの名無しさんNGNG
>>207
\n
0210デフォルトの名無しさんNGNG
>>206
サブクラスがオーバーライドで動作を変えることを意識してんじゃないの?

>このクラスを継承することがあろうがなかろうが
サブクラスを禁止するクラスは final を付けるわけで
それ以外なら(現状継承されてなくても)継承されることを多少は意識すべき
0211デフォルトの名無しさんNGNG
>>209は>>207がエスケープを知らないと思ったのだろうか・・・
0212デフォルトの名無しさんNGNG
>>211
>>207読んだだけではそう取られても仕方がない。
この程度のロジック(と言うほどのものでもない処理)さえ組めないんだから
0213デフォルトの名無しさんNGNG
>>211 俺は209には「\nじゃなくてline.separatorだろ」とつっこみたい。
0214デフォルトの名無しさんNGNG
>>207=>>211
プ
0215デフォルトの名無しさんNGNG
とりあえず207は文字数の数え方を示すべき。「MS932ベースで
全角は2文字としてカウントでよろしく」とか。
0216デフォルトの名無しさんNGNG
>>212
mattakuda

>>213
mattakuda
0217デフォルトの名無しさんNGNG
>>214 プ
0218デフォルトの名無しさんNGNG
必死だなw
0219デフォルトの名無しさんNGNG
何でオレがスカトロマニアだってバレたんだ?
0220デフォルトの名無しさんNGNG
Lakeアプレットのような画像処理系のアプレットを作りたくて
3日ほど前からJavaはじめた者です。
で、現在 やさしいJavaを読み終わったぐらいのレベルなのですが、
上記のようなアプレットだけ作りたいって場合、次にやるべきことってなんでしょうか。
0221デフォルトの名無しさんNGNG
やさしいJavaってなに?どこの大統領?
0222207ですNGNG
文字列はすべてASCIIです。
すぐ思いつくのはグルグルまわしながらsubstringで切りとって
\r\nくっつけていく方法のなのですが。
もっとましな方法があるかと思って。
0223デフォルトの名無しさんNGNG
終了
0224デフォルトの名無しさんNGNG
あなた、もう寝ましょ
0225デフォルトの名無しさんNGNG
「Javaは1日1時間」
0226デフォルトの名無しさんNGNG
>文字列はすべてASCIIです。
え?Unicodeのはずですよ
0227デフォルトの名無しさんNGNG
if(return.getNull() == null){
・・・・・
}

nullなのかどうか確認しようととしているのに、NullPointerExceptionを返すなんて、sunは配慮が無い。
まる二日かけて作ったデータを直列化したものが使い物にならなくなるなんて信じられない。
どうにか対策教えてください。
0228227NGNG
当然もとのデータはprivateになっているということで…。
0229デフォルトの名無しさんNGNG
データ作り直すしか無いのか?
0230デフォルトの名無しさんNGNG
>>227
何をしたいのかよくわからんが、NullObject パターンは使えないのか?
0231277NGNG
>>230
ごめん。もうちょっとがんばってみます。
0232デフォルトの名無しさんNGNG
>>230
returnが、というよりもインスタンスがnullだった。
ごめんなさい。
0233デフォルトの名無しさんNGNG
例題で
Runnable hoge = new Runnable() {
public void run() {
...
}
};
new Thread(hoge).start();
を
new Thread() {
public void run() {
...
}
}.start();
と書いてはいけないのですか?
}
0234デフォルトの名無しさんNGNG
無名クラスは分かり辛いからできるだけ却下。
0235デフォルトの名無しさんNGNG
無名クラスが簡単に書けるようになるといいのに。
0236デフォルトの名無しさんNGNG
書けるじゃん
0237デフォルトの名無しさんNGNG

             / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ,__     | さらっと書けるようになれますように....
    /  ./\    \________________
  /  ./( ・ ).\       o〇       ヾ!;;;::iii|//"
/_____/ .(´ー`) ,\   ∧∧         |;;;;::iii|/゙
 ̄|| || || ||. |っ¢..|| ̄  (,,  ) ナムナム   |;;;;::iii|
  || || || ||./,,, |ゝ iii~   ⊂  ヾwwwjjrjww!;;;;::iii|jwjjrjww〃
  | ̄ ̄ ̄|~~凸( ̄)凸 .(  ,,)〜 wjwjjrj从jwwjwjjrj从jr
0238デフォルトの名無しさんNGNG
さらっと書けるじゃん
0239デフォルト名無しさんNGNG
JAVA初心者ですが、SUN CERTIFIED PROGRAMMER FOR THE JAVA PLATFORMに
目標を立てて挑戦してみようと思ってます。
そこで独習JAVAを薦められたんですが、自分にとってはちっと難しいみたいです。
やさしいJAVAも評判の様ですけど、これ一冊でSUN CERTIFIED PROGRAMMER FOR THE JAVA PLATFORMに
試験範囲は対応出来そうでしょうか。
お勧めの参考書等あればアドバイスお願いします。
よろしくです。
0240デフォルトの名無しさんNGNG
試験用の知識が必要なので参考書を買った方がいい。
これがお薦め。
http://www.amazon.co.jp/exec/obidos/ASIN/4872804740/

まあ、マ板のスレへどうぞ。
SUNのJava認定資格ってどうよ 3
http://pc.2ch.net/test/read.cgi/prog/1047866184/
0241デフォルトの名無しさんNGNG
MS−DOSプロンプトってどこにあるんですか?
スタートメニューにないのですが・・
0242スパーハカーNGNG
俺が隠したからね
0243デフォルトの名無しさんNGNG
一度氏んでみるのもアリですね。
0244デフォルトの名無しさんNGNG
[ファイル名を指定して実行] で command か cmd
0245デフォルトの名無しさんNGNG
>>241
Linuxにはついてない
ktermとかならある
0246デフォルトの名無しさんNGNG
>>244
ネタにしてもつまんね
0247デフォルトの名無しさんNGNG
あつい
0248デフォルトの名無しさんNGNG
冷房ねーの?
貧乏人
0249デフォルトの名無しさんNGNG
JTree からurlアドレスを渡してWebコンテンツを開きたいと思います。
getAppletContext().showDocument(new URL("http://www.asahi.com"), "");
だとエラーになるのですが、、おしえてください
0250デフォルトの名無しさんNGNG
指定行だけを読み込む方法ってありますか?
読み込むファイルが2000行をこすので、
バッファリーダーを使うとちとつらいので・・・
0251デフォルトの名無しさんNGNG
プログラミング言語Javaってあんまり読まれてないのかな。
0252デフォルトの名無しさんNGNG
>>250
java.lang.RandomAccessFile
ただし、行単位ではなくバイト単位なので、
行の概念をどう扱うかは自分で解決してね。
一番楽なのは1行のバイト数を固定する方法。
実装が楽でいいけど、1行に入る文字の上限ができるしファイルに無駄ができるのが欠点。
他の方法は自分で考えて。
0253デフォルトの名無しさんNGNG
indexをはればええんちゃう?
0254デフォルトの名無しさんNGNG
>>250
指定行をどうやって指定してるのかそれがわかれば解決できるかもしれない
行数を指定なのか?
ある文字含まれる行なのか?
0255utNGNG
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
<コピペ推奨>「ゆうくんストリート」
http://www.geocities.co.jp/HeartLand-Oak/1314/
まずは↑のページを見て貰いたい。ビルダーで作成しているようなのだが、
入った瞬間に様々な画像が次々に動き回り、非常に見難い。というより、
何が何だか分からない状態である。また「最近メール来ないな〜。女の子の
メール待ってま〜す」「ビルダー使ってるけど僕はタグも分かる」など、イタイ発言も
満載。管理人はゆうくん(13・リア厨2)。「中学生ちゃんねる」以来のこの極悪
ホームページを殲滅させるべく、2ちゃんねらーの者共よ、集え!
<信用できない方のために、掲示板のアドレス>
http://www.ziyu.net/~rent/bbs/pt.cgi?room=yuukun
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

0256_NGNG
http://homepage.mac.com/hiroyuki44/
0257148NGNG
誰かJava3D分かる人いませんか〜
俺の悩み聞いて下さい

これは愚痴なのだがJava3Dのスレがないのが悲しい
0258デフォルトの名無しさんNGNG
なくもない。
【徹底討論】Java3Dの可能性について考える
http://pc2.2ch.net/test/read.cgi/tech/1033703640/
0259148NGNG
逝ってきます!
0260デフォルトの名無しさんNGNG
JTabelを列ごとに編集不可にしたいですが方法がわかりません。
8列あるJTableの5〜8列を編集不可にしたいのですが。
よろしくおねがいします。
0261超超初心者・・・NGNG
javaを始めた、というか始めようと思った、プログラム未経験者のものです。
さきほど、Pathの設定というものをしようとしていました。私の持っているテキストに
よると、AutoExac.batというファイルを開き、その中にPATHという設定があればその行の末尾に
"C:\j2skd1.4.0_03\BIN"という記述をするよう書かれていたのですがコンパイルがうまくいかなかった
ため、PATH=○○○○(何が書かれていたか覚えていません)の記述の
あった行の下に更にPATH=C:\j2skd1.4.0_03\BINという記述をして、再起動
しようとしたら、Windowsが開かなくなってしまいました。Dos画面のように
なってWin.Comがみつかりません。Windowsの読みこみを続けることができません
というメッセージが出てしまいました。システムの復元などができればと
思い、調べてみたのですが、Windows98の場合の復元方法が見つからず
とてもこまっています。どなたか解決方法に心当たりのあるかた、助けてください!!
0262デフォルトの名無しさんNGNG
>>261
PC初心者
http://pc2.2ch.net/pcqa/
0263ひまわりNGNG
http://life.fam.cx/a010/



0264デフォルトの名無しさんNGNG
>>260
自作TableModelを定義し、そのクラスで
javax.swing.table.TableModel#isCellEditable(int rowIndex, int columnIndex)
を定義して、columnIndexが4〜7のときにfalseを返すようにする。
そのインスタンスをJTableのTableModelにセットする。
自作TableModelは、javax.swing.table.AbstractTableModelを継承したクラスを作るのがいい。

この話がサパーリわからんようなら、APIドキュメントのjavax.swing.JTable、javax.swing.table以下と、
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
を読んでJTableの使い方を理解する。
0265239NGNG
>>240さん

レスありがとう御座います。
一回マ板のスレで聞いてみますね。

0266デフォルトの名無しさんNGNG
>>264
DefautTableModelつかってるだけなら、単に、
class MyTableModel extends DefaultTableModel{
 public isCellEditable(int rowIndex, int columnIndex){
  if(columnIndex>=4 && columnIndex<=7)return false;
  return super.isCellEditable(rowIndex,columnIndex);
 }
}
でいいんじゃねえの。
0267デフォルトの名無しさんNGNG
>>250
どうしてもスピードアップしたいなら、そのファイルを作成する時に、
一番頭とかオシリとかに、各行のヘッダ位置のリストを保存しとくべし。
そうすれば、読むときは、最初にそのリストだけ読んで、2000番目の
位置にジャンプすればいい。

PDFフォーマットで(行単位に対してではないけど)この方法をつかっているよ
0268デフォルトの名無しさんNGNG
>>249
Appletは、普通ダウンロード元サーバ以外へのソケットコネクション生成は
できません。署名入りJarにして、ユーザに、Applet起動時に「そういうこと
をしてもいい」という認証をさせてください。
0269241NGNG
>>244
cmdででてきました。ありがとうございます
超初心者だったので
0270デフォルトの名無しさんNGNG
http://www.atmarkit.co.jp/fdotnet/special/java2cs/java2cs_01.html

具体的に考えてみよう。
Webのユーザビリティの低さに嫌気がさして、スマート・クライアントを作ることにしたとする。
その場合にJavaで発生するのは、GUIコントロール(コンポーネント)の
イベント・ハンドラ(リスナ)の実装をどうするかという問題だ。
フォーム(フレーム)にボタンを2つ貼り付けた場合、ボタンのイベント・ハンドラを
フォームのメソッドで実装することはできない。
同じインターフェイスなのでメソッド名が同じになってしまうためだ。
これを避けるためにはボタンA用のイベント・ハンドラを表現するクラスとボタンB用の
イベント・ハンドラを表現するクラスを作らなければならない。
貴重な労力の無駄遣いだ。嘆かわしい。


↑
>ボタンのイベント・ハンドラをフォームのメソッドで実装することはできない。

ほんとうですか?
0271デフォルトの名無しさんNGNG
>>261
稀にいる大馬鹿者だな。世間は君を必要とはしないよ。
0272デフォルトの名無しさんNGNG
"04-Aug-2003 06:02" のような文字列を日付として取り扱いたいのですが、

  SimpleDateFormat df=new SimpleDateFormat("dd-MMM-yyyy HH:mm");
  Date date=df.parse("04-Aug-2003 06:02");

とすると、
java.text.ParseException: Unparseable date: "04-Aug-2003 06:02"
とエラーが出ます。
これは"Aug"という文字列で解析に失敗してるようなのですが、
何か解決方法はありませんでしょうか?
0273デフォルトの名無しさんNGNG
>>270
イベントリスナの実装はフレームのコンストラクタでやるのが普通だろw

0274デフォルトの名無しさんNGNG
>>270
件の記事はタコライターの日記または感想文なので、真面目に読まないほうがいいよ。
フォーラムでことごとく論破されている。
0275デフォルトの名無しさんNGNG
>>274
ということにしたいんですね(w
0276デフォルトの名無しさんNGNG
>>272
SimpleDateFormat("dd-MMM-yyyy HH:mm")
→
SimpleDateFormat("dd-MMM-yyyy HH:mm", Locale.ENGLISH)
Locale.USとどっちがいいのかな。
0277デフォルトの名無しさんNGNG
>>273
多分、君は意味を取り違えている。その記事は
ボタンを2つ配置したフレームクラスがあって、
それぞれのボタンのイベントハンドラ(アクションリスナ等の処理メソッド)を
そのフレームクラス上のメソッドでは行えない、と言ってるのだろう?

まあその記者はGUIが相当弱そうだがな。
J2EE一辺倒でJavaを語るなヴォケといいたいw
0278aaaNGNG
Javaを学ぼうと思っているのですが
調べてみたところ4種類ぐらいあるあるのですが
どれから始めたらよいですか?
0279デフォルトの名無しさんNGNG
>>278

スタートアップぐらいは人に聞かず自分でやれよ。
>>1-14あたりににJava製作環境導入についてのリンクがあるだろ。
努力もしないで教えてばっかりいうなよ夏厨君w
0280デフォルトの名無しさんNGNG
>278
逆に教えてほしいのだが、「4種類ぐらい」ってのは何と何を指している?
0281デフォルトの名無しさんNGNG
>>276
サンクス。出来ました。ありがとう。好きです。
0282デフォルトの名無しさんNGNG
問題:以下のコードの実行結果を1つ選択して下さい。

class Bool {
static boolean b;
public static void main(String [] args) {
int x=0;
if (b ) {
x=1;
}

else if (b = false){
x=2;
}
else if (b){
x=3;
}
else {
x=4;
}
System.out.println("x = " + x);
}
}


1.X = 0
2.X = 1
3.X = 2
4.X = 3
5.X = 4
6.コンパイルエラー
0283デフォルトの名無しさんNGNG
ていうか、Sunの試験って毎日やってんの?
情報処理試験みたいに年に数回しかやってないと思った
しかも試験時間は2時間弱かよ!結果もその日にわかるらしい
全然知らなかった・・・丸一日かかってあたりまえだと思ってたよ
なんか今まで、敬遠してたけどうかうかしてられないですね
0284デフォルトの名無しさんNGNG
自動車免許
0285デフォルトの名無しさんNGNG
あるServletのクラスでcatchしたExceptionをString型にして、
JSPに渡してブラウザで表示させたいのですが、toStringだとバックトレースが表示されません。
どうしたらバックトレースも含めたString型(にキャストできる)のエラーメッセージ
を取得できるのでしょうか?
0286デフォルトの名無しさんNGNG
>>285
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
String s = sw.toString();
0287285NGNG
>>286
ありがとうございました!
0288デフォルトの名無しさんNGNG
swingを使って画面を作っています。
画面数が30と多いため、画面遷移する際、パネルに張っているボタンや
リストをクリアしようと思うのですが、パネルだけをnullとするだけで
いいのでしょうか?
それとも、パネル上の要素全てnullとしなければならないのでしょうか?
0289デフォルトの名無しさんNGNG
>>282
6コンパイルエラー
else if (b = false){
b == false です。
0290デフォルトの名無しさんNGNG
>>289

ぎゃはははっははははははは

ひっかかったひっかかったワイワイワーイ!

勘違い野郎発見しました!!
0291デフォルトの名無しさんNGNG
/   /:::::::::::::::::::::::::`'::::::::::::::::::::\ \
 \.  /::::::::::::::::::::::::::::::iVi:::::::::::::::::::::::ヽ/
   ヽ/::::::::::::::::::::::::::::::::| |::::::::::::::::::::::::::|
    l:::::::::::::::::::::i:|:::::::|:|  |/|'l:::::::: i:::::::::|、
    |::::::::::ト:从|'l:|:_::::|'!  / `ー '|:::::::/::ヽ
    N::人::| , ─、`    ,─ 、  |へ':::::::|  >>289いい?
    /:::::::r‐l 〈 i.::::|       |.::::i 〉 | 〉〉::::::| もうこんな間違いしちゃだめよ
    |::::::::l〈ヽr 、 ̄      ̄   |ノ::::::::::ト、
    |::::::::ヽ | |    '       /::l::|:::::::::ト、\
   |'i;:::::::/| |     匸)    / Tー、::::;N| ├、
    / ̄/ | ト   r‐、   イ〉  ヽ  ̄  |  |
  /    | | └ ⌒ヽ/   /   |    | /
 /     ヽ |  -'⌒ヽ〉  /   |   /
0292デフォルトの名無しさんNGNG
>>282
答えは1〜6のどれでもないだろ
0293デフォルトの名無しさんNGNG
>>292
え?・・・はい?
0294デフォルトの名無しさんNGNG
>>288
変数にnull代入してもパネルはなくなりません。
java.awt.Container#remove(Component)を呼んで、
コンテナから明示的に削除しましょう。
また、その後でjava.awt.Container#validate()を呼ばないと
再配置したコンポーネントが表示されなかったと思います。
0295デフォルトの名無しさんNGNG
コンパイル時には何のエラーもなく成功し、アプレットビューワでも正常に動作するのですが、
私がコンパイルしたアプレットが、ブラウザ上で表示されません。(デフォルトの灰色画像のまま)

既にブラウザ上でアプレットとしてきちんと表示される、本や他人のソースファイルなども、
私がコンパイラするとブラウザ上で表示されません。(私がコンパイルせず他人がコンパイルしたものはブラウザ上で表示される)

コンパイラも様々なバージョンでコンパイルし、
JREもきちんと設定し、様々なバージョンでIEやネスケで試したんですが、直りません。
どなたか解決法をご存じの方はいらっしゃらないでしょうか?
0296デフォルトの名無しさんNGNG
なんでだろ〜♪なんでだろ〜♪
0297デフォルトの名無しさんNGNG
>>292
>>293のために
んなこたあない。
とだけでもいっとこう。
こんな簡単な宿題も解けないんでは・・・・
0298デフォルトの名無しさんNGNG
>>297
動かしたら
5.X = 4
になりました
0299デフォルトの名無しさんNGNG
俺が動かしたら"x = 4"ってなったからどれにも当てはまらないと思うんだが。
0300デフォルトの名無しさんNGNG
>>299
ああ、そういうことね
Xはxに読み替えてね
0301デフォルトの名無しさんNGNG
出力の比較はequalsIgnoreCaseを使うことっていう注意書きがいるな。
0302288NGNG
>>294
回答ありがとうございます。参考になります。
0303デフォルトの名無しさんNGNG
アプレットが動きません。
appletviewerだと成功します。
IEでも成功します。
NN7.1だと
「読み込み中 -Java アプレット
 Sending events to applet.LOAD
Sending events to applet.INIT
Sending events to applet.START」
で止まっています。
ちなみに同じNN7.1でも別のアプレットは動いたりします。
どうしたらいいのでしょう?
0304295NGNG
>>303
同じような質問ですね。
あなたのコンパイラのせいか、もしくはアプレット全てなのかどうかは限定できないですが。

何のヒントにもなりませんが、
私のほうでは以前IEで動作せずNNで動作するというあなたと逆のことが起こりました。
その時は、winがVMを対応しなくなったばかりでsunのJREがうまく対応していなかったみたいです。

NN7.1だと、デフォルトのjavaプラグイン(またはネスケのサイトにあるプラグイン)が古いバージョンの可能性があります。
いったんプラグインや既存のJREを削除して、最新のJREをsunからダウンロードしてインストールすることを強く勧めます。
0305デフォルトの名無しさんNGNG
このスレに来るたび、アプレットをいまだにやってる人間がいることに驚き。
イントラネットなんかでは利点もあるだろうけど、いまさらアプレットをやる利点は何?
あと MS JVM の問題とか初心者はいろいろひっかかるとこも多いから
プログラミングの勉強にもあんまむいていないと思うんだけど。
0306デフォルトの名無しさんNGNG
accessDBにJDBCでアクセスしたいのですが定石みたいな構文はあるのでしょうか?
あと、JDBCはJDKの中にあるのでしょうか?
0307デフォルトの名無しさんNGNG
Appletは捨てケテーイ。JavaWebStartにしろ。
なんでいまさらIEのView内部で固定サイズでJavaを動かしたいのか
意味不明。頭悪い。無知蒙昧。
0308デフォルトの名無しさんNGNG
>>305
勉強中だからこそアプレットやってるんでない?
入門書にもよくのってるし、GUIもそこそこ簡単だし、アプレットなら
自分で作ったオナニーソフトも配布(公開)しやすいし。
誰もが通るとまではいかないにしろ一過性なもんでしょ。
0309デフォルトの名無しさんNGNG
>>306
定石:
1.JDBCドライバ実装をJVM上にロード。
2.Connection作成。
3.Statement作成。実行。
4.(検索の場合)ResultSetから必要なデータを取り出し。
5.使い終わったらConnectionクローズ。

JDKには、JDBCのAPIと、ODBC-JDBCブリッジドライバ実装しかないよ。
SunのホムペにJDBCの各種ドライバのリポジトリがあるから、君の用途
によさげなのを探してトッテコイ。
http://servlet.java.sun.com/products/jdbc/drivers
0310デフォルトの名無しさんNGNG
>>305
shockwaveでも無理な死ぬほど重い処理をブラウザ上で実行するため。
・・・そのくらいしか思いつかない。
0311デフォルトの名無しさんNGNG
javaでpingって作れないのか
0312デフォルトの名無しさんNGNG
pingを作るにはraw socketというのが必要なんだけど標準ではついてないみたい
0313デフォルトの名無しさんNGNG
java3dの視点を動かすのは簡単なんだが
その視点移動の速度が速すぎる
とにかく速い
俺がオナーニで逝くのにかかる時間並に速い
遅くする方法ない?
0314579NGNG
textareaにて改行した文をDBに保存して
再度それをtextareaに取り出したら改行の<br>がついて
表示されてしまうのですが
どうしたらいいのでしょうか?
0315デフォルトの名無しさんNGNG
>>314
読み込むときに切り取っておかないといけない
0316デフォルトの名無しさんNGNG
それと、textareaの属性wrapも関係している
0317デフォルトの名無しさんNGNG
改行もデータベースにデータとして取り込むのか
それとも、改行は削除してデータベースに取り込むのか
0318デフォルトの名無しさんNGNG
>>313
2枚重ねてつければ感度は鈍るらしいよ。遅くなるかも。
0319デフォルトの名無しさんNGNG
>>318
ラッピングしろってことですね!
0320はずかしながらNGNG
String#compareTo() などの表記の # てなんですか。
0321デフォルトの名無しさんNGNG
++
++ → #
0322デフォルトの名無しさんNGNG
StringクラスのcompareTo()メソッドという意味

別にString@compareTo()とかでもいいけど
なぜ、「#」になったかは>>323あたり
0323デフォルトの名無しさんNGNG
たとえば「String#compareTo()」を名前欄に入れて、
どのメソッドがトリップになっているかを当てるゲームが昔流行っていたから。
0324String ◆Cci17thXHk NGNG
>>323
なるほど
0325デフォルトの名無しさんNGNG
static でないメソッドという意味なの ?
0326_NGNG
http://homepage.mac.com/hiroyuki44/hankaku06.html
0327デフォルトの名無しさんNGNG
http://www.vesta.dti.ne.jp/~hi-lite/fe/ero.html
すごくフェチだ
0328String ◆Cci17thXHk NGNG
>>325
staticは関係ないけど
たしかUMLの可視性にはそういうのあったな
publicなメソッドには「+」
privateは「‐」
protectedは「#」
packageは「~」
でもそうなると
「String#compareTo()」
は、protected?
0329デフォルトの名無しさんNGNG
>>320
$JAVADOC_ROOT$/docs/ja/api/java/lang/String.html#compareTo(java.lang.String)
とかが省略されたのでは?
とか勝手に思ってたけど…

俺は static であるかどーかとか、アクセス修飾子とか関係無く "#" をつけたり "." をつけたり してる。
0330デフォルトの名無しさんNGNG
遅延初期化について

public static final Stringなメンバを遅延初期化するって一般的ですか?

public static final String foo;

static {
 foo = "bar"; // プロパティファイルなどから動的に、一度だけ取得する。
}

こういった場合は、getterメソッドを用いて遅延初期化させた方がいいのでしょうか。
0331デフォルトの名無しさんNGNG
>>329
> $JAVADOC_ROOT$/docs/ja/api/java/lang/String.html#compareTo(java.lang.String)
すっげー納得。
0332デフォルトの名無しさんNGNG
>>329
( ・∀・)つ〃∩ ヘェーヘェーヘェー
0333デフォルトの名無しさんNGNG
スレ違いだったらすみません。
Borland JBuilder9 パーソナルについてお尋ねさせてください(急ぎませんので気長にお返事待ちます)。

ボーランドからメールで受け取った許諾ファイルをインポートしようとしても
「使用許諾ファイルが壊れています」
と出てしまいます。
ファイルを受け取った際に、メールソフトがメール本文とファイルの中身を
テキストファイルとして一つに繋げてしまったためにちゃんとインポートできないのだと
思うのですが、、

ファイルの中身はこのような形↓

(改行)
-----BEGIN BLOCK-----
(改行)
*********************
*********************
*****いろんな文字*****
*********************
*********************
(改行)
-----END BLOCK-----
(改行)

でいいのでしょうか?
それとも、-----BEGIN BLOCK-----や-----END BLOCK-----という文章も
メールソフトが勝手につけてしまった文字なのでしょうか??
色々試してもだめで、ネットでも有効な情報が見つかりませんでした。
どなたか許諾ファイルを持っている方いらっしゃいましたら、元々はどのような形式だったのか教えてください。
長文ごめんなさい。よろしくお願いします。
0334333NGNG
ちなみにメールソフトはBecky ver2、OSはWindows2000でファイルは
ホームディレクトリ
C:\Documents and Settings\<username>
に保存しています。
0335デフォルトの名無しさんNGNG
>>333
THIS IS AN AUTO-GENERATED MESSAGE - PLEASE DO NOT REPLY TO THIS MESSAGE(改行)←1行目
(略)
-----END BLOCK-----(改行)
(改行)←100行目


てな感じだったよ。ファイル名はreg???.txt
0336デフォルトの名無しさんNGNG
ていうか、本文と添付ファイルと内容一緒か
0337333NGNG
>>335(=>>336?)さん、どうもありがとうございます。

でも駄目でした。。全く同じ内容の許諾ファイルなんですが^^;

本当にファイルが壊れてるのかもしれません。
とりあえず>>335さんのお陰で、そのままのファイルをインポートすれば良いことが分かったので
もう一度ファイルを取得してみます。

ありがとうございました。
0338デフォルトの名無しさんNGNG
RMIをいじっています。
java.rmi.StubNotFoundException と出ます。
どうしたらよいでしょうか?
コンストラクタ時に既に何か必要なんですか?

import java.rmi.*;
import java.rmi.server.*;

public class SampleRemoteServer extends UnicastRemoteObject {
public SampleRemoteServer() throws RemoteException { super(); }

public static void main(String[] args) {
try {
SampleRemoteServer r = new SampleRemoteServer();
System.out.println("success");
} catch(Exception e) {
System.out.println(e);
}
}
}
0339デフォルトの名無しさんNGNG
>>338
その程度の知識でRMIなんて扱うな
0340デフォルトの名無しさんNGNG
>>339
それはわかったのですが、クライアント側で定義したインターフェースの
名前がサーバ側で取り込めない、
あと、クライアントのmainが内部クラス内にあるんですが、その呼び出し
方法がわかりません。
0341デフォルトの名無しさんNGNG
>>338
それはわかったのですが、お前の態度が気に入らない
0342デフォルトの名無しさんNGNG
>>340
俺はRMIをさっぱり知らないが、今少し検索してみたらすぐわかったぞ

  自  分  で  調  べ  ろ  夏  厨  房
0343デフォルトの名無しさんNGNG
>>342
本当に分かっているのならちゃんと説明できるはずだが?
0344デフォルトの名無しさんNGNG
340=343
0345デフォルトの名無しさんNGNG
まぁまぁ、煽らずに。初心者に優しくしてあげよう。

>>338
説明は結構細かくて面倒だからしないけど、
下のページがあなたのレベルにとってはよいと思うよ。
http://www.union-jp.net/home/yukino-t~4.html
0346デフォルトの名無しさんNGNG
今、残っているのはもっと単純なことです。
>クライアント側で定義したインターフェースの名前がサーバ側で取り込めない、
ですが、下記のような状況です。
myServerの方をコンパイルしようとしたら、「シンボルを解決できません」とエラーが出ます。

別のプログラムなのに、どうしてmyRemoteInterfaceという名前が伝えられるの?
トップレベルクラスなら同じディレクトリに置いておけば使えるけど、
ここでは内部クラスや内部インターフェースとして定義した名前を別のソースから使いたい。
パッケージってのがよくわかってないのが原因なんでしょうか?

public class myClient {
 public interface myRemoteInterface extends java.rmi.Remote
 {
  <RMIメソッドの定義>
 }
・・・
}

public class myServer
 extends java.rmi.server.UnicastRemoteObject
 implements myRemoteInterface
{
・・・
}
0347String ◆Cci17thXHk NGNG
基本をわかってないんじゃないか?
RMIはカンケーなしに・・・
0348デフォルトの名無しさんNGNG
あるクラスの内部インターフェースを、他のクラスでimplementsしたい。
そういうことですね。
0349デフォルトの名無しさんNGNG
public class myClient {
 public static interface myRemoteInterface extends java.rmi.Remote
 {
  <RMIメソッドの定義>
 }
・・・
}
public class myServer
 extends java.rmi.server.UnicastRemoteObject
 implements myClient.myRemoteInterface
{
・・・
}

あんさん、インナークラスのネームスペースやらスコープ範囲やらを分かって
ないな。
もしインナークラスがstaticじゃないなら、そのクラス型をいじるにはアウタ
ークラスの" インスタンス"が要る。
クラスフィールド、インスタンスフィールドと同じ扱いが必要なんだよ。

public class A{public classB{}}
public class C{public static class D{}}

A.B objB = new A().new B();
C.D objD = C.new D();
0350デフォルトの名無しさんNGNG
突然だがな、寝る前にちょっと暇ができたんで言っとく。
お前ら上級者には
時に適切な助言をもらい、時に目から鱗の助言をもらい、
時に不適切な助言をもらい、時に意味不明の助言をもらい、
そして煽られ、無視されてきた。

しかしこのスレにきて早3週間、「コンパイルって何よ?」って状態でお手上げだった漏れも
ようやくJAVAで簡単なアプリケーションを作れるようになった。正直、ちょっと感動した。

お前らが人に感謝してほしくて初心者の質問に答えるような、
そんな殊勝な連中じゃないことぐらいよくわかってる。
だからキモいんだよオメーとか言われても仕方ない。
そして俺は素で夏厨ではない。
だけど言っとこう。

チョットシッテルカラッテ          アオリヤガッテ
 ヽ( `Д)ノ <どうもありがとう>ヽ(`Д´)ノ
0351デフォルトの名無しさんNGNG
>>350
じゃあネタにマジレスしてやるよ。
人に聞くだけじゃなくて自分で調べる技術を身につけやがれ。
Javaで簡単なアプリケーションなんて、ネットで検索すりゃ出てくるんだよ。
それをいちいち人に聞いてるようじゃ、今後上達する可能性はゼロだな。

ただ、もし自発的に調べるようになった場合だ。
苦労を重ねてプログラムが動いた瞬間のうれしさを知ってしまったお前は、
現時点で絶大なポテンシャルを秘めているとも言える。
今の気持ちを今後絶対に忘れるな。そのモチベーションは本やネットでは得られないぞ。
0352デフォルトの名無しさんNGNG
このスレタイがよくない
0353デフォルトの名無しさんNGNG
>>352
じゃ、初心者無視スレでも立ててくれ。
前スレは閑古鳥が鳴いてたが。
0354デフォルトの名無しさんNGNG
 synchronizedについて質問です。
様々なところで、synchronizedメソッドは、synchronized (this)と同じであるという記述を
目にするのですが、下記の実験ではどう考えても同じには見えません。
私の想定では、mg1(this)オブジェクトはロックがかかっているために、
何も出力されずに永久ループになるはずです。
しかし、print()と出力されます。
何故でしょうか・・・?
見づらい(インデントが全角空白です・・・)コードで申し訳ありませんが、よろしくお願いします。

次のレスで実験コードと、出力結果を示します。
0355デフォルトの名無しさんNGNG
>>354の続きです。
実験コードは下記の通りです。
class Hoge {
  public void threadTestStart() {
    Mage mg1 = new Mage();
    Thread th1 = new Thread(mg1, "th1");

    th1.start();
    try {
      Thread.sleep(500);
    } catch (InterruptedException ie) {}
    
    mg1.print();
    mg1.printLoop();
    System.out.println(mg1.getLoop().reverse());
  }
  public static void main(String[] args) {
    (new Hoge()).threadTestStart();
  }
}
まだ続きます
0356デフォルトの名無しさんNGNG
>>355の続きです。たくさんですみません・・・。
class Mage implements Runnable {
  private StringBuffer loop;
  
  Mage() { this.loop = new StringBuffer("eurt"); }
  void print() { System.out.println("print()"); }
  void printLoop() { System.out.println(this.loop); }
  StringBuffer getLoop() { return this.loop;}

  public void run() {
    synchronized (this) {
      synchronized (this.loop) {
        while (!"true".equals(this.loop.toString()));
      }
    }
  }
}
出力結果:
java Hoge
print()
0357デフォルトの名無しさんNGNG
走っているスレッドを考えよう。
まず、main関数のスレッド。それと、君が立ち上げた"th1"スレッド。

threadTestStartの先頭でth1スレッドが立ち上がって、
synchronized(this)とsynchronized(this.loop)をロックし続ける。それは問題なし。

その次、threadTestStartでmg1.print();が呼ばれる。これも問題ない。
なぜなら、Mage#print()メソッドはsynchronizedによってロックされていないからだ。
同様に、mg1.printLoop();も呼ばれ、eurtを出力する。
そして、最後にSystem.out.println(mg1.getLoop().reverse());が実行され、trueを出力する。
これでmainスレッドは終わり。そして、th1スレッドは永遠ループにはいる。

だからその出力結果はおかしいはず。
print()
eurt
true
<無限ループ>
のはずなんだが、俺の勘違いかな…テストしてないので自信がない
0358デフォルトの名無しさんNGNG
あ、StringBufferだったのか。じゃ永遠ループしないね。自己レスすまそ
0359ネタへマジレスしてみるテスト No.1NGNG
>>350
噴出すほどワロタ。

お前のような自分で調べたり、本を買って独学で取得することが出来ないやろうが、
ある程度他の人に教えることができるまでの技術を身につけることは出来ないぞ。
必要ないがな。

俺の友達に、アプリのへルプが読めない香具師がいる。だからフリーソフトさえ使えない。
予断だが、そいつが12M、ADSLなのに俺がISDNしか使えない地域(数十メートル先では余裕でADSL出来るんだがな)なのだ。泣けてくるぜ。

話を戻すと、どう考えてもヘルプが読めないわけがない。なぜなら日本語だからだ。そんなに難しい日本語ではない。

それではなぜ読めないか?
読もうとしないからさ。読もうと努力することをしないからさ。

これはお前にも当てはまるわけだ。他人に教えてもらう前に、自費で本を買え。
どれがいいかなんてのは、立ち読みで選ぶんだ。まぁお勧めを買ってもいいさ。

それを一冊こなせ。意地でもこなせ。
最初はSystem.out.println("オマエモナー");程度だろう。
ひとまず例題を打ってみたら、新しいメソッドを改造してみるわけだ。
例えばSystem.out.println("俺もなー");とか。
そして実行する。
こういうことを繰り返していき、たくさんのメソッドやらを使えるようになると、
そのうち自分で実現したい機能を、自分で考えて実現することが出来るようになる。
0360ネタへマジレスしてみるテスト No.2NGNG
これこそがプログラマーであろう。もちろんそこからはどれくらい効率的にできるか、コードをどこまで短く出来るか、
どれくらい実行速度を速くできるか。色々と考えれることがある。
もちろん今はネットがあるから、すぐに習えるが、それがいいのか悪いのか俺としては正直分からない。
自分でとことん考えることをしなくなるからな。
本当はそこに自分の飛躍する好機があるはずなのだが、ネットの普及でそれをやらない人も多いのかもしれない。
俺個人の考えとしては、出来るだけ最初のほうはネットで調べるのを控えたほうがいいような気がする。
主観的に見てだがな。
客観的に見れば、本を買わずに、いい勉強材料があるから絶対にいいのだが。

俺が言うネットの利用ってのは、アルゴリズム(つまり機能の実現方法)だ。
ソートやら、サーチやらのことや。
こういう機能のメソッドがあるかってのを調べるには、ネットは最高だなぁと思う。

まぁ本をこなせ。頑張れ。あと351の後半部分を頭に焼き付けておくことや。
0361デフォルトの名無しさんNGNG
>>354
簡単に言うと
PrintStream#println(Object)
PrintStream#print(Object)
String#valueOf(Object)
StringBuffer#toString()
new String(StringBuffer)

の順で呼ばれて new String(StringBuffer) 内で
StringBuffer(this.loop) のロックを得ようとして固まるだけ。
synchronized (this) はあっても無くても関係ない。
0362デフォルトの名無しさんNGNG
ああ、そっか、StringBufferってスレッドセーフだっけ?
synchronized(this.loop)と
StringBuffer#toString()のロックがぶつかっているのか。なら納得
0363デフォルトの名無しさんNGNG
 >>354です。
答えてくれた方は>>357さんと>>361さんでしょうか?
ありがとうございます。

 ひょっとして、仮にStringBufferがスレッドセーフではなかった場合、
mg1.printLoop(); の行も動くってことでしょうか?
もし、そうであるならば納得できます。
print();が出力されるのは、print()メソッドがsynchronizedされていないから
というのは理解しました。
0364デフォルトの名無しさんNGNG

☆★ 無修正DVD専門店 ★☆

安心のアト払い!ダマシ無しの裏モノです。
いまならキャンペーン中でお買得!!

http://fry.to/first
http://no1.to/first
0365デフォルトの名無しさんNGNG
>>363
多分動くね。実験してみたら?
0366デフォルトの名無しさんNGNG
基本ですいません。
Fileオブジェクトを作りたいのですが
File file=new file("C:\\java","test.txt");
もしくは
File file=new file("C:\\java\\test.txt");
とやってもエラーがでてしまいます。
どこが間違っているのでしょうか?
0367デフォルトの名無しさんNGNG
File file=new File("C:\\java\\test.txt");
0368_NGNG
http://homepage.mac.com/hiroyuki44/
0369366NGNG
あ、失礼しました。 書き間違いです。
File file=new File("C:\\java\\test.txt");
としてますが
シンボルを解決できません。
シンボル:コンストラクタ File(java.lang.String)
とエラーメッセージがでてきています。


0370デフォルトの名無しさんNGNG
importしなさい
0371366NGNG
あぁ、
import java.io.*;
とちゃんと書いているのですが・・
0372デフォルトの名無しさんNGNG
ローカルパッケージにFileクラスが存在するのではないかね。
java.io.File file = new java.io.File("c:\\java\\test.txt");
を試してみたら。
0373デフォルトの名無しさんNGNG
>>354
見づらいと思うなら、コピペ前にスペースを&nbsp;で置換すればいい
俺はそうしてる
0374デフォルトの名無しさんNGNG
>>373
漏れは>>354じゃないけど、ナルホド。
0375366NGNG
>>372
どうもありがとうございました。
java.io.File file = new java.io.File("c:\\java\\test.txt");
でいけました^^
0376デフォルトの名無しさんNGNG
>>305
> このスレに来るたび、アプレットをいまだにやってる人間がいることに驚き。
> イントラネットなんかでは利点もあるだろうけど、いまさらアプレットをやる利点は何?
JavaWebStartを使えといいたんだろうが。
AppletのそばにHTMLで文書を置いた手軽なサイトをつくるにはかなり適していると思うが。
JavaWebStartで作るにもポップアップウィンドウがウザイとおもうときや、
作るのがAppletよりも面倒で手間がかかるってことがあるだろう。

おまえのいってることはこれからの時代はペーパーレスの時代だから
紙は一切使うべきでないといってるようなものだが。
0377StringBuffer ◆vPgUU/9cZs NGNG
他人のソースとか見ると、文字の連結にはStringBuffer#append(色々)
がよく使われているみたいだけど、速度量ってみたら
String#concat((=゚ω゚)ノどうも) > StringBuffer#append(ぬ) > +←これ
の順だった
結局どれが一番いいんですか?
0378StringBuffer ◆vPgUU/9cZs NGNG
文字の連結ちゃうな
文字列の連結やった
0379デフォルトの名無しさんNGNG
>>310
> shockwaveでも無理な死ぬほど重い処理をブラウザ上で実行するため。
shockwaveは科学技術計算が重い。
さらに、Appletほどカスタマイズされた細かいプログラムを作ることはできない。
shockwaveでネットワークプログラミングするにも限界がある。

Web3Dなどブラウザで3D表示するプラグインが、JavaAppletでできているものもある。
VRMLソースをCosmoPlayerやCORTONA VRML Clientや
M$ VRML Viewerのインストール無しで表示できるJavaAppletだ。

Appletを否定している香具師も
よく考えてみろ。

あるポータルサイトで片隅や上部に表示されるだけの3Dのバナー広告が
いちいちポップアップウィンドウで表示されたら、これほどうざいサイトはないだろう。
バナー広告やちょっとしたアニメーションを表示するためだけにわざわざ
JavaWebStartなんぞを使う馬鹿がいるか?
そういうときこそAppletが使われるときだろう。

JavaWebStartとはどう使うべきかは適材適所で使い分けろ。
0380デフォルトの名無しさんNGNG
>>377 これ見れ

public String concat(String str) {
int otherLen = str.length();
if (otherLen == 0) {
return this;
}
char buf[] = new char[count + otherLen];
getChars(0, count, buf, 0);
str.getChars(0, otherLen, buf, count);
return new String(0, count + otherLen, buf);
}


public synchronized StringBuffer append(String str) {
if (str == null) {
str = String.valueOf(str);
}

int len = str.length();
int newcount = count + len;
if (newcount > value.length)
expandCapacity(newcount);
str.getChars(0, len, value, count);
count = newcount;
return this;
}
0381StringBuffer ◆vPgUU/9cZs NGNG
>>380
ども
ってか今まで俺もソース読んでました
StringBufferの方が断然よかったです
0382StringBuffer ◆vPgUU/9cZs NGNG
StringBuffer#ensureCapacity(いんてガー)
を使うと、もっと早くなりました...
0383デフォルトの名無しさんNGNG
>>382
ループで回した場合での結果?
文字数は?
0384StringBuffer ◆vPgUU/9cZs NGNG
こんなかんじです
/* 定義 */
int GURU_GURU = 50000;
String[] cat = {"目から目","手から手","手から型","手から腰","手から頭","口から口"};
/* 一回目(StringBuffer) */
public static void StrBuff() {
 StringBuffer ff = new StringBuffer();
 for(int i=0;i<GURU_GURU;i++) {
  for(int x=0;x<$cat.length;x++) {
   $_.append($cat[x]);
  }
 }
}
/* 二回目(String) */
public static void StrBuff() {
 String oh = "";
 for(int i=0;i<GURU_GURU;i++) {
  for(int x=0;x<cat.length;x++) {
   ph.concat(cat[x]);
  }
 }
}
/* 結果 */
String#concat():平均200ミリ秒
StringBuffer#append:平均300ミリ秒
StringBuffer#append + ensureCapacity():平均200ミリ秒 領域広めすぎるとOutOfMem(ry
PCの環境は.....あんまよく分からないんですが.....winXPでメモリ120MBってことは確か
0385StringBuffer ◆vPgUU/9cZs NGNG
ぎゃー
変数姪間違えた
一回目のところ
$cat→cat
$_→ff
二回目のところ
ph→oh
0386デフォルトの名無しさんNGNG
普通にStringBufferが早いよ。

時間の計り方等間違ってたりして。
0387デフォルトの名無しさんNGNG
ensureCapacityを使えば早くなるのは当たり前ではないのか?
あらかじめ必要な領域がわかっているならね。
0388354NGNG
>>365
 なるほど。どうもありがとうございますー。モチロン試してみます!
学校行く直前だったので試しもせずにレスしました。すみません。

>>373
 ありがとうございます。初めて知りました・・・。
0389350NGNG
350だ。スレの趣旨と違う上に遅レスで申し訳ないのだが
今朝、>>351と>>359>>360を読んで激しくショックを受けたので一言申し付ける。

確かに漏れは、プログラミング始めたばっかしで自信が持てないこともあり、
わからないことは自分でやるより人に訊いた方がいいと思い込んでたフシがある。
自分じゃ気づいていなかったが・・・

それにしてもお前ら、一度でも俺の質問にこんなマジレスくれたことありましたか?(゚Д゚)ゴルァ!
というのが一番の感想だったのだが
というか、意に反してお前らのうっぷん晴らしの格好のターゲットになってしまっただけなのだが

お前らの「自分で調べろ」発言を
>そして煽られ、無視されてきた。
に単純分類してきた自分をチョト反省した。

以上で、漏れはまたいつもの礼儀正しいデフォルトの名無しさんに戻るよ。
初心者丸出しでも(だからこそ、か?)自分で考えたり、必要な情報を探す努力が必要って事は、脳に焼印しておくよ。
よく考えたら、当たり前のことだな。
 
 トコロデヨ ネタッテナンダヨ                           マジレスデ
タシカニアノアト スグニネタガナ                           スマソー
    ヽ( `Д)ノ   <にしても何で感謝して反省してんだ俺は>  ヽ(`Д´)ノ
0390350NGNG
ごめん、ageちまった。。
0391デフォルトの名無しさんNGNG
つーか基本的にこのスレではマジレスなんだけどな。
初心者は煽りとかに感じるのかね。「自分で検索しろ」という言葉。
調べるのが大変な事柄は答えてやってるんだけどなぁ。
0392初心者NGNG
おい愚痴んな。検索しろ。
0393デフォルトの名無しさんNGNG
>>392ほらよ、検索結果↓

全2件中1 - 2件目
>>351
>>359
0394デフォルトの名無しさんNGNG
>>350ってコピペだと思ってたのに違ったのか・・・
普通にいい話系かと思ってた。あんた才能あるよ。もしかしたら流行るかもね

>それにしてもお前ら、一度でも俺の質問にこんなマジレスくれたことありましたか?(゚Д゚)ゴルァ!

このスレに限ってははマジレスガ圧倒的に多いな。他は知らん
0395デフォルトの名無しさんNGNG
クラスライブラリのドキュメントが
検索も無くて使いにくいのですが
他に簡単に検索できるようなドキュメントとかないんでしょうか?
Winのヘルプファイルとかになってるやつとか
あったら教えてください
0396デフォルトの名無しさんNGNG
>>395
無いね。検索ならブラウザので使えばいい。
0397デフォルトの名無しさんNGNG
>>395
IDE使うか、>>396が書いてるようにドキュメントはWebで公開されてるから、
「Java API [検索文字列]」
でググれば出てくる。
0398デフォルトの名無しさんNGNG
>>395
http://rd.vector.co.jp/soft/win95/prog/se202146.html
0399デフォルトの名無しさんNGNG
jreを入れたら
MS-IMEがおかしくなってしまいました

なんかツールバーが複数個表示されるンス。

ちなみにバージョンは1.3.06でっす。

なにか対処ほうはありますでしょうか?
0400無料動画直リンNGNG
http://homepage.mac.com/miku24/
0401デフォルトの名無しさんNGNG
>>397
FQCN入れて、I'm Feeling Luckyだろ。
0402デフォルトの名無しさんNGNG
>>399
>ちなみにバージョンは1.3.06でっす。

なんでそんな古いものを・・・
0403デフォルトの名無しさんNGNG
最近仕事で見たソースに以下のようなものがありました。
public void searchHoge() {
String sql = "select hoge from boo where baz = ?"
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, piyo)
ResultSet rs = pstmt.executeQuery()
//以下検索結果を処理
}
なにかを検索するたびにこのメソッドが呼ばれてましたが、
ここでPreparedStatementを使う意味はあるんですか?
結局pstmt.executeQueryを呼び出したのは上の1回だけでした。

0404デフォルトの名無しさんNGNG
>>403
一度プリコンパイルされるから、SQLの速度が速くなることが期待できる
何度も呼び出されるなら当然のパフォーマンステクニック
0405デフォルトの名無しさんNGNG
>>404
同じsql文で何度もprepareStatementしたら、
毎回プリコンパイルされたりしないの?
0406デフォルトの名無しさんNGNG
>>403
APサーバによっては、「PreparedStatementキャッシュ」って機能がある。
http://www.atmarkit.co.jp/fjava/rensai2/webopt11/webopt11.html

また、検索条件にユーザ指定の文字列を使うような場合、
シングルクォーテーションとかのエスケープを考えなくてすむので
かえってコードがシンプルになることも多い。
0407403NGNG
このプログラムはサーバ上で動いてるものではなかったです。
PreparedStatementの説明を読んで思ったのが
PreparedStatement st = con.prepareStatement(sql);
for (int i = 0; i < 10000; i++) {
st.executeQuery();
}
見たいな処理が早くなるのかなーって。
403で書いたみたいにメソッドの中でPreparedStatementを作成していたら
for (int i = 0; i < 10000; i++) {
PreparedStatement st = con.prepareStatement(sql);
st.executeQuery();
}
みたいなことになってコンパイルを毎回することになって(?)
あまり意味がないんじゃないかと思ったわけです。
0408デフォルトの名無しさんNGNG
>>407
APサーバを使っていなければ、確かに意味が無いかもしれない。
もちろんforの外でPreparedStatementを作っていれば速くなるよ。
0409406NGNG
>>407
> 403で書いたみたいにメソッドの中でPreparedStatementを作成していたら
> for (int i = 0; i < 10000; i++) {
> PreparedStatement st = con.prepareStatement(sql);
> st.executeQuery();
> }
> みたいなことになってコンパイルを毎回することになって(?)
> あまり意味がないんじゃないかと思ったわけです。

だから、>>406のリンク先の記事を最後までよく読めって。

あと、JDBC3.0からは、JDBCそのものにもPreparedStatementキャッシュのための
フレームワークが用意されている。
# もちろん、JDBCドライバ側の対応が必要だが。
0410デフォルトの名無しさんNGNG
JAVAアプレットについてなのですが、
テキストに書いてある文がいまいちよくわかりません。

「画像を表示する」やり方の単元で、
img=getImage(getDocumentBase(),"rrrrrr.gif");
の文の解説で、
「getDocumentBase()メソッドはAppletクラスのメソッドです。引数なしで
呼び出すと、このクラスファイル(rrrrrr.classで作りました)を呼び出した
HTMLファイル(rrrrrr.htmlで作りました)の置いてあるURLオブジェクト
を返します。つまり、HTMLファイルと同じディレクトリに画像ファイルがある
ときは{getDocumentBase()}と書けばよいのです」
と書いてありました。

「このクラスファイル(rrrrrr.classで作りました)を呼び出した
HTMLファイル(rrrrrr.htmlで作りました)の置いてあるURLオブジェクト
を返します。」
この部分のイメージがつかめません。
どういうことなんですか?
0411デフォルトの名無しさんNGNG
>>406
なるほど、エスケープしなくてすむのか。それはかなり大きいな。

でもすべてのSQLをPreparedStatementすると、APサーバの負荷が重くなるのかな?
0412デフォルトの名無しさんNGNG
>>410
アプレットをまったく知らない俺が勘で答えよう。
自分自身のクラスを呼び出したHTMLが置いてあるURLを返してくれるんだよ、きっと。
http://a/b/sample.htmlからtest.classを呼び出したとすれば、
getDocumentBaseはhttp://a/b/を指し示す何らかのオブジェクトを返してくれるんだろう。
0413403NGNG
先ほどのプログラムは開発時のツール的な小さなプログラムで
DBから落としてきたデータをxmlのファイルとして出力するというものでした。

こういう場合、DBからデータを落としてくるクラスがあったとして、
そのクラスのフィールドとしてPreparedStatementを持つのもありなんですか?
そのクラスの中のいろんなところで条件違いのsqlが出てくる場合とか。
0414406NGNG
>>411
> でもすべてのSQLをPreparedStatementすると、APサーバの負荷が重くなるのかな?

どうだろ?
あまり悪影響はなさそうな気もするけど…
# 漏れのところでは、全てのSQLをPreparedStatementで処理するフレームワークを
# 使っているが、特にパフォーマンスの悪化は感じられないよ。

>>413
> こういう場合、DBからデータを落としてくるクラスがあったとして、
> そのクラスのフィールドとしてPreparedStatementを持つのもありなんですか?
> そのクラスの中のいろんなところで条件違いのsqlが出てくる場合とか。

ありだと思うが、PreparedStatementは、元となるConnectionがcloseされた時点で
無効になってしまうことに十分注意しておくべし。
0415デフォルトの名無しさんNGNG
全く同じSQLなら、どうせDBサーバがコンパイル済みSQLをキャッシュしているはずだが。
0416デフォルトの名無しさんNGNG
京大受験希望の知的な女性が出演。
中学生の頃に覚えたオナニーで性感帯はしっかり開発されており
すっかりグッチョリの様子。
無料ムービーはこちらから
親切、安心サイト
http://www.j-girlmovie.com/
0417デフォルトの名無しさんNGNG
>全く同じSQLなら、どうせDBサーバがコンパイル済みSQLをキャッシュしているはずだが。

他人だけど補足。
素のStatementではパラメータが違うと「全く同じSQL文」にならないが
PreparedStatmentならパラメータ部分(?部分)が違っても「全く同じSQL文」になるから
DB側のキャッシュが期待できる。(もちろんDMBSによる)

PreparedStatementのデメリットは一つもないからガンガン使うべし
0418デフォルトの名無しさんNGNG
CallableStatementってツカッテマスか?
0419デフォルトの名無しさんNGNG
>>418
ツカテマスガナニカ
0420デフォルトの名無しさんNGNG
>>414
DB2なんかではアプリケーションヒープを適切なサイズにチューニングしておかないと
DBに接続できなくなる。無計画にPreparedStatement使うのはよくない。

あと元になるConnectionがクローズされたときでも、DBMSにPREPAREDされたSQLの
実行計画はキャッシュされるのである程度のパフォーマンスの向上にはつながる。
0421デフォルトの名無しさんNGNG
Javaでsocket通信のサンプルを作ろうとしているのですが、
BufferedReaderのreadLineで読み込みを行うと
データの終了時にそこで待ち状態に移行してしまいます。
リファレンス見た限りではnullがリターンされると思うんですが・・・

あと、InputStreamでも-1が帰る前にウエィトが発生してしまいます
コレって、プロトコル解析してループを抜けるしかないんでしょうか?

Javaのバージョンは1.4.2です・・・・_| ̄|○モウダメポ
0422デフォルトの名無しさんNGNG
>_| ̄|○モウダメポ

じゃなくって、そのあたりのソース見せなさい
0423デフォルトの名無しさんNGNG
>>421
似たような経験あり
読み込み終わったはずなのに
ソコでずーっと終わってる
なので、読み終わる前に終了するようにしていた
つまり必要なデータ部分取り出せば後は用なしなので
ループから抜けさせてた
0424デフォルトの名無しさんNGNG
> 422
すいません、確かにそうですよね
ゴメンナサイ

Socket socket = new Socket("xxx.xxx.xxx.xxx", 9999);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str;
do {
 str = in.readLine();
} while (str != null);


Socket socket = new Socket("xxx.xxx.xxx.xxx", 9999);
InputStreamReader in = new InputStreamReader(socket.getInputStream());
StringBuffer str = new StringBuffer();
while (b != -1) {
 b = in.read();
 str.append((char) b);
}
0425デフォルトの名無しさんNGNG
PSPでソニーは敗退する
0426デフォルトの名無しさんNGNG
>>424
え?これだけ?
out.print("GET /index.html\n\n");
とかはどうした?
0427デフォルトの名無しさんNGNG
> 426

あー。。。

BufferedReader の場合は
out.write("command");


OutputStreamReaderの場合は
out.write("command");
out.flash();

で、サーバーへコマンドを投げています。
一応、ちゃんと受信してるんですが、データの終わりを検出できず
ずっとWaitがかかってる状態になってしまいます。
本当だったら、null なり -1 が帰ってくるはずだと思うんですが・・・
0428デフォルトの名無しさんNGNG
>427
BufferedReader の readLineで読んでるなら、
何らかの改行こーどを送るか、closeしてストリームの
終了になるまでは待つに決まってるような。

out.write("\n");
0429デフォルトの名無しさんNGNG
コンポーネントってなんですか?
コンテナってなんですか?
0430デフォルトの名無しさんNGNG
>>429
文脈を限定せよ。例えばAWTとか。
0431デフォルトの名無しさんNGNG
> 428
ぐへ、commandには\r\nつけてますが
一応、closeしてみます
0432デフォルトの名無しさんNGNG
>>431
え?
\r\nではなくて\n\nじゃないの?まあ、ココでは
コマンド送れてるのでまあよしとして・・・


>>423でも書いたようにそうなっちゃうみたいなの
0433デフォルトの名無しさんNGNG
> 432

"\r\n"ですよ
"\n\n"ってアリなんですか?
0434デフォルトの名無しさんNGNG
>>433

え?コマンド送るんだろ?改行コード送るんじゃないよね・・
コマンド送るときは\n\nですよ・・・
0435434NGNG
言い方間違えた・・
改行2回送るんだろ?
0436デフォルトの名無しさんNGNG
プロトコルで、文末が "\r\n" って定められてるんですよ。
0x0A 0x0D ですね

Javaの'\n'だと0x0Dだけなんじゃないんでしょうか?
それとも、システム依存部位?
0437434NGNG
いや、そしたら2回送ってよ
「\r\n\r\n」ってな具合に・・・

あでも、コレ直したからといって大本の問題の解決にはならないので・・・
0438デフォルトの名無しさんNGNG
> 437

ですね、仕方ないので通信を解析して抜けるようにします
ハァメンドクセ
0439デフォルトの名無しさんNGNG
>434
CGIやServletの入出力とは書いてないので
そもそも「2回」の根拠は何も無いと思うのだけど。
0440421NGNG
名前付け忘れてた・・・ゴメソ

> 439
一応、Servletとメールサーバーとの通信です(IMAP)
JavaMail使いたいんですが、添付ファイル読み込んだら落ちてしまったので(Out of Memory)
あきらめてSocketで通信しようかと
0441デフォルトの名無しさんNGNG
>>440
そういうこと最初に言わん?
0442デフォルトの名無しさんNGNG
>>439

っていうかHTTPのGETを想像してました
0443デフォルトの名無しさんNGNG
普通、
>JavaMail使いたいんですが、添付ファイル読み込んだら落ちてしまったので(Out of Memory)
の対処法を聞かないか?
0444デフォルトの名無しさんNGNG
>>424
InputStreamReaderをそのやり方で使うと
デフォルトの文字エンコーディングで入力されるから
よくない。それにメールだと入力がなにかというのは
かなり怪しげだし、誰もが行儀のいいメールを送ってくる
わけじゃないし、入力のエンコードを仮定してReaderを
使うよりStreamをそのまま使って自分で全部処理してしまった
ほうがいいと思うよ。
0445デフォルトの名無しさんNGNG
画像ビューアを作ってみたのですが、なかなか上手く行かなくて2つほど変なことをしてみました。
よろしければご意見を聞かせてください。

作ったものは、Frameを継承したクラス(MyFrame)と、Canvasクラスを継承したクラス(MyCanvas)です。
読み込みたい画像をMyCanvasクラスにPaintメソッドで描画したあと、このMyCanvasクラスを
MyFrameクラスにaddして表示させているのですが、、

1.一度画像を表示させた後、続けて新しい画像を表示させようとしても
  古い画像が残っていて、新しい画像の上に重なって出てきてしまいます。
  対処方法として、新しい画像を表示させる前にMyFrameクラスで
  removeAll()を実行するようにしたのですが、、、荒業でしょうか?それともこれでかまわないんでしょうか?

2.removeAll()を実行して新しいMyCanvasをaddしても、フレームを引っ張ったりしていじらないと新しい画像が出てきません。
  そこで何となくemoveAll()→MyCanvasをaddの後、さらにフレームをsetVisible(true)させるようにしたら
  すぐに表示されるようになったのですが、、皆さんでしたらどう対処するのでしょうか?

※文章ばっかりでごめんなさい。
0446445NGNG
不要かもしれませんが、一応>>445の作業をしている
MyFrameクラスの「開く」メニューから呼ばれるメソッドを書いておきます。

public void canvasOn() {
//開くダイアログの表示
  FileDialog dlg = new FileDialog(this);
  dlg.show();
  if((dlg.getFile() != null) && (dlg.getDirectory() != null)){
      String fileName = dlg.getDirectory()+dlg.getFile();
      //開くダイアログで指定したファイルを読み込んだCanvasを作成
      MyCanvas cv = new MyCanvas(fileName);
      removeAll();//←ここが、疑問1
      add(cv);//新しい画像を読み込んだCanvasをadd
      setVisible(true); //←ここが、疑問2
   }
}
0447デフォルトの名無しさんNGNG
ContainerにComponentを追加したときは,
invalidate()する。(疑問2の答え)

だがそれ以前に、removeするほうがおかしい。
MyCanvasが、コンストラクタでしかファイル名を
指定できないのか? setFileとかメソッドを書いて、
ペイントする画像をさしかえれるように作っとくだ。
(疑問1の答え)
0448デフォルトの名無しさんNGNG
update()とか呼ぶんでなかったけ?
0449446NGNG
>>447どうもありがとうございます。
とりあえずinvalidate()でできただす。後でJAVA-docでメソッドよく調べてみます。

>MyCanvasが、コンストラクタでしかファイル名を
>指定できないのか? setFileとかメソッドを書いて、
>ペイントする画像をさしかえれるように作っとくだ。
なるほど。。その通りですね^^;
アドバイスどうもありがとうございました。

>>448ありがとうございました。
update()調べてみましたが使えそうだすね。勉強になりますだ。やってみます。
0450デフォルトの名無しさんNGNG
質問!

JOptionPane.showMessageDialog(pane,msg,"Error",JOptionPane.WARNING_MESSAGE);
とかでダイアログ呼び出すときの
表示されるフォントって変えられるんですか?
0451デフォルトの名無しさんNGNG
第二引数にJLabelオブジェクトを渡すことにして、
JLableオブジェクトのフォントをお好みのものに変更すればできるんでないかな。
swingコンポーネント(awtコンポーネント?)を渡すと
なかなか凝ったダイアログが作れるよ。
0452450NGNG
>>451
第二引数結構いろいろとれるんだーなるほど…
たすかったす!さんきう!
0453デフォルトの名無しさんNGNG
JavaのGUIアプリケーションを、普通のWindowsアプリケーションのようにするにはどうしたらいいんでしょうか?

ジャヴァハウスを見たら簡単なやり方として、
VBでコマンドプロンプトを起動してクラスを動かすEXEファイルを作るという方法と、
batファイルを作っておくという方法があったのですが、、

普通のアプリみたいに(見た目として)Dosの窓が開かずに動くアプリにする方法、
もしくは解説のあるサイト、書籍があったら紹介していただけないでしょうか。
よろしくお願いします。
0454デフォルトの名無しさんNGNG
>>453
jar を java じゃなくて javaw コマンドで起動する。
0455デフォルトの名無しさんNGNG
>>454知りませんでした(お恥ずかしい)!
どうもありがとうございます。
0456デフォルトの名無しさんNGNG
え?javawコマンド打ってる時点で
窓出てますが・・・

マニフェスト作って内部的にjavawっていうならわかるが・・・
0457453NGNG
>>456
Dosコマンドを実行するアプリをVBで作っていたので、
javawを実行した後、Dos窓を閉じるよう変更しました。
私は、一瞬Dosが出るだけなんでこれで満足です(笑)。

>マニフェスト作って内部的にjavaw
ちょっとわかりませんでした。。勉強します。
0458デフォルトの名無しさんNGNG
Jarのなかにマンコフェストファイル作って
Main-Class: メインクラス名
ってやれば、ダブルクリックで動くんだよ!(Windows限定だが)
0459デフォルトの名無しさんNGNG
JPanel に大きい画を描いてスクロールをつけたいんですけど
上手につけられません。教えてください。よろしくお願いします。

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Test extends JFrame
{
public Test( String title )
{
super( title );
Container container = this.getContentPane( );

GraphicsPanel panel = new GraphicsPanel( );
JScrollPane scrollpane = new JScrollPane( panel );
container.add( scrollpane );

addWindowListener( new WindowEventHandler( ) );
setDefaultCloseOperation( WindowConstants.DISPOSE_ON_CLOSE );
setSize( 350, 200 );
setVisible( true );
}

public static void main( String args[ ] )
{
Test frame = new Test( "Test" );
}
}
0460デフォルトの名無しさんNGNG
(ソース続きです。)

class GraphicsPanel extends JPanel
{
  public void paint( Graphics g )
  {
     g.setColor( Color.white );
     g.fillRect( 0, 0, 1000, 1000 );
     g.setColor( Color.red );
     g.fillOval( 100, 100, 100, 100 );
     g.drawLine( 0, 0, 1000, 1000 );
  }

  public void update( Graphics g ) { }
}

class WindowEventHandler extends WindowAdapter
{
  public void windowClosing( WindowEvent evt )
  {
    System.exit( 0 );
  }
}
0461453NGNG
>>458そんな簡単な方法があったんですね(また恥ずかしい)。
一応、 Jar マニフェスト で検索して解説文も見つけました。
ありがとうございました。
0462デフォルトの名無しさんNGNG
USBカメラを使って、ローカルマシンの特定のディレクトリにスナップショットを任意の秒数間毎に撮影できるJavaアプリケーションを作りたいと考えています。
おそらく、対応ドライバがないとだめとかという諸問題は存在するでしょうが、構築にあたって何か参考になる書籍等はございませんでしょうか?

よろしくご教授下さい。
0463デフォルトの名無しさんNGNG
有名女優からセーラー服まで
当然、無修正
無料ムービーも充実!!
http://www.ncdonald.com/
0464デフォルトの名無しさんNGNG
>>462
それはつまり、

USBマウスの制御アプリをJavaで作りたい・・・
AirH"の制御ソフトをJavaで作りたいって事と難易度同じだよね
ちょっと生半可な知識じゃ無理っぽい
0465デフォルトの名無しさんNGNG
>>462
ttp://java.sun.com/products/java-media/jmf/2.1.1/formats.html#Capturers
>>464
USBのあしまわりだけならIBMが提供しているはず。
AirHもJavaCOMMつかってCOMポート経由するくらいなら
できるんじゃないのかなあ。
0466デフォルトの名無しさんNGNG
>>464
>>465
情報ご提供ありがとうございました。
早速検討してみます。(^^)
引き続きみなさまからの情報をおまちしております。
0467デフォルトの名無しさんNGNG
>>465
できる出来ないではない
難易度が高いよと言ったまでだよ
0468デフォルトの名無しさんNGNG
カメラのUSBドライバからなら、
走査線のタイミングを見計らってメモリをコピーするだけじゃない。
0469デフォルトの名無しさんNGNG
>>468
どっからそのメモリのデータもってくんの!
0470デフォルトの名無しさんNGNG
>>469 IBM USB APIでできるんじゃないの? そういや、これまえは
alphaWorksにあったとおもったんだけど、いまどこにあるんだろ。
JCPにかけたみたいだから、場所移したのかな? JMFも試したことない
けどやった人いる?
0471デフォルトの名無しさんNGNG
1度閉じたJavaのソースプログラムを組んだファイルの開き方を教えて下さい。

1度閉じた.classファイルや.javaファイルの開き方がわかりません
0472デフォルトの名無しさんNGNG

なんだ、実際試したわけじゃないのね・・・・
0473デフォルトの名無しさんNGNG
>>471
1度きりの人生大切にしてください

0474デフォルトの名無しさんNGNG
>>471
何のこと言ってんだろう・・・
0475デフォルトの名無しさんNGNG
>>471

俺が今まで見た質問で一番キョーレツだ!

ググレともAPI嫁とも言えないし、どうやって料理すればいいんだよ!

明日、会社行きたくない
0476470NGNG
>>472 468がどういうつもりかは俺は知らんけどね。
0477デフォルトの名無しさんNGNG
>>471
ソースの開き方がわからないんだな。

どうやるんだろう?
0478デフォルトの名無しさんNGNG
>>475 ハゲワラ
0479デフォルトの名無しさんNGNG
>>471
エディタとかでプログラムを書いて、*.javaで保存したら開けなくなっちゃったってことかな?
仮にそうだとしたら、その*.javaファイルをメモ帳とかに放り込め。
0480デフォルトの名無しさんNGNG
>>479
お前の話は詰まらん!
マジレスハンターイ
0481デフォルトの名無しさんNGNG
おちつけ、もまいら
まず、1行ずつやっていこう

Lesson1

「1度閉じたJavaのソースプログラムを組んだファイルの開き方を教えて下さい。 」

この文を、日本語的に解釈しよう

「・・・」を「教えてください。」

これはいいな、次

「・・・」の「開き方」を「教えてください。」

よしよし、順調だ 次
0482デフォルトの名無しさんNGNG
>>479
ああーそういうことか

拡張子変わって、デフォルトで開けなくなっちゃったのか・・・
なんかかわいいな
0483デフォルトの名無しさんNGNG
>>471
スゲ-教えてあげたい
どうすればいい?
0484479NGNG
>>480あまりに難問で翻訳に集中しちまって
そこまで気が回らなかったよー
不意打ちされて俺がワラタ。
0485デフォルトの名無しさんNGNG
先ずはWindows板に先導することが先決だ。
http://sports.2ch.net/test/read.cgi/bicycle/1056529890/l50
0486デフォルトの名無しさんNGNG
>>484

ツマラン!
0487デフォルトの名無しさんNGNG
今日一番の笑いでした。ありがとう。
漏れはもう寝ます。
朝までに>>471の書き込みがありますように。
0488デフォルトの名無しさんNGNG
>>487

いやぁ、僕も衝撃的でした

何年ぶりだろう。。。「素」で、二度見しちゃったよ

こんな日本語なら英語のDoc読んでたほうがましですね

なんか、仕事にやる気出てきました
0489479NGNG
くっそー 俺だけ真剣に悩んじまってノリノリになれなかった気分だぜ。
でもオマイラ面白かったぞ。ありがとな。
0490デフォルトの名無しさんNGNG
スタンドアローンのjavaのプログラムとWebアプリに組み込むjavaプログラム
の違いは何ですか?
社員情報を登録するシステムを作成するとしたら、どちらがよいですか?
その理由は何ですか?
0491デフォルトの名無しさんNGNG
>>490そんなに訊いちゃいや〜ん。
とりあえず
>スタンドアローンのjavaのプログラムとWebアプリに組み込むjavaプログラム
>の違いは何ですか?
だけ自分で調べて、残りについては自分の胸に聞くが吉。
0492デフォルトの名無しさんNGNG
>>479
その方法教えて下さい。
0493デフォルトの名無しさんNGNG
>>492=>>471
でいいのか?を最初に問いたい。
0494デフォルトの名無しさんNGNG
>>492
あらかじめメモ帳を開いておいて、そこにファイルをドラッグ&ドロップ
0495デフォルトの名無しさんNGNG
>>493
ちがうけど、同じ悩みに遭遇したのでお願いします。
0496デフォルトの名無しさんNGNG
>>495同じ悩みに遭遇?????????????????????????????????????????????????????????????????????????????????????
んなバカな。。

0497デフォルトの名無しさんNGNG
>>495
漏れはお前と出会って、未知と遭遇しました・・・
0498デフォルトの名無しさんNGNG
この展開面白すぎ
0499デフォルトの名無しさんNGNG
そんなことはどうでもいいけどさ。
>>471>>492は、まず氏んだら?
0500デフォルトの名無しさんNGNG
とりあえずこの展開を見て
>>487が朝、ワラテくれるといいな。
0501496NGNG
やっと落ち着いたよ。。。冷静になって自分のカキコ見直して・・・なんじゃこりゃ?
ごめんよ、マジで気が動転してたらしいや。
0502487NGNG
そうきたかっ
0503デフォルトの名無しさんNGNG
すごい「神」が降臨してますな
しかも2神も・・・
あのすばらしさは、ネタでは作れないな
「素」がなせる技だ。あるいはマジで小学生ぐらいだな。
0504デフォルトの名無しさんNGNG
>>459-460
GraphicsPanel に
Dimension size = new Dimension(1000, 1000);
public Dimension getPreferredSize()
{
  return size;
}
てな行を追加してみては如何かと。
0505デフォルトの名無しさんNGNG
ばかにしやがって
0506デフォルトの名無しさんNGNG
>>462
JMFを使ったらどう?
0507デフォルトの名無しさんNGNG
>>471>>492
てゆうかさ、君たちプログラムするの早すぎ。
どうせ中学生なんだろww(←リア厨とかかいてもわかんないと思うからね)

まずはPC、Windowsの勉強からどうぞ。
0508デフォルトの名無しさんNGNG
JAVAでオペレータ側の任意のタイミングでクライアント側の
画像やWEBページの表示を切り替えるアプレットを作成してみたいのですが、
技術的に可能でしょうか?

現在の私のレベルは入門書を読みながら1000行程度の簡単なAI搭載オセロを
作成した程度です。
0509デフォルトの名無しさんNGNG
>>507
俺は中1の頃から組んでたぞ。
中学からとか、中には小学からという奴も、
職場にはざらにいるが。。。
0510デフォルトの名無しさんNGNG
配列からIteratorは作れますか?
0511デフォルトの名無しさんNGNG
俺もソースプログラムを組んでくれるファイルが欲しい
0512デフォルトの名無しさんNGNG
>>510
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/Arrays.html#asList(java.lang.Object[])
でList作ってIterator呼ぶとか
0513デフォルトの名無しさんNGNG
今はList作ってIteratorを返すメソッドを使っていて
Listのかわりに配列を使おうかと思っていたので、
またList作るのは何かさびしいですね。

配列がちゃんと作れるか確認できたら
配列を返すようにしてみようと思うので、
それでやってみます。
0514デフォルトの名無しさんNGNG
いーじゃんか別に
0515デフォルトの名無しさんNGNG
>>514
何が?
タモリが歌わなくなったことか?
0516デフォルトの名無しさんNGNG
Javaアプレットについてなんですが、
画像を左から右へスクロールさせるプログラムを
教えて下さい。

*.java,*.htmlの両方
0517デフォルトの名無しさんNGNG
表示位置をかえる。
0518デフォルトの名無しさんNGNG
自分の顔の位置を
右から左に移動させる

バッチグー!
0519デフォルトの名無しさんNGNG
インスタンスイニシャライザってどういう場面で使うの?
普通にコンストラクタを記述するんじゃダメなの?
0520sageNGNG
超初心者学生房です。
恥を忍んでお聞きします。
intの中の数値をtextfield上に表示させるにはどのように命令すれば良いのでしょうか?
ぜひお教えください。
0521デフォルトの名無しさんNGNG
問いに対して真面目に答える気のない奴は書き込むな!
0522デフォルトの名無しさんNGNG
>>520
import java.awt.*;

class t{
public static void main(String args[]){
TextField tf = new TextField();
int i=10;
Frame fm = new Frame();
tf.setText(Integer.toString(i));//答えはここです・・・//
fm.setSize(150,100);
fm.add(tf);
fm.setVisible(true);
}
}
0523デフォルトの名無しさんNGNG
"" + i
0524デフォルトの名無しさんNGNG
同じループが三つくらいあるので一つにまとめようと思うのですが
メソッドの引数にメソッドを渡すにはどうすればいいのですか?
0525デフォルトの名無しさんNGNG
>>523これオモロイ。よく使う技なのか?
0526デフォルトの名無しさんNGNG
>>524状況がよくわからんが、まったく同じループ?
だったら

戻り型 loop(引数){
 よく使うループ文
}

とかつくって他のメソッドの中でこのメソッドを呼び出せば。
0527デフォルトの名無しさんNGNG
class ClsA {
protected int a;
public final void set(int n) {
a = n;
}
public final void display() {
System.out.println("a= " + a);
}
}
class ClsB extends ClsA {
private int b;
public void subset(int n1) {
a = n1;
}
}
public class Test {
public static void main(String[] args) {
ClsA spr = new ClsA();
ClsB sub = new ClsB();

spr.set(10);
sub.display();

sub.subset(10);
sub.display();
}
}

この場合、何故どちらもa=10にならないのでしょうか。
教えてください。
0528デフォルトの名無しさんNGNG
spr.set(10);
sub.display();

spr.set(10);
spr.display();
0529デフォルトの名無しさんNGNG
>>526
全く同一ではなく、for文の中身が違うやつです。
ループする回数は同じです。

for (int i = 0; .... ; i++)
for (int j = i; ... ; j++)
hoge(i, j);
このhogeを引数で渡すようにしたいのです。
0530デフォルトの名無しさんNGNG
hogeをメソッドにもつクラスを引数にして
無名クラスを渡す。
0531●NGNG
テスト
0532デフォルトの名無しさんNGNG
>>527
君は、二つ参照変数を作ってるでしょ?sprとsubと。
この2つは、別々のオブジェクトを指しているんだよ。
spr.set(10); で、sprが指すオブジェクトの int aを変えても、
subが指すオブジェクトのint aは変わらない。
したがって、
sub.display()
では何も代入されていないa(初期値で0が入ってる)がでる。

(1) spr.set(10); ← sprが指すオブジェクトのaに10を代入
(2) sub.display(); ← subが指すオブジェクトのaを表示(初期値だから0)

(3) sub.subset(10); ← subが指すオブジェクトのaに10を代入
(4) sub.display(); ← subuが指すオブジェクトのaを表示(今度は、(3)で変更されてるので10)

もしも(1)の前に
spr=sub;
と入れると、sprもsubも同じオブジェクトを指すようになるから、今のままでも両方10が出るよ。

あと、
ClsAの
protected int a;
を
static protected int a;
に変えると、今のままでも両方10になる。このあたりは自分で勉強しよう。
なんかすげ-長くなったな・・・
0533デフォルトの名無しさんNGNG
>>527
spr.set(10);
sub.display();
どういう意図でこれをしてるか教えてほしい。
0534デフォルトの名無しさんNGNG
>>533
多分、ClsAとClsBが継承関係にあるから、
spr.set(10);
sub.display();
で10が出ると思っちゃったんだよ。俺もこんな実験、勉強始めたばっかしの頃やったことある。

int aはstaticじゃないから、sprが指すaとsubが指すaは違うもの
ということだよ>>527
0535527NGNG
>>532
うう。。ご丁寧にありがとうございました。
すっかり基本的なことを忘れていました。
ほんとうにありがとうございます。

>>533
ぜんぜん初心者なので、いろいろな継承パターンをあれこれしていて、
スーパークラスのメソッドを全部finalにしてオーバライドできない状態で
サブクラスからアクセスしてもいけるよなと思いやってみたら出来なかったので悩んで
いたのです。
そしたらなんと、>>532のおっしゃっている基本をすっかりさっぱり忘れていたのです。

でもほんとすっきりしました。
ありがとうございました。
0536デフォルトの名無しさんNGNG
フィールドはインスタンスごとに作られるってことでいい?
0537527NGNG
>>534
ああ。。まさしくその通りです。
0538デフォルトの名無しさんNGNG
>>536
というか、staticなメンバかどうかという問題。
staticなメンバならインスタンスごとに作られる。
0539538NGNG
>>538
間違えた。。
staticなメンバ でなければ インスタンスごとに作られる
0540デフォルトの名無しさんNGNG
クラスごとちゃう?
0541デフォルトの名無しさんNGNG
>>530
変数を使おうとするとfinalでないと駄目って出て、
変更できなくなるんですけど、
変更できるようにするにはどうしたらいいですか?

int foo() {
int n = 0;
Test t = new Test() {
void hoge(int i, int j) {
n++;
}
};
loop(t);
return n;
}
ってやりたいのですが。
0542直リンNGNG
http://homepage.mac.com/maki170001/
0543デフォルトの名無しさんNGNG
abstractクラス(またはinterface)でstaticなメソッドを
abstractにしたいときってないですか?
僕はそのような状況になってしまったのですが。
設計間違えたんだろうなあ・・・
0544デフォルトの名無しさんNGNG
>>543
うわー、また変な奴らが煽りそうだよ
逃げろとにかくおまいは逃げろ

0545デフォルトの名無しさんNGNG
>543
おまえはセンスがない。
0546デフォルトの名無しさんNGNG
               i    ,. へ-、 __  i
               !i _,..::'"li.∧.l!  ゙_」ト、
              , j<.ー-i!  l!-―'"/\
             /゙.,へ、  ┐  i、 /   ヽ.
             .i i   >/\/)゙"‐ 、.   i
             l lレ''"  \jl!レ゙   _,...、ヽ. l
             l! rヲ――--_」Lii--――ヾ. l
キタ━━━━━━━l! // <二》 _ 《二>゙ ヾ、!、━━━━━━━━━ !!
            .j.,.ィ゙     ./ ! \_    l!\\
           /'' l!   ,.. '´ ヽ    ゙̄ーr-ノ  ゙ー-、_
         _/'´  トt-イ  ,−---    ,!/      >
        <.      ゙t'ヽ  ヽ ─ /   /,」      /
          \     `-iヽ  ヽ /  ,.r 「    _/
      .     ゙"ー―┬;L ヽ __ / ,.!┬―''"
                  !レー゙==┬==‐゙┐l
                l   テ、 ]l.l ,r= ゙.l
    ,.,..-、--ー―===ー".ヽ、  ゙r  ! ̄F" /ー--、ー-----、
  r;''/  ) ̄ ̄____ ゙ヾ=.コ l! .「"./  __ ゙̄ー--ヲ \__
  フ/,ィi」i」    ヾ====== \_ \ i! / __/,.=======ヲ  i ,. _ r、\
  / ゙"        ヾ=====   ̄    ̄   ======"   Lハ l l l トi.」
/     ,.へ     二二// ̄V ̄\\二二二゙     ,、    \
0547デフォルトの名無しさんNGNG


イェロー法度のCMみた?


狙いすぎでつまんないんだけど・・・
0548デフォルトの名無しさんNGNG


胃腸マン「あらわれたな!胃もたれ君!」
0549デフォルトの名無しさんNGNG
>>543
素で、一体何を言っているのかよくわからない。
オマイの説明がよくワカランだけのような気がしないでもない。。
まだ逃げてなく、かつあんまり長くなければ、ソース見せてた方が早いぞ。
てか言ってると、ほぼ確実にこういうツッコミがあんだよな↓
0550デフォルトの名無しさんNGNG
JAVAでスタンドアロンのアプリケーションを作ろうと
しています。
ちょっと悩んでいるので質問させてください

1.Stringの中身がすべて数字で構成されているかどうか
  調べるにはどうしたらいいか?
2.コマンドプロンプトへの出力で
  画面をクリア(DOSのCLSコマンドのような)することはできないか?
0551デフォルトの名無しさんNGNG
>>550

1.Integer.parseInt()で例外発生しなければ・・・
あたまに0が付いてたらどうなるんだろう?

2.100行ぐらい改行
0552デフォルトの名無しさんNGNG
実際のやつは書けないけど↓のようなもの。

abstract class SystemCorrector {
    ...
    public static abstract SystemModel createDefaultIdealSystem();
    ...
}
--------------------------------
public MachineCorrector extends SystemCorrector {
    ...
    public static SystemModel createDefaultIdealSystem {
    ...
}
...
}
--------------------------------
public MySystemCorrector extends SystemCorrector {
    ...
    public static SystemModel createDefaultIdealSystem {
        ...
    }
    ...
}

システム校正する抽象クラスがあって,
悪い状態のシステム(機械やら)を校正するっていうクラスの集まりです。
校正するにはそのシステムの理想状態がないといけないってことで
staticなクラスでその理想状態を定義しましょう。
って感じ。
インスタンスメソッドにしても良いんだけど、
とりあえず、MachineCorrectorでもMySystemCorrectorでも
全システムの理想状態ってインスタンス共通なんだよね。
0553デフォルトの名無しさんNGNG
元のクラスclass SystemCorrectorのなかで
createDefaultIdealSystem()を定義すれば?ダミーで
0554デフォルトの名無しさんNGNG
あーごめんなさい。
createDefaultIdealSystemのDefaultは余計でした。
defaultって書くと他にも理想状態がありそうな感じになるので。

>>553
MachineSystemModelでもMySystemModelでも理想状態は
パラメータ構成的(パラメータ数とか)に全然違うので、
その場しのぎ的な定義では意味ないっす。

抽象SystemModelクラスの派生クラス(MachineModelクラスやらMySystemModelやら)に
理想状態を定義することを義務付けるってことも考えたのですが、
プログラム的に強制するのは結局、abstract staticメソッドが必要なんですよね。
ちょっと設計やり直してみます。
駄目だったらabstractインスタンスメソッドで行こうと思います。
0555デフォルトの名無しさんNGNG
よく分からんが、とにかくコードは注意して書け。
0556543=552=554NGNG
>>555
うぃ。最近、デザパタの本買ったのでもっと勉強したいと思います。
0557デフォルトの名無しさんNGNG
abstructでオーバーライドしたクラスを使う。
0558デフォルトの名無しさんNGNG
コンパイル言語例えばC++とJavaの実行速度って
一般的にどのくらい違うもんですか?
2倍?10倍?
0559デフォルトの名無しさんNGNG
>>558とりあえず、Javaもコンパイル言語だと言っておこうか。
0560デフォルトの名無しさんNGNG
>>558
何を比較するかによる。起動の速さなら2〜10倍くらいJavaのが遅いし、
コードの実行速度だけなら、殆ど変らんし。
0561デフォルトの名無しさんNGNG
>何を比較するかによる。
熱解析をJavaでやってみようかなあと。
これは「何を比較するかによる」にひっかかるのかなぁ。
コードの実行速度は変わらないのは以外でした。

>Javaもコンパイル言語
インタプリタ言語と区別するためにこう表現しました。
インタプリタも広義ではコンパイル言語なんですね。
0562デフォルトの名無しさんNGNG
>>561
>インタプリタ言語と区別するためにこう表現しました。
>インタプリタも広義ではコンパイル言語なんですね。
それは勘違い・・・
0563561NGNG
あれっ?(汗
0564561NGNG
OK。*スクリプト言語ではない*ということですね。ですね?でつね?
0565デフォルトの名無しさんNGNG
今SUNのダウンロードページに行くとServer Hangupになるんですが、
私のとこだけでしょうか・・・
0566デフォルトの名無しさんNGNG
Javaはスクリプト言語でもインタプリタ言語でもない
0567520NGNG
>>522さん
遅れましたが、レスありがとうございました。
出来ました。
専学の宿題でCPU戦の出来るオセロゲームを作っています。
自分にとっては難題ですが頑張って作ります。
0568デフォルトの名無しさんNGNG
>>561
> これは「何を比較するかによる」にひっかかるのかなぁ。
起動、終了を激しく繰り返すようなプログラムにはJavaは不向き

> インタプリタも広義ではコンパイル言語なんですね。
JavaはJITコンパイラで、実行時にコンパイルする。だから、最適化
されるタイミングも、静的にネイティブコンパイルする言語と違う。
どっちがいいかは物による。
0569デフォルトの名無しさんNGNG
>>566
それはJavaの変数は全て値渡しです。と言ってるのと同じだね.
実行前にnativeに変換するから,コンパイル言語と一緒だと言ってるんだろ.
漏れは惑わされないぞ!
0570デフォルトの名無しさんNGNG
>>565とりあえず私はダウンロードページは見られますが。
0571デフォルトの名無しさんNGNG
未だにJavaがインタプリタだと思ってる輩がいるんだなあ。
こういう輩が不当にJavaが遅いって思い込んでるんだろうなあ。

まあ起動時間は動的コンパイルの仕組み上
これ以上はあんま速くならないだろうけどね。
0572デフォルトの名無しさんNGNG
JITコンパイラのコンパイル速度が飛躍的に向上すれば・・・無理ぽ
0573デフォルトの名無しさんNGNG
>>395
> クラスライブラリのドキュメントが
> 検索も無くて使いにくいのですが
> 他に簡単に検索できるようなドキュメントとかないんでしょうか?
> Winのヘルプファイルとかになってるやつとか
> あったら教えてください

bashを例として(cshは面倒くさいから説明カット)

find ドキュメントが存在するディレクトリパス -name *.html
-print 2>/dev/null | xargs grep 検索したい単語

で検索しろ。Unix系じゃない? だったらcygwin入れろ。
0574デフォルトの名無しさんNGNG
>>569
>それはJavaの変数は全て値渡しです。と言ってるのと同じだね。

どういう意味の発言かはわからないが、
Javaの関数呼び出しにおいては変数はprimitive型はもちろんとして
reference型もすべて値渡し(参照値の値渡し)ですが。

foo(String s) { s = "foo"; } があって
String bar = "bar";
foo(bar);
とやっても bar は "foo" にならない。
0575デフォルトの名無しさんNGNG
>>395,573
namazuでも入れてみたらどうだい
0576デフォルトの名無しさんNGNG
>>570
さんくすです。時間置いてみたら行けるようになってますた。
0577デフォルトの名無しさんNGNG
オブジェクト配列について質問します。
Float型、Integer型、String型、Boolean型、Character型、Double型への
変換方法及び配列の作成方法と、覚えるコツを教えて下さい。
中々理解出来なくて困ってます…。
0578デフォルトの名無しさんNGNG
>>577
覚えられないのか?
理解出来ないのか?

それが問題だ。
0579デフォルトの名無しさんNGNG
>>578
理解出来ない、というより型が分かりません。
というより、一次元配列や多次元配列と、オブジェクト配列の
違いが分かりません。
0580578NGNG
おっと、連書きごめんなさい。
違いが分かりました。でもやはり>>577で出した
型の変換方法が分からないです。。
0581デフォルトの名無しさんNGNG
new Integer(1)で作る。
0582578NGNG
>>581
文字列を数値に返してから変換するんですか?
それは違うと思いますが…。
0583デフォルトの名無しさんNGNG
型の変換方法が何を指してるのか分からん。
何から何に変換したいんだ?
0584578NGNG
>>581
ごめんなさい、自分でInteger型を入れてました。
Double,Float,Boolean,Characterでした・・・。
0585578NGNG
>>583
String a = new String[3];
a[0] = "String 1";
   ・
   ・
   ・


こんな感じでString型はオブジェクト配列を作成しますよね?
これの上記に書いた型の変換(というかオブジェクト作成方法)を知りたいのです・・・。
0586デフォルトの名無しさんNGNG
>一次元配列や多次元配列と、オブジェクト配列

なにがどう違うかを説明すればいいのですか?

1次元、2次元→次元
オブジェクト→中に入れるもの
0587デフォルトの名無しさんNGNG
String型はオブジェクト配列を作成しますよね?

どういう意味だ?
文字の並びのことか?
0588デフォルトの名無しさんNGNG
String a = new String[3];

String[] a = new String[3];
0589デフォルトの名無しさんNGNG
new Integer(a[0])とかできるはずだが。
0590578NGNG
>>588
すんません、忘れてました。

>>587
聞きたいのは

Double a[] = new Double[1];

Float a[] = new Float[1];

Boolean a[] = new Boolean[1];

Character a[] = new Character[1];



これでおk?って事です。
0591デフォルトの名無しさんNGNG
みなさんもこの問題をといて見てはいかが?
C言語の問題です。
http://jbbs.shitaraba.com/game/bbs/read.cgi?BBS=1314&KEY=1060147851&START=115&END=200&NOFIRST=TRUE
0592デフォルトの名無しさんNGNG
それでよかった気がするが、
Character[] a = new Character[1];
0593578NGNG
>>592
おkなんですか・・・。
悩んでた漏れが馬鹿だった。
試せない環境にいたので助かりました。ありがとうございます。
0594デフォルトの名無しさんNGNG
配列の作成は例えばBooleanの配列だったら型を単にBoolean[]だと思えばよろしい。
でコンストラクタの引数が配列の長さ。
注意すべきは普通のインスタンス作成とコンストラクタの形が違うこと。

Objectを作成するときはObject foo = new Object();
Boolean[]を作成するときはBoolean[] foo = new Boolean[10]); // new Boolean[](10) ではない
0595デフォルトの名無しさんNGNG
Double d = new Double(a[0]);
Double d = Double.valueOf(a[0]);

または無駄に
Double d = new Double(Double.parseDouble(a[0]));
FloatはDoubleをFloatに変えればいい。
しかしa[0]に文字がはいってりゃだめだこりゃ。

Boolean b = new Boolean(a[0]);
または
Boolean b = Boolean.valueOf(a[0]);
またはもっと無駄に
Boolean b = new Boolean(Boolean.getBoolean(a[0]));
まあfalseになりますな。

Characterは方法がこれら以上に無数にドキュメント見て自分で
判断セヨ
0596デフォルトの名無しさんNGNG
どこが変換方法なんだ?
試しながらやるのが一番いいわけで・・・。
試せずにやるのが最悪すぎます。
0597578NGNG
厨な質問に付き合ってくれてありがとうございました。
やっぱり試しながらやってく事にします。
0598デフォルトの名無しさんNGNG
>>597
おまえは577だろ。
0599577NGNG
>>598
スマソ、寝てないのでテンパりまくりですた
0600デフォルトの名無しさんNGNG
>>599
痛い言い訳ですね。
0601577NGNG
>>600
まあ別にどう取られても構わないですけどね。
教えてもらうのが一番の目的でしたから。
ありがとうございました。
0602デフォルトの名無しさんNGNG
必死だな
0603デフォルトの名無しさんNGNG
>>602

577のカキコから何時間も過ぎてんのにそんなこと書いてんじゃねーよ
おまえみたいな奴って実際怖いよ

0604デフォルトの名無しさんNGNG
>>603
俺はお前が怖い、とレスを読まずにカキコ
0605デフォルトの名無しさんNGNG
>教えてもらうのが一番の目的でしたから。

こいつは一生伸びない。
0606デフォルトの名無しさんNGNG
必死だなとか書いてるやつって、
逆の立場のとき、本当に必死だったんだろうなって思う。
0607デフォルトの名無しさんNGNG
意味不明
0608デフォルトの名無しさんNGNG
> まあ別にどう取られても構わないですけどね。

ちょっと勘にさわるようなことを言われ、
半ばやけになってるときに発する台詞。
0609デフォルトの名無しさんNGNG
すみません超初心者です。誰か>>282
の解説をしてもらえないでしょうか?お願いします。
0610デフォルトの名無しさんNGNG
>else if (b = false){
if文で代入しているからコンパイルエラー

つうかやってみたらイッパツダと思うが。
こんなところで何時までも待っているより、JDK落して試してミソ。
0611デフォルトの名無しさんNGNG
>>609
すたてっくふぃーるどbはfalseで初期化されるってだけ
0612デフォルトの名無しさんNGNG
>>610
おもんないよ
0613デフォルトの名無しさんNGNG
あれでコンパイルエラーって、どんなコンパイラ使ってんのじゃろ
0614デフォルトの名無しさんNGNG
>>610

>if文で代入しているからコンパイルエラー
おまえ、ネタじゃないよな?
なんでコンパイルエラーになるの?

そもそもbってbooleanなので
普通の代入と違うんだよ

つまり

if(b)って書ける

でもほかの型ならこの書き方ダメだけど・・・

言っておくけど>>282の問題はSunの認定試験の問題だよ
正解はx=4です
0615デフォルトの名無しさんNGNG
シューティングゲーム作ろうと思うんだが
自機の動きのクラス とか 敵の動きのクラス とか
別々にコンパイルして作るものなんですかね?
一つのメモ帳(秀丸)で、シューティングゲームできるんでしょか・・
なんか、根本的に、理解していないい俺Rですね・・
0616610NGNG
スマン。Eclipse使ってるから警告とエラーの区別つけてなかったや。
0617デフォルトの名無しさんNGNG
そういう問題ではないだろ?
お前自分で判断したんだろ?
ココがエラーだって
0618デフォルトの名無しさんNGNG
            ((()))   ((()))  ((()))  ((())) ((()))
            (´∈`)  (´∈`)  (´∈`)(´∈`) (´∈`)
           /⌒|/⌒ヽ./⌒|/⌒ヽ./⌒|/⌒ヽ./⌒|/⌒ヽ )))
           \ミ/彡丿\ミ/彡丿\ミ/彡丿\ミ/彡丿∈`_)
            ヽ  / . ヽ  / . ヽ  / . ヽ  / /⌒)))
            /∨ ヽ   /∨ ヽ  /∨ ヽ   /∨ ヽミイ ∈`_)
            | |  丿  | |  丿. | |  丿  | |  丿. | /⌒ )))
          .  | | / .  | | / . | | / .  | | / . ミイ ∈`_)
          ..  | | .ノ    | | .ノ .   | | .ノ    | | .ノ.   | /⌒ノノノノ
            彡彡   彡彡   彡彡   彡彡. .  ミイ ∈`_)
                                     | /⌒  )
                                       ミイ  //
                    >>600                 | ( (
                       ↓                  |  ) )
    ノノノノ            ∧∧               .       | //
     (_´∋           (;゚Д゚)                    | ノノ
    (  ⌒\          /  |                     |ノノ
    ヽヽ个彡         〜(,, UU)                 彡ヽ`
     )). |
    ((  |
     ヽヽ. |
     ( ( |
     .ゝゝ|    さぁ、帰さんぞ
     ′′ ミ
0619609NGNG
ご解説ありがとうございます。
if (b) {
x=1;
}

else if (b = false){
x=2;
}

をif (b=true)に変えるとx=1になりました。これはわかります。
初期化でfalseになってるならx=2ではないでしょうか?
0620デフォルトの名無しさんNGNG
else if (b = false) // b ← false
↓
else if (b) // b の値は false
↓
else if (false)
0621_NGNG
http://homepage.mac.com/hiroyuki45/
0622_NGNG
http://homepage.mac.com/hiroyuki45/jaz09.html
0623デフォルトの名無しさんNGNG
>>619
b = false と b == false は違うってこと
0624デフォルトの名無しさんNGNG
>>619

んだから、

>>620も言っているように

b=falseは b==falseじゃないのよ
わかる?

int x;
x=1と x==1
は、ちがうよね?
0625デフォルトの名無しさんNGNG


>>623−−−>>624
結婚式のご案内です

8月20日、新高輪プリンスホテル 9階 特別展示上にて開催

詳しくは↓
0626デフォルトの名無しさんNGNG
>>615
確かに根本的に理解していないようですね・・・
0627が@Mたんちゅき p3173-ipad04fukuokachu.fukuoka.ocn.ne.jpNGNG
>>615たん。
そういうやりかた、strategyパターンっぽくて、かっこいいとおもう。
ついでに、ひとがいない過疎スレへ、ご招待。

デザインパターンの単純そうな質問
http://pc2.2ch.net/test/read.cgi/tech/994836140/l50
0628デフォルトの名無しさんNGNG
>>627
本質的に質問を理解していないと見た
0629デフォルトの名無しさんNGNG

              ┗0=============0┛
     \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/
     /三三三三三三三三三三三三三三三三三三三三\
    0 │ |∞∞∞ |::|∞∞田田田田田田∞∞|::|∞∞∞ | ::|  0
 ...[二] | ::|       |::|┏━━━━━━━━┓|::|       | ::l [二]
........|□|.│ |┌┬┐ |::|┃  /        \  ┃|::| ┌┬┐| ::|. |□|
  )三(...| ::|├┼┤ |::|┃/            \┃|::| ├┼┤| ::|`)三(´
   | ::| | ::|└┴┘ |::|┃ / ̄ ̄ ̄ ̄ ̄\ ┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃彳 人______ ノ.┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃入丿ー◎-◎ーヽミ.┃|::| ├┼┤| ::| | ::|
   |: :| | ::|└┴┘ |::|┃ r   . (_ _)     )┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃ (  ∴.ノ▽(∴  ノ ┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃⌒\_____ノ⌒┃|::| ├┼┤| ::| | ::|
   | ::| | ::|└┴┘ |::|┃    ┗━┛   .┃|::| └┴┘| ::| | ::|
   | ::| | ::|   ... |::|┃   . .>>577  .   ┃|::|      | ::| | ::|
.....┏━━━━━┓| .|┃          ......┃|::|┏━━━━━┓
.....┣┳┳┳┳┳┫|: |┗━━━━━━━━┛|::|┣┳┳┳┳┳┫
     ○    ●        ∫∬∫∬        ●    ○
     ○○  ●●      iiiii iii ii iiii       ●●  ○○
    [ ̄ ̄] [ ̄ ̄]   ( ̄ ̄ ̄ ̄ ̄)    [ ̄ ̄] [ ̄ ̄]
    |_○_|  .|_○_|     |_____|     |_○_|  .|_○_|
 ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
(    )(    )(,    )(,,    )    ,,)(    )(    )(,    )( ゚Д゚ )
やっと氏んでくれたね・・・引篭りで匿名掲示板でしか粋がれないデブオタこと>>577君
0630デフォルトの名無しさんNGNG

              ┗0=============0┛
     \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/
     /三三三三三三三三三三三三三三三三三三三三\
    0 │ |∞∞∞ |::|∞∞田田田田田田∞∞|::|∞∞∞ | ::|  0
 ...[二] | ::|       |::|┏━━━━━━━━┓|::|       | ::l [二]
........|□|.│ |┌┬┐ |::|┃  /        \  ┃|::| ┌┬┐| ::|. |□|
  )三(...| ::|├┼┤ |::|┃/            \┃|::| ├┼┤| ::|`)三(´
   | ::| | ::|└┴┘ |::|┃ / ̄ ̄ ̄ ̄ ̄\ ┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃彳 人______ ノ.┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃入丿ー◎-◎ーヽミ.┃|::| ├┼┤| ::| | ::|
   |: :| | ::|└┴┘ |::|┃ r   . (_ _)     )┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃ (  ∴.ノ▽(∴  ノ ┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃⌒\_____ノ⌒┃|::| ├┼┤| ::| | ::|
   | ::| | ::|└┴┘ |::|┃    ┗━┛   .┃|::| └┴┘| ::| | ::|
   | ::| | ::|   ... |::|┃   . .>>604  .   ┃|::|      | ::| | ::|
.....┏━━━━━┓| .|┃          ......┃|::|┏━━━━━┓
.....┣┳┳┳┳┳┫|: |┗━━━━━━━━┛|::|┣┳┳┳┳┳┫
     ○    ●        ∫∬∫∬        ●    ○
     ○○  ●●      iiiii iii ii iiii       ●●  ○○
    [ ̄ ̄] [ ̄ ̄]   ( ̄ ̄ ̄ ̄ ̄)    [ ̄ ̄] [ ̄ ̄]
    |_○_|  .|_○_|     |_____|     |_○_|  .|_○_|
 ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
(    )(    )(,    )(,,    )    ,,)(    )(    )(,    )( ゚Д゚ )
やっと氏んでくれたね・・・引篭りで匿名掲示板でしか粋がれないデブオタこと>>604君
0631デフォルトの名無しさんNGNG
unko{

String s = "";;
add(s);
System.out.println(s);
}

add(String s){
s = "unko" ;
}


これでだと、なにも表示されないのですが、
プリミティブ型やStringBufferなどのクラス型は
引数に参照の値を渡してあげると
値が変わりますよね。
なぜStringはだめなのですか?
0632デフォルトの名無しさんNGNG
>>631
そういう仕様だから。不変(イミュータブル)オブジェクトという。
0633459-450NGNG
>>504
レスが遅くなってすいません。
できました。本当にありがとうございました。
0634デフォルトの名無しさんNGNG
JDBCを使ってORACLEから値を取得するプログラムを書いています。
取得しようとしている値に改行が含まれていて、
ResultSetのgetString()を使うとNULLになってしまいます。
そんなときは、どのメソッドで取得するといいのでしょうか?
0635デフォルトの名無しさんNGNG
本当に街で見かける女子校生っぽいファッションの少女です。
スレンダーな体つきに黒い下着がセクシーです。
おもむろに男性のチンチンを咥えオマンコでも受け入れてしまう乱れ方は相当のもの!
コギャル好きにはストライクです。
無料ムービーを観てね。
http://www.pinkschool.com/
0636デフォルトの名無しさんNGNG
> 取得しようとしている値に改行が含まれていて、
> ResultSetのgetString()を使うとNULLになってしまいます。
0637デフォルトの名無しさんNGNG
>>631
なりゃせんぞ。
static void add( StringBuffer s ){
s = new StringBuffer( "aaa" );
}
public static void main( String args[] ){
StringBuffer s = new StringBuffer( "" );
add( s );
System.out.println( s );
}
0638_NGNG
http://homepage.mac.com/hiroyuki45/
0639デフォルトの名無しさんNGNG
LAN上のPCから自分が使ってるグローバルIPを得るにはどうすればいいのでしょうか?
0640デフォルトの名無しさんNGNG
LANってことはプライベートIPだろうから、なにをどうしてもグローバルIPになることはない。

ルータにtelnetして内部コマンドでIPアドレスを取得
Webサーバ内蔵のルータなら、ポート80を叩いて画面出力を自力で切り出す
ネット上の環境変数を返すCGIを呼び出して、自力で切り出す。
等々。
Javaには全然関係ないね。
0641デフォルトの名無しさんNGNG
>>632
>>そういう仕様だから。不変(イミュータブル)オブジェクトという。
アフォですな。
0642639NGNG
>640
JAVAのプログラムでということを忘れました
0643デフォルトの名無しさんNGNG
System.out.println() などでコマンドラインに出力するツールを、
jarファイルに変換するとSystem〜が出力されなくなってしまいます。

なんとか表示させる方法はないのですか?
0644デフォルトの名無しさんNGNG
>>643
コンソールから起動しろよ。標準出力を画面に表示するようにしなきゃ
見えるわけねえべ。
0645デフォルトの名無しさんNGNG
>>642
つまり自分のPCのアドレスとりたいのか?
java.netのServerSocketだかInternetAddressだか忘れたが
そのへんしらべろ
0646デフォルトの名無しさんNGNG
自分のIPアドレスなら下でいける。

InetAddress ipAddress = InetAddress.getLocalHost();
System.out.println("MyIPAddress:" + ipAddress);
0647デフォルトの名無しさんNGNG
>>643
javawで起動してないか?
0648639NGNG
<646
それだとローカルのアドレス(192.168.0.1)とかが返ってくるので。
グローバルIPを知りたいのです
0649643NGNG
いや、コンソールから(というかバッチファイルから)起動してるんですが・・
一応なんども確認してます。
つかもうどうでもよくなってきたんでもういいです。ごめんなさい。
0650デフォルトの名無しさんNGNG
>>649

#!/bin/sh
OF=/var/hogelog_$(date +%Y%m%d).log
/usr/bin/java hoge > $OF

とかなっているとか
0651デフォルトの名無しさんNGNG
>>649
そのバッチファイルの中身を貼るべし。
0652デフォルトの名無しさんNGNG
>>632
なんだお前、ただの能無しだったか・・・。
どうでもいいけど、焦らすなよw
0653デフォルトの名無しさんNGNG
クラス Hoge があるとき Hoge.class って書くと Class インスタンスに定数でアクセス
して速そうな気がするけど、実際のバイトコード上は毎回 Class.forName("Hoge")
をやっているということに気が付いた。
0654デフォルトの名無しさんNGNG
文字列の中に半角数字があるかどうかを素早く判定する方法で
一番ローコストな方法教えて下さい。
ダサイ方法ならいくらでも思いつくんですけど。
0655デフォルトの名無しさんNGNG
>>654
ローコストとは実行パフォーマンスか手間かどちらの事なのか分からないが
とりあえずそのダサい方法しかないと思われ

int len = str.length();
for(int i=0; i<str.len; i++){
  char ch = str.charAt(i);
  if(ch >= '0' && ch <= '1'){
    // 半角数字
  }
}
0656デフォルトの名無しさんNGNG
>>654
不変(イミュータブル)オブジェクトを使え。
0657デフォルトの名無しさんNGNG
>>656
つまんね

晒し age
0658デフォルトの名無しさんNGNG
657=632
0659デフォルトの名無しさんNGNG
>>655
やはりそれが一番効率良いですか。どうもでした。
0660デフォルトの名無しさんNGNG
>>658 = 顔を真っ赤にした >>656
0661デフォルトの名無しさんNGNG
現在、Base64でエンコードされた文字列を一部分だけ取り出してデコードを行い、
最終的に全てのデータをデコードする処理を作ってるんですがぜんぜん上手くいきません。(´・ω・`)

どうも、吐き出したバイナリを見たところ、最後に'\0'が付け足されてたり
2バイト文字なんかが入ってるとデータが壊れてしまったりしてるっぽいんです。
誰かタスケテ(つд`)

////////////////////////////////////////////////////////////////////////////
// 受け取ったStringBufferをInputStreamに変換する
////////////////////////////////////////////////////////////////////////////
private InputStream getInputStream(StringBuffer buf) {
 InputStream is = null;
 
 try {
  byte[] b = base64decode(buf.toString());
  is = (InputStream) new ByteArrayInputStream(b);
  b = null;
 } catch (Exception e) {
  e.printStackTrace(System.out);
  is = null;
 }
 return is;
}
0662661NGNG
private byte[] base64decode(String str)
{
int strlen = 0;
byte[] wk = str.getBytes();
str = null;
if (((strlen = wk.length) == 0) && ((strlen%4) != 0)) return null;
ByteArrayInputStream bais = new ByteArrayInputStream(wk);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int[] enc = new int[4];
byte i, j;
boolean flg = false;

while(bais.available() > 0) {
for (i=0; i<4; i++) {
enc[i] = checkBase64Char((byte)bais.read());
if (enc[i] == -1) return null;
}
baos.write((enc[0] << 2) | (enc[1] >> 4));
if (enc[2] == -1) baos.write((enc[1] & 0x0f) << 4);
else {
baos.write(((enc[1] & 0x0f) << 4) | (enc[2] >> 2));
if (enc[3] == -1)baos.write((enc[2] & 0x03) << 6);
elsebaos.write(((enc[2] & 0x03) << 6) | enc[3]);
}
}
baos.flush();
return baos.toByteArray();
}
0663661NGNG
private byte checkBase64Char(byte b)
{
boolean flg = false;// エラーフラグ

// decode base64 strings → byte
for (byte i=0; i<65; i++) {
if (b == bytemap[i]) {
if (i != 64) b = i;
else b = 99;

flg = false;
break;
}
}
if (flg) b = -1;

return b;
}
0664デフォルトの名無しさんNGNG
おい、>>639
外部とつながっているブロドバンドルータの取説読めよ
おそらく、CDに入っているマニュアルに書いてある
0665661じゃないけどNGNG
どうして、標準APIにBase64クラスがないんだろう・・・
0666デフォルトの名無しさんNGNG
>>654
String str;
Pattern p = Pattern.compile("\\d"); // 半角数字の正規表現
Matcher m = p.matcher(str);
if (m.find()) {
  ... // 半角数字あり
}

パフォーマンスはどうか知らないが記述量はだいぶ少なくて済む。
0667デフォルトの名無しさんNGNG
>>665
ネット上には
こんなのあるぜよ

パッケージ westtool.BASE64
クラスの概要
BASE64Engine
Decoder BASE64デコードクラス。
Encoder BASE64エンコードクラス。
0668661NGNG
JavaMailなんかにもあったんですけどね・・・
あきらめてHDD上にバッファリングするかなぁ・・・
0669661NGNG
自己レスですが、どーもデコード前のバッファリングに問題がありました・・・
(;・∀・)カコワルイ

とりあえず、ぐぐったら先人たちのイカスやつがあったんで、ちょこちょこっと修正して
動いたやつを乗せときます。

private static final byte EOF = (byte) 0xff;
private static byte[] decTbl= {
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, 62, EOF, EOF, EOF, 63,
52, 53, 54, 55, 56, 57, 58, 59,
60, 61, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, 0, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, EOF, EOF, EOF, EOF, EOF,
EOF, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, EOF, EOF, EOF, EOF, EOF
};
0670661@ソースの続きNGNG
public static byte[] base64decode(String str)
{
byte[] org = str.getBytes();
int strlen = org.length;
str = null;
if ((strlen== 0) && ((strlen%4) != 0)) {org = null; return null;}
ByteArrayInputStream bais = new ByteArrayInputStream(org);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
org = null;
try {
byte b1=EOF, b2=EOF, b3=EOF, b4=EOF;
while(bais.available() > 0) {
if ((b1 = decTbl[(byte)bais.read()]) == EOF) break ;
if ((b2 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write(((b1 << 2) | ((b2 & 0x30) >> 4)));
if ((b3 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write((((b2 & 0xf) << 4) | ((b3 & 0x3c) >> 2)));
if ((b4 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write((((b3 & 0x03) << 6) | b4));
}
baos.flush();
}
catch (Exception e) {e.printStackTrace(System.out);}
bais = null;
return baos.toByteArray();
}

ハァヤレヤレ・・・
0671デフォルトの名無しさんNGNG
>>661
自作しないで、Jakarata Commons-Codecを使えば?
http://jakarta.apache.org/commons/codec/index.html
もう遅いか
0672661NGNG
おせーよヴォケ
0673661NGNG
お前わざと、時間差攻撃してねーか?
0674661NGNG
あ、何か偽者でてる(w

さっきのBase64の話題と直接関係は無いんですが、
StrinbBufferで文字列をバッファリングしてるんですけど
deleteメソッドで内容を消すのと、新しいオブジェクトをnewするのとどっちが早いんでしょうか?

>671

情報サンクスコ
これって、Base64の文字列の一部だけ渡してデコードを行うことが出来るんでしょうか?
たとえば、受信データが100Mとか超えるときって、そのままバッファリングしたら
Out of Memory Exceptionが発生したりするじゃないですか。
で、出来たら受信データをデコードしつつバイパスしたほうが楽かなーと思って作ってたんですよ
( ´-`).。o(もし、コレで出来たらこっちに変えよ
0675デフォルトの名無しさんNGNG
>deleteメソッドで内容を消すのと、新しいオブジェクトをnewするのとどっちが
バッファの意味わかんないの?
0676661NGNG
>675

サンクスコ、deleteの方がはやいっすね
0677デフォルトの名無しさんNGNG
>674
部分文字列を4の倍数の長さで渡せばかまわないんじゃない。
0678デフォルトの名無しさんNGNG
さんざんガイシュツかもしれませんが、
無名クラスのコンストラクタって、どう書けばいいんですか?
0679デフォルトの名無しさんNGNG
classとclassをつなげるって、どうしたらいいですか?
0680デフォルトの名無しさんNGNG
>679
GoF嫁
0681デフォルトの名無しさんNGNG
>>678
http://www.y-adagio.com/public/standards/tr_javalang2/expressions.doc.html#253002
0682デフォルトの名無しさんNGNG
public class 教えてぷりーず {
 public class 内部クラスその1 {
  public void foo {
   System.out.println("foo");
  }
 }
 public static class 内部クラスその2 {
  public void bar {
   System.out.println("bar");
  }
 }
}
この二つの内部クラス、staticにするかしないかって、どう違うの?
クソ分厚いJava言語仕様開くのが面倒臭いので、
教えて、Javaの偉い人!
0683デフォルトの名無しさんNGNG
>>682
staticでない内部クラスにアクセスするには、外部クラスのインスタンスが必要。
普通のstaticフィールドと非staticフィールドの違いと同じ。

教えてぷりーず.内部クラスその1 obj1 = new 教えてぷりーず().new 内部クラスその1();
教えてぷりーず.内部クラスその2 obj2 = 教えてぷりーず.new 内部クラスその2();
0684デフォルトの名無しさんNGNG
アプレットで簡単なゲーム(ロードランナーみたいの)を作ろうと思うんですが
スレッドを使うのがいいのですか?
だとしたらなぜでしょうか?
startメソッド内で描画メソッドをぐるぐる回したらダメなんでつか?
0685デフォルトの名無しさんNGNG
>>681
>15.9.5.1 匿名コンストラクタ
>匿名クラスは,明示的に宣言されたコンストラクタをもつことはできない。
>その代りに,コンパイラはその匿名クラスのために自動的に匿名コンストラクタ を用意しなければならない。
>直接的上位クラス S をもつ匿名クラス C の匿名コンストラクタの形式は,次に従う。

つまり、コーディング上は、コンストラクタを記述することはできず、
コンパイラが規定のルールに従って匿名コンストラクタを用意して、
それが実行時に使われる、ってことですか?
そうすると、直接的上位クラス S をもつ個々の匿名クラス C において、
個々の初期化を、できるようにしようとした場合、
以下のような書き方にせざるをえないってことですよね。

---<S の宣言>---
public abstract class S {
 public S {
  init();
 }
 protected abstract init();
 ...
}
---<C1の宣言>---
S C1instance = new S() {
 ...
 protected init() {
  C1 固有の初期化・・・
 }
 ...

};
-----
0686デフォルトの名無しさんNGNG
>>685
独自のコンストラクタが必要なような場合に、匿名インナーなんかつかうな
ということだと思うが。
0687デフォルトの名無しさんNGNG
>>686
私は Singleton 継承(もどき)を実現するために、この方法を使ってるんですが、
この方法がまずいとすると他にもっとまともな方法があるのでしょうか?
0688デフォルトの名無しさんNGNG
どっちかっつーと匿名内部クラスは手抜き的プログラミング用だからなー
0689デフォルトの名無しさんNGNG
>>683
>教えてぷりーず.内部クラスその1 obj1 = new 教えてぷりーず().new 内部クラスその1();
>教えてぷりーず.内部クラスその2 obj2 = 教えてぷりーず.new 内部クラスその2();

下のは
教えてぷりーず.内部クラスその2 obj2 = new 教えてプリーズ.内部クラスその2();
じゃなかったか?
0690デフォルトの名無しさんNGNG
>>678ほか
イニシャライザを使うとそれらしいことが可能
0691デフォルトの名無しさんNGNG
コメントってコンパイル時に削除されますか?

//ヽ( ・∀・)ノ ウンコー

とか書いていても逆コンパイル時には出てこないですよね?
0692デフォルトの名無しさんNGNG
System.getProperty の

path.separator
file.separator

ってなんなんでしょう?
Winなんですが、path は";"、file は"\"になります。
"\"はもちろんフォルダの区切り文字ですけど、";"てなんですか?
0693デフォルトの名無しさんNGNG
>>691 たまに出ちゃうんだなこれが。
お陰で俺もクビになりかけたよ。
0694デフォルトの名無しさんNGNG
>>692
パスを複数指定する場合に使う区切り文字。
0695デフォルトの名無しさんNGNG
>>694
あーなるほど環境変数とかの奴ですね。了解。
0696デフォルトの名無しさんNGNG
>>692 Windowsのシステム環境変数とか見てごらん。
たいていの場合、復数のパスが";"で区切られて入ってるよ。
0697696NGNG
出遅れた
0698デフォルトの名無しさんNGNG
>>693
まじすかぁ・・やっちまったかなぁ。私は首にはならないと思うけどw
0699デフォルトの名無しさんNGNG
>>659
Jakarta CommonsのStringUtilとか
Jakarta OROとかも調べてみるとええぞ。
0700デフォルトの名無しさんNGNG
>>698 無職にクビはないわな(プ
0701デフォルトの名無しさんNGNG
>>698,700
なんかそうやってさらっと流すと勘違いするやつが出てきそうだ
0702デフォルトの名無しさんNGNG
>>692
> System.getProperty の
こいつはFileクラスにもある。
> ってなんなんでしょう?
> Winなんですが、path は";"、file は"\"になります。
Unixでは ":" と "/" になる。
0703デフォルトの名無しさんNGNG
>クソ分厚いJava言語仕様開くのが面倒臭いので、
>教えて、Javaの偉い人!

君はプログラマ辞めたほうがよい
0704デフォルトの名無しさんNGNG
>>682にマジレス
>>351>>359>>360
(勝手に引用スマソ)
0705デフォルトの名無しさんNGNG
>>703
本を読みたくなかったら検索くらいしろ
0706デフォルトの名無しさんNGNG
URLクラスには Fileクラスの file.exists() 相当のメソッドがないのは何故ですか?
0707デフォルトの名無しさんNGNG
>>687

匿名じゃないインナー使う分には自由だし、インナーじゃないクラス使うのも
自由ですが…
というか、何か頭悪いかほりがそこはかとなく…
>>706
URLの向こうにあるのがファイルだとは限らんし。
ldap://hogehoge とか rmi://hogehoge とか iiop://hogehogeとか。

JavaのURLクラスがこれらからInputStreamを引いてこれるかどうかは別問
題ですが。
0708デフォルトの名無しさんNGNG
>>706
存在するか確認するだけで 1 回分の無駄な通信さすなという
髭オヤジの配慮。つーか、HEAD で 200 返ったところでエンティティ
が存在してる保障ないし。
0709デフォルトの名無しさんNGNG
>>699
どうせ内部にダサいロジックを隠蔽しているだけだと思われるが。
0710デフォルトの名無しさんNGNG
>>707
>>708
さんくす。納得しますた。
0711デフォルトの名無しさんNGNG
ファイル名に「$」が付いているとアップロードできないんですが、どうしたらいいのでしょうか?
0712デフォルトの名無しさんNGNG
>>711
前に一度見たよーな質問だなーと思って過去ログ漁ってみた。
というわけで、
http://pc3.2ch.net/tech/kako/1036/10361/1036142056.html
の >>71-78 を参照するよろし。
0713デフォルトの名無しさんNGNG
javaとhtmlの違いってなんですか?
よくわかりません。お願いします。
0714デフォルトの名無しさんNGNG
age
0715デフォルトの名無しさんNGNG
>>713
よくわかりません。お願いします。
0716デフォルトの名無しさんNGNG
>>713
板違い

http://pc2.2ch.net/hp/
0717デフォルトの名無しさんNGNG
>>716
え?ここじゃなかったんですか?
いいでしょう。ここは貴殿の顔に免じて引きましょう!!
0718デフォルトの名無しさんNGNG
>>715
いやこっちが質問しているのですが・・・。
0719デフォルトの名無しさんNGNG
Javaはえっちじゃない
htmlはえっちだ
0720デフォルトの名無しさんNGNG
>>719
これ以上ないわかりやすいお答えありがとうございます!!
そうか!!そういう違いがあったんですね!!感謝です!!
0721デフォルトの名無しさんNGNG
>>720





















0722661NGNG
>>721

なにさw
0723デフォルトの名無しさんNGNG
>>712
ありがとうございました
0724デフォルトの名無しさんNGNG
JAVAで、定数の定義の仕方を知りたいです。

定義の仕方のほかに、
クラスの外部で見えるような宣言の仕方、
クラス内部で見える定数、
メソッド内で見える定数、
のそれぞれの定義の仕方も知りたいです。

よろしくお願いします。
0725デフォルトの名無しさんNGNG
>>724
定数:final
クラス外部で:public
クラス内部で:private
メソッド内で:メソッド内で定義しろや
0726デフォルトの名無しさんNGNG
final
static final
pruvate final
final
0727デフォルトの名無しさんNGNG
>>726
( ~ω~)σpruvate
0728724NGNG
>>725
>>726
どもです。
0729デフォルトの名無しさんNGNG
こんな書き込みで大変申し訳ないのですが、
Javaから他のアプリケーションを起動するクラスと主なメソッドを教えていただけないでしょうか?
当方パソコンの調子が悪く、ネットに接続できなくなっているんで、調べることができません。
ちなみに今は携帯からの書き込みです。

どうかお願いします。
0730誰か教えてくださいNGNG
preverifyってどうやってやるんですか?

Error preverifying class Test
java/lang/NoClassDefFoundError: java/lang/Object

って出てきてできないんですけど。
0731デフォルトの名無しさんNGNG
>>729
java.lang.Process java.lang.Runtime#exec()
0732デフォルトの名無しさんNGNG
>>729
Runtime#exec()
0733デフォルトの名無しさんNGNG
>>730
pre-verifying class Test だからバイトコードの正当性検査の前にエラーが出てるって事かな?
java.lang.Object すらダメってのは… 原因わからないなら、
1) 掲示板とかでなく、物理的に話せる人間に SOS
2) JREの再インストール
3) OSの再インストール
とかしてみれば?
0734デフォルトの名無しさんNGNG
Javaをはじめたばかりで、脳みそがかゆいんですが、
Javaで扱う配列は、lengthメソッドを持っているってことは、クラスなんですか?
配列については、API ドキュメントのどこに書かれているのでしょうか?
0735729NGNG
>>731-732
メソッドももお願いします。
0736デフォルトの名無しさんNGNG
>>734
APIドキュメントではなく言語仕様に書かれている。
ttp://java.sun.com/docs/books/jls/second_edition/html/arrays.doc.html#64347
0737734NGNG
>>736
ありがとうございます。
何だか不思議な感じですが、こういうものと覚えることにします。
0738デフォルトの名無しさんNGNG
J-PHONEのアプリ作りたいんだけどpreverifyできないと無理ですか?
0739デフォルトの名無しさんNGNG
>>735
お礼も無しで、そのアマチャンな態度はいかがなものかと。
0740デフォルトの名無しさんNGNG
J-PHONEアプリの作り方がよくわかるホムペ教えてください。


0741デフォルトの名無しさんNGNG
>>740
J-PHONEアプリの作り方がよくわかるホムペ調べてください。
0742729NGNG
>>739
その通りです。

>>731-732
答えてくださってありがとうございます。
0743デフォルトの名無しさんNGNG
>>735
java.lang.RuntimeがクラスでexecがRuntimeのメソッドだろーが。
まさかそれ以外にも使用しそうなものを全部挙げろってか?
0744729NGNG
>>743
大体の使い方も教えていただけないでしょうか?
0745デフォルトの名無しさんNGNG
>>744
1. java.lang.Runtime#exec()を実行。
2. 返ってきたjava.langProcessから標準出力と標準エラー出力のストリームを貰う
3. バッファが詰まらないように、スレッド作るなりしてストリームから吸い出しつつ
  終了を待つ。
4. 終了したらProcess#exitValue()で終了コード取得、あとはお好きに。

標準出力/エラー出力どちらかだけって決まってるならスレッド作る必要ないと思うけど、
両方吐き出す可能性があるなら、スレッド作って同時に処理してやらないと
片方のバッファがいっぱいになった時点で処理が止まってしまう恐れがある。
0746729NGNG
>>745
ありがとうございます。
0747デフォルトの名無しさんNGNG
(^o^)/...
http://pleasant.e-city.tv/
0748デフォルトの名無しさんNGNG
>>730
ちゃんとクラスパスを設定してる?または -classpath つけて preverify やってる?
0749デフォルトの名無しさんNGNG
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
in = new FileInputStream(new File(dialog.getDirectory(), dialog.getFile()));

と、

String path, filename;
File file;
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
path = dialog.getDirectory();
filename = dialog.getFile();
file = new File(path, filename);
in = new FileInputStream(file);

では、どっちがいいの?
動くかどうかは別として。
0750デフォルトの名無しさんNGNG
>>749
どっちでも良いよ。
0751デフォルトの名無しさんNGNG
上
0752デフォルトの名無しさんNGNG
俺も上だな。
どっちがいいかは知らんけど
0753749NGNG
>>750-752
レスthx。
漏れ的にも上の方がいいんだけど、下の方が明示的で分かりやすいと思うんだよなぁ…。

早さとかは変わらないんか?
0754デフォルトの名無しさんNGNG
>>749
俺的には、
String path, filename;
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
path = dialog.getDirectory();
filename = dialog.getFile();
in = new FileInputStream(new File(path, filename);

かな。理由は、分りやすいから。
path以下にhogehoge(例えばCVSディレクトリ)があったら何するとか、
filenameだけを取りだして、ウインドウのタイトルにするとか、
filename + ".bak" をバックアップディレクトリに保存するとか、まぁ後から
いろいろといじるときに便利。
Fileのインスタンスは(pathとfilenameがあれば十分理解できるので)いちいち
変数に入れなくてもいいと思う。
0755デフォルトの名無しさんNGNG
java.security.MessageDigest
の使い方、教えてくれませんか?

System.out.println(new String(MessageDigest.getInstance("MD5").digest("ハッシュテスト".getBytes())));

試しにこういう風に使ってみたのですが、文字化けしたおかしな値しか出てきません
0756デフォルトの名無しさんNGNG
>>753
殆ど差はない。
その程度の差が気になるなら FileDialog とか使うのやめれ。
0757749NGNG
>>754
Fileクラスのインスタンスも書いたのは例えであって、必ずそうするわけではないよ。
>>754が書いたやつが一番分かりやすいと思うし。
ただ、速度としてどっちの方が早いかなぁと思って。

もしかして、漏れ、的外れなこと言ってるかな…。
0758749NGNG
>>756
あぅ…。例えが悪かったな…。

スマソ。
0759749NGNG
>>756
あぅ…。
例えが悪かったな…。

スマソ。
0760749NGNG
>>756
あぅ…。
例えが悪かったな…。

スマソ。
0761749NGNG
スレ汚しちまった…。
0762デフォルトの名無しさんNGNG
どんまい
0763デフォルトの名無しさんNGNG
最近Robocodeの本を買い、やってみようかと思うのですが、
ここの人たちはRobocodoってやってますか?
昔はスレが立ってましたが・・・
あと学習教材としていい物だとどっかのサイトでいってましたがどうですか?
私は現在独習Javaを半分ほど終えたところです。
0764デフォルトの名無しさんNGNG
>>755
byte[] hash = MessageDigest.getInstance("MD5").digest("ハッシュテスト".getBytes());
for(int i = 0 ; i < hash.length ; i++){
 System.out.print(((hash[i] & 0xFF) < 0x10 ? "0" : "") + Integer.toHexString(hash[i] & 0xFF).toUpperCase());
}
System.out.println();
0765デフォルトの名無しさんNGNG
>>764
ぬおぉ!!!
ありがとうございます!!!
0766デフォルトの名無しさんNGNG
>>749
おれも上。
変数を用意しないことで、ほんとにその場だけ必要なインスタンスだってわかるし。
妄想だと上のほうが速そうだし。
あと、classファイルもちっちゃくて済むからKVMなんかのリソース乏しいとこでも助かるから上。
0767デフォルトの名無しさんNGNG
下のほうが融通が利きそうだな
0768デフォルトの名無しさんNGNG
>>767
そりゃそうだろw
その融通を冗長だと感じるかどうかじゃない?
下の例で 「で、この変数はこのあとどこで使われてんだろ?」とか思いながらソース読んでって
結局、一回しか使われてなかったらちょっと萎えるな。
0769デフォルトの名無しさんNGNG
たしかにそうだなw
その時の状況にあわせて使い分ければいいってことね

ちなみに俺は 上 を選ぶ
0770デフォルトの名無しさんNGNG
Eclipse2.1だと黄色のアンダーバーが出るのが嫌だ
だから上
0771デフォルトの名無しさんNGNG
>>749
FileDialog dialog = new FileDialog(new Frame());
FileInputStream in = new FileInputStream(new File(dialog.getDirectory(), dialog.getFile()));
ふつーこう
0772デフォルトの名無しさんNGNG
>>771が一番しっくり来るな。
まあ、実際は規約にもよるんだけど
0773デフォルトの名無しさんNGNG
初期化がされない状態のローカル変数は、コンパイル通ったっけ?
ローカル変数なんか、メソッド作った奴の好きに書け、と思うが。

古いCコンパイラなんかで頭悪かった頃のルールを、惰性で引きずる
必要はないと思うがなあ。
0774749NGNG
>ふつーこう
それこそ妄想。
0775デフォルトの名無しさんNGNG
>>770
おまえアホだろ?
使ってない一時変数の話じゃなく逐一一時変数を使うかどうかの話だろが。
それにオプションいじれば出なくなるし。

>>749
当然ながら例外を投げる可能性がある場合は逐一一時変数に入れないとまずいこともある。
0776デフォルトの名無しさんNGNG
最適化されて>>771になるんじゃね?
0777デフォルトの名無しさんNGNG
iアプリなんかの実行ファイルサイズが10kBとか制限厳しいとこだと
変数は極力つかわないようにしないと容量オーバーしてしまったり。
まあ、あれはJavaであってJavaでない、と言われたらそれまでだけど。。
0778デフォルトの名無しさんNGNG
>>775
>当然ながら例外を投げる可能性がある場合は逐一一時変数に入れないとまずいこともある。
なにこれ?
行番号で例外判断でもするんですか?
0779デフォルトの名無しさんNGNG
JavaにMFCのCDaoDatabaseクラスみたいなやつありますか?
OracleとかAccessみたいな外部DBMSを用意しないで
アプリ自体に組み込んじゃいんです。
データの源泉はテキストファイルで最初に取り込んだときに
DBができてなかったら作るみたいな感じのことがやりたいんですけど。
0780デフォルトの名無しさんNGNG
テキストファイルからSQLみたいな簡単な奴使って
データ取り出せればそれでもいいです。
0781デフォルトの名無しさんNGNG
>>711
に一票。
0782デフォルトの名無しさんNGNG
>>779
XMLファイルでどうかな?
0783749NGNG
漏れ的には変数宣言と、インスタンス生成は別の方がいいような気がする。

スレ違いっぽくなってきたな。
0784763NGNG
無視された・・・どうやら質問してはいけない内容だったらしい・・・
0785デフォルトの名無しさんNGNG
>784=763 こっちでやれ
http://pc2.2ch.net/test/read.cgi/tech/1058800656/
0786デフォルトの名無しさんNGNG
>>777
制限は256kBだろ
0787デフォルトの名無しさんNGNG
>>748
preverifyするのってただpreverify Testってやるだけじゃダメなんですか?
ちゃんとAutoexec.batってゆーやつのpathのとこにpreverify.exeがあるとこも書いといたよ。
-classpath つけて preverify やるってどうゆうことですか?
あとclasspathとpathってちがうの?

0788デフォルトの名無しさんNGNG
>>787
それって、ケータイアプリ?

>あとclasspathとpathってちがうの?

違う。
CLASSPATHってJava固有のもの
0789デフォルトの名無しさんNGNG
>>778
サンプルとかでありがちな、こういう場合の話じゃないの?

BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "euc-jp"));

これだと途中で例外発生したらまずいでしょ。
0790デフォルトの名無しさんNGNG
Eclipseを使ってJavaをいろいろやってみようと思うのですが、、検索してみるとEclipseって単語すら載ってないサイトしか出てきません
良いサイトないですかねぇ…(JAVA講座系の…
0791デフォルトの名無しさんNGNG
>>789
ん?それはなに?
もしかして、close()出来ないとかそういうことなのですか?
さっぱり意味わかんないです。
マジで理由教えてください。

私が見たいままでの解説書はどれも、
///////////////////////////////////////////////////////////////////////////////////
このサンプルでは分けて書きましたが意味のないことです。通常は次のようにまとめてしまいます。
InputStreamReader in
= new InputStreamReader( new FileInputStream( new File(args[0])), "EUC_JP");
OutputStreamWriter out
= new OutputStreamWriter(new FileOutputStream(new File(args[1])), "ISO2022JP");
///////////////////////////////////////////////////////////////////////////////////
というような書きかたしています。「意味のないことです」と、ハッキリ言っています!
今までもコレで納得していました
いったいどういうことなんでしょうか?

0792デフォルトの名無しさんNGNG
>>789
厨な質問だったらスマソ。
そこで発生する例外ってUnsupportedEncodingException (指定された文字エンコーディングがサポートされていない場合)
だけだよね?
それをcatchすればいいだけで、逐一変数にいれとかなきゃまずいともいいきれないような。。
言ってること検討違い?
0793デフォルトの名無しさんNGNG
>>790
「Eclipse Java」とかで検索した結果のページに「Eclipse」が含まれてないの?
意味わかんね。

つーか、Eclipseの使い方とJavaの勉強は別々にしろよ。<Java講座系

>>791
new InputStreamReader()で例外が発生したらFileInputStreamをcloseできない。

0794792NGNG
>>793で納得。厨房でスマソした。
0795デフォルトの名無しさんNGNG
すみません 質問です。

JavaのGUIアプリケーションでキー入力でいろんなアプリを起動させる
アプリケーションを作りたいなって思ってるんですがどうも
意図したとおりに作成できません・・・。

現在フレームを作成し、キーイベント取得のロジックを組み込み
普通にフレームがアクティブになっている状態ではキー取得ができるのですが、
なにかのウィンドウの裏に隠れたとき(ノンアクティブになったとき)
キーイベントを取得することができません。

ノンアクティブなフレームからでもでもキーイベントを
取得することはできるのでしょうか?
方法をご存知の方アドバイスや情報よろしくお願いします。
0796デフォルトの名無しさんNGNG
>>795

そういうの難しいよね・・・
例えばWindowsボタンは他のアプリがアクティブでも
認識してスタートメニューが開く
こういう具合にやりたいと思うんだけど

たとえば、そのJavaのランチャーアプリと
いまアクティブになってるアプリのファンクションキーが同じだった場合は
当然、アクティブな方が優先される・・・
そうならないために
OSに、このキーが押されたときは、このJavaランチャーアプリからっていうのを
登録せんといかん。
これがJavaで可能なのかな?と思うと疑問
JNIで試行錯誤するしかないと思う
0797デフォルトの名無しさんNGNG
以下のソースでは再宣言していると教えていただいたのですが、
いったいどのようないみなのでしょうか?
import com.nttdocomo.ui.*;

public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
public void start(){
Panel1 f_panel = new Panel1(this); //ここが
Panel2 s_panel = new Panel2(this); //   再宣言しているとのことです
Display.setCurrent(f_panel);
}
}
0798デフォルトの名無しさんNGNG
>>795
test001のインスタンス変数s_panelとは別に、
start()メソッドのローカル変数s_Panelを宣言している、という意味です。
thisをつけて明示しない限り、同名の変数があればインスタンス変数より
ローカル変数が優先されます。

わかっていない人がやるとバグの原因になります。
0799デフォルトの名無しさんNGNG
>>797
public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
public void start(){
f_panel = new Panel1(this); //これが
s_panel = new Panel2(this); //   正しい
Display.setCurrent(f_panel);
}
}
0800デフォルトの名無しさんNGNG
>>798 799
ありがとうございます。
public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
と最初に宣言しているにもかかわらず、
Panel1 f_panel = new Panel1(this); //ここが
Panel2 s_panel = new Panel2(this); //   再宣言しているとのことです
で宣言しているから、コンパイラにしかられるのですね。
初めに宣言したのがインスタンス変数で、あとに宣言したのがローカル変数
ということでしょうか?
0801デフォルトの名無しさんNGNG
preverify -classpath ..... Test
.....のところには何を書けばいいんですか?
0802デフォルトの名無しさんNGNG
>>801

えっへっへっへぇ〜〜
俺は知っている俺は知っている
えっへっへっへぇ〜〜
お前は巨人ファンか?ん?ん?
なら答えを教えてやろう。

そのかわり、以下の質問に答えてくれわかったな

1.最近オナニーしたのは何日前?もしくは何時間前?
2.そのときの、おかずは?
3.好きなアイドルは?
4.悪いとは思うが3のアイドルで抜いたことがある?
5.元木が結構好きだ?
6.河原(巨)なら打てる気がする?
7.モー娘。は終わってる?


絶対答えろよ↑

preverify -classpath <クラスファイルのあるフォルダのパス> -d <検証後のクラスファイルの出力フォルダ> <検証を行うクラスファイルの置いてあるフォルダ>

0803デフォルトの名無しさんNGNG
<クラスファイルのあるフォルダのパス>と<検証を行うクラスファイルの置いてあるフォルダ>はどうちがうの?
検証をするクラスファイルじゃないの?
あと.classってつけなくていいんですよね?
0804デフォルトの名無しさんNGNG
>>803
きさま〜答えろっていっただろーがぁ〜
まあいい次は答えと一緒に書けよ

-classpath <クラスファイルのあるフォルダのパス>
って言うのは、クラスパスにするクラスファイル群を置いてあるフォルダってこと
ちなみに、普通のJavaアプリの場合
-classpathはJarをそのまま指定可能なのだが
preverifyコマンドではJarを指定することは不可能
なので、もしJarファイルなら展開してそのフォルダ指定でOK

<検証を行うクラスファイルの置いてあるフォルダ>って言うのは
自分が作ったクラスファイルの置いてある場所ってことだ
ここで注意して欲しいのは、classファイルを指定するのではない。
classファイルの入っているフォルダを指定するってことだ!

いいか、さっきの質問答えれよ!次はないぞ!
0805デフォルトの名無しさんNGNG
1.昨日
2.小倉優子と仲根かすみ
0806デフォルトの名無しさんNGNG
じゃ漏れが続きをば。。

3.伊藤美咲
4.うん!
5.斎藤雅が投げてる時に隠し球やったがバレバレで、
 審判に早くボール返してこいって注意された姿はワラタな・・・
6.転がせる気がする
0807デフォルトの名無しさんNGNG
クラスパスにするクラスファイル群ってなんですかぁ?
1.昨日
0808デフォルトの名無しさんNGNG
>>807

>クラスパスにするクラスファイル群ってなんですかぁ?

そうではない、
クラスパスにする、『クラスファイル群を置いてあるフォルダ』だ!
0809悩NGNG
質問す。
引数を半角もしくは全角に変換するにはどうしたらいいですか?
0810デフォルトの名無しさんNGNG
クラスパスにする、『クラスファイル群を置いてあるフォルダ』って?
0811デフォルトの名無しさんNGNG
>>809
説明不足ゆえ氏んでくれよ
0812デフォルトの名無しさんNGNG
>>809
Unicode の文字表見てマッピングしろ
>>810
読んだまま
0813802NGNG

>クラスパスにする、『クラスファイル群を置いてあるフォルダ』って?

俺の説明悪いのか?それとも煽ってるのか?

そもそも>>810は元の質問者なのか?
0814810NGNG
もっとわかりやすくこたえなよ
0815デフォルトの名無しさんNGNG
要するに-classpathのあとになんてかけばいいんですか?いろいろ試してるんだけどぜんぜんエラ−ばっか。
0816デフォルトの名無しさんNGNG
みんなぐちょぐちょだよ♪
小学生盗撮画像あり!中学生もあるよ♪
http://e-rebirth.com/af/in.cgi?id=30
0817直リンNGNG
http://homepage.mac.com/maki170001/
0818810NGNG
早く答えろゴルァ
0819デフォルトの名無しさんNGNG
「ケツ毛ボウボウ」って書くといいよ。
俺はこれでどんなJAVAでもガッツシ
0820810NGNG
>「ケツ毛ボウボウ」
できましたーーーーーーーーーーーーーーーーーーーーーーーーーーーー


0821802NGNG
>>814

おいこら誰にいってんだよオイ!

おまえ、何様だ?あ?

0822810NGNG
うっせしね!!!!!!!!!!!1

あはははははははははははははははははははははははははははははははははははははははははは
0823デフォルトの名無しさんNGNG
>>820
だろ?俺もこれで10キロ痩せた
0824デフォルトの名無しさんNGNG
>>821
禿げしくアホ。顔真っ赤だぞ? プ
0825デフォルトの名無しさんNGNG
>>821
お前スゲーイイ奴だと思ったよ。
それだけなんだけどさ・・・
0826802NGNG

なんだよコレ・・・

結局7番の質問誰も答えてくれね―し・・・

ムキィィィィィィィィィイ!
0827デフォルトの名無しさんNGNG
終わっている物に対していちいち確認するなんて無駄な行為ですから
0828802NGNG
>>815

なんて書けばいいって?
だから、環境依存だから俺が抽象的に書いてんじゃんか
基本的にお前何がやりたいのかわかんね―んだけどさ
おそらく、ケータイアプリだろ?
だから、J2ME CLDCのクラスファイル入ってるフォルダと
あとは、例えばiアプリならiアプリ用のクラスライブラリJarを展開したフォルダ
この二つを-classpathに書けばいい
(全部一緒のフォルダにまとめてもいい)
0829802NGNG
>>827
何が終わってるって?
言ってみろや!
0830825NGNG
>>826
そういう問題け??

それじゃ
7.キダムのサーカスが終わるまでは、終わってても終わらせない!

元木の隠し球にはマジでワロタよー
まあ 怒り静めてな・・・
0831デフォルトの名無しさんNGNG
>>829
モー娘。がだろ。
お前が言い出したことだろう
0832802NGNG
>>831
正直 スマンかった

問題番号書いてないので&周りも煽ってたので・・・同じような内容かと思ってました
盲目でした
0833デフォルトの名無しさんNGNG
>>832
やだ
0834デフォルトの名無しさんNGNG
>>832
オマイ、大したもんだよ。
0835802NGNG
>>833
あ?あやまってその答えが「やだ」?
意味がわからん
0836デフォルトの名無しさんNGNG
>>809
Stringオブジェクトの全ての文字を半角→全角または全角→半角に変換したいと解釈。
そんなメソッドを提供するクラスは標準では存在しないので、
どこかから探してくるか自作する。自作するならUnicode調べてみ。
0837802NGNG
>>809
>>836
おい、俺さっきからこれやってるんだけど
アルファベットと違って
半角と全角って対応するように並んでないんだよな・・・
なので、一個一個マップさせるしかないな
しかも、例えば半角の濁音は、「カタカナ+濁点」と2文字みたい・・・
全角は濁音の文字も1文字で表すのだが・・・
0838デフォルトの名無しさんNGNG
>>835
アッソ
0839デフォルトの名無しさんNGNG
>>837
君は頭が悪いのでまともな文章が書けないらしいね。
俺が補足してやろう。

> アルファベットと違って
> 半角と全角って対応するように並んでないんだよな・・・
↓
カタカナって、英数字と違って、半角と全角が対応するように並んでないんだよな。
0840デフォルトの名無しさんNGNG
ttp://yamaguch.sytes.net/~tora/java/files/JPConverter.java.txt

ただしこのurlのプログラムには若干バグがあるので手直しして使え。
どこがおかしいのかわからないなら氏ね
0841デフォルトの名無しさんNGNG
>>809
>しかも、例えば半角の濁音は、「カタカナ+濁点」と2文字みたい・・・
やっぱコレが一番のネックっぽいな。

注1)>>834は煽りじゃなくて、謝るオマイ見て大したもんだ、と思ったのだよー
注2)漏れは元木より元木の奥さんが好きなんだ!
0842デフォルトの名無しさんNGNG
ん?半角⇔全角変換って
英数字だけなら、前スレに書いてあったぞ
0843802NGNG
>>840

一瞬見たときコメントが中国語に見えた
なんか、漢字がやたら多いコメント
0844デフォルトの名無しさんNGNG
>>837
>全角は濁音の文字も1文字で表すのだが・・・

UNICODE の規格では確か
全角においてもカナ+濁点の2文字で表してよいことになっている。
例えば「ば」と「は」+濁点は UNICODE 的には等しいと判定されなければならないとされている。
そして実際に濁音の文字をカナ+濁点で表す処理系は存在する。
0845シナプスNGNG
初心者的質問です。

Javaで
"981234、、、、、"
数十文字の数字で出来た文字字列(整数)を
一文字づつ区切って掛け算をしていきたいのですが
9*8*1*2*3*4、、、
て感じに。
BigIntegerの使い方が良く分からず。
特に区切った数字をBigIntegerに入れていく方法が良く分からず。

全体的な感じを掴むために
基本を抑えたサンプルを作っていただけたら嬉しいのですが。
0846デフォルトの名無しさんNGNG
>>802はJava歴一週間くらいの割にはがんばっているな
0847デフォルトの名無しさんNGNG
>>837
http://oss.software.ibm.com/icu/userguide/Transform.html
とか有名どころ紹介したほうがいいとおもうけど。
0848802NGNG
>>846
え?それは無いベ?
怒る気にもなれん
0849デフォルトの名無しさんNGNG
>>845
BigInteger…?
なんで?
0850802NGNG
おいほら>>846そこまで言うのなら

おまえ、>>845の問題やって見ろ
0851847NGNG
ちなみにデモ。
http://oss.software.ibm.com/cgi-bin/icu/tr
Source1:Fullwidth
Target1:Halfwidth
にして、Inputにテキスト入力、Transformすると変換される。
0852デフォルトの名無しさんNGNG
数十文字だろ?

桁あふれが・・・
0853デフォルトの名無しさんNGNG
>>845
String val ="123456789";
BigInteger result = new BigInteger("1");
for(int i = 0 ; i < val.length;i++)
 result = result.multiply(new BigInteger(String.valueOf(val.charAt(i))));

System.out.println(result);

簡単じゃん。

}
0854デフォルトの名無しさんNGNG
>>849
オーバーフローって知ってます?
0855デフォルトの名無しさんNGNG
>>853見て思ったんだけど
一回一回val.charAt(i) ってするのと
たとえばchar[] crArr = val.toCharArray(); などとして配列に入れてから回すのでは
後者の方が早いの?
0856デフォルトの名無しさんNGNG
>>853
おまえ、そのくらい>>802にやらせないと力がつかないだろ
0857デフォルトの名無しさんNGNG
>>855
Stringは内部にchar[]持ってるから、差があるとすれば
#charAt()メソッドコールの「メソッドコール自身のコスト」と、
toCharArray()で内部char[]の「ディープコピー生成のコスト」の
比較になるね。
ということで、長さに依存じゃないかね。

さらにいえば、そんなことを気にするようならJavaでプログラム書く
べきではないかもね。アセでもやっててください。
0858802 ◆o6.i7pCetw NGNG
>>856
ああ、「カナ」の問題考え中だったよ
でも、正直>>853ほど、サクッっとできたとは思えんが・・・

ちなみに、修正⇒for(int i = 0 ; i < val.length();i++)だよな?
0859802 ◆o6.i7pCetw NGNG
>>855、>>857
そういう話好きだな
0860デフォルトの名無しさんNGNG
>>857
> さらにいえば、そんなことを気にするようならJavaでプログラム書く
> べきではないかもね。アセでもやっててください。

たとえどんな言語であれ、そういう部分を気にする気持ちは大切。
つーかむしろ、ただでさえ遅い遅いと言われてるJavaだからこそ
少しでも速くしたいという気持ちがあるんだが
0861デフォルトの名無しさんNGNG
>>859
俺はお前が嫌い
0862デフォルトの名無しさんNGNG
俺はモー娘。が嫌い
0863802 ◆o6.i7pCetw NGNG
>>860

俺なんていつだったか忘れたがこのスレで

List list=new ArrayList();

�@for(int i=0;i<list.size();i++)

�Aint size=list.size();
for(int i=0;i<size;i++)

↑どっちが早いか質問したら、
「そんなトコに気を使うぐらいなら配列使え」とか言われた
0864デフォルトの名無しさんNGNG
>>855 そっちのコストより、BigInteger(String)を使うほうがきになるなあ。
BigIntegerの内部表現ってint[]だったはずだから、charにしたんなら'0'引いて
数値をBigIntegerのコンストラクタに渡すほうが速い気がする。
0865802 ◆o6.i7pCetw NGNG
>>861

ネタだと思って見逃したるわ。2回目は無いぞ
0866デフォルトの名無しさんNGNG
大規模なデータベースにかかわる時なんかは、かなり大事なモンよ
>少しでも早くしようという気持ち
0867デフォルトの名無しさんNGNG
>>855
JIT コンパイルなしだと下のほうが多少早いがありだと誤差程度。

しかし String.valueOf(val.charAt(i)) や String.valueOf(crArr[i]) よりも
val.substring(i, i+1) の方が JIT コンパイルありでも早い。
0868デフォルトの名無しさんNGNG
>>867 下のほうは中身System.arraycopyだからネイティブメソッドで
JIT効かないんだよね。
0869デフォルトの名無しさんNGNG
有名な例だけど、

お手軽に
String = "a"+"b"+・・・
ってやるより

StringBufferのappend()
使った方が断然早い、とかあるよな。。。
0870802 ◆o6.i7pCetw NGNG
>>869
上で既出だが・・・

一行ですむなら
String s= "a"+"b"+・・・;
で十分だ
0871デフォルトの名無しさんNGNG
>>863は単なるアホだけど「そんなトコに気を使うぐらいなら配列使え」もアホ

>>869
それは間違い。比べるなら、

String str = "a";
str += "b";
str += "c";

などと比べるべき。
0872デフォルトの名無しさんNGNG
>>870激しく既出スマソ
0873デフォルトの名無しさんNGNG
>>870
ガイシュツ質問のみ即答(・∀・)カコイイ!!
0874デフォルトの名無しさんNGNG

>>802は単なるアホだけど

Javaって面白いよな
0875デフォルトの名無しさんNGNG
勉強用にはいい。

実務ではきついよ。融通が利かなくて
0876デフォルトの名無しさんNGNG
>>873

だって、あれ答えたの俺だもん
人の答えを拝借するような真似は
俺はしない
0877802 ◆o6.i7pCetw NGNG
802=876
0878デフォルトの名無しさんNGNG
>>876
板違いスレ違い

それ俺のガイドライン
http://that.2ch.net/test/read.cgi/gline/1051371028/
0879デフォルトの名無しさんNGNG
>>878
板違い

電波・お花畑
http://etc.2ch.net/denpa/
0880デフォルトの名無しさんNGNG
>>870 仕様上は`a Java compiler may use the StringBuffer class ...'
であってmustじゃないけどね。かなり期待してもいいとは思う。
0881デフォルトの名無しさんNGNG
>>879=802
0882880NGNG
ああ、ごめん、869の場合は引用するべきはこの文の前の、
`An implementation may choose to perform conversion and
concatenation in one step to avoid creating and then
discarding an intermediate String object. '
か。これもmayであってmustじゃない。
0883802 ◆o6.i7pCetw NGNG
>>881
おもしろいか、そんなコトやって・・・
女々しいなお前
さしずめ>>879=>>881ってことか?
0884879NGNG
>>883
死ね
0885802 ◆o6.i7pCetw NGNG
80歳になったらな
0886デフォルトの名無しさんNGNG
>>871 それも場合によってはStringBuffer.appendへの変換が期待されるから
appendとの比較だと例としては判断が難しい。
0887デフォルトの名無しさんNGNG
しっかし、ザコの巣堀スレのくせによく伸びるね。
0888デフォルトの名無しさんNGNG
俺のちんこは全然伸びないってのに
0889デフォルトの名無しさんNGNG
String str だから
str += "a" の str + "a" の時点で StringBuffer#append に変換されたとしても
それを str に代入しなおす時点で StringBuffer#toString が呼ばれるだろ?

こんなのまで最適化して全部 StringBuffer#append 一括にまとめてくれるコンパイラはあるのか?
0890795NGNG
>>796さんレスありがとうございます。

やはり難しいんですね(;_;)シクシク
JNIでつか、もちっと勉強してみます。
0891デフォルトの名無しさんNGNG
パフォーマンスのことはコンパイラが考える時代になりますた。
0892デフォルトの名無しさんNGNG
やった〜ついにpreverifyできますた〜〜〜♪
ありがとーございました〜☆
0893宇宙人NGNG
ココッテアゲアシトリノホウコダネ・・・。
プログラマコワイデス。

ワクセイニカエリマス。 




0894NAGANGNG
http://jp.appget.com/pc/dev_tips/dev_0304/index3.html
3日かかってやっとpreverifyできたので次はjarファイルの作成ですが
jar cfm hello.jar MANIFEST.MF -C output . と打ってもjarファイルができません。
なにがいけないのでせうか?
ちゃんとoutputのなかにはpreverifyしたclassファイルが入ってます。
manifestファイルもちゃんと作ったのにぃ。。。
0895デフォルトの名無しさんNGNG
いいかげんマルチやめれ
0896802 ◆o6.i7pCetw NGNG
>>894
またおまえか?
どうでもええけど、おまえさんはJavaとか言う前に
なんかいろんなことがわかってないようやな

お前はそのコマンドを、どのディレクトリで実行したのか?
0897NAGANGNG
ハァ?
バカの意見は聞いてねえよ
0898802 ◆o6.i7pCetw NGNG
>>897
おまえだれだ?
0899NAGANGNG
↓次の回答どうぞ
0900802NGNG
>>NAGAさん
たぶんJavaの入門以前からやった方がいいです
0901NAGANGNG
 900ゲットーー!
0902NAGANGNG
V6の長野です
0903NAGANGNG
本名は、ペロリーナ斉藤です
0904シナプスNGNG
853 様
ありがとうございます。
BigIntegerの使い方が大体分かりましたし問題も解決しました。
0905NAGANGNG
そのコマンドをどのディレクトリで実行したか?ってのは?
MS−DOSプロンプトでjarってやったときのカレントディレクトリってことですか?
hello.javaとかhello.classとかoutputフォルダとかmanifest.mfを入れた自分で適当に作ったフォルダです。

ディレクトリとフォルダっていっしょだよね?
あとsageってなんですか?
0906デフォルトの名無しさんNGNG

>>897の発言によって、もうお前に回答してくれる奴はいない
0907デフォルトの名無しさんNGNG
このスレも荒れたな…。
だなら夏房は嫌いなんだよ…(´Д`)
0908デフォルトの名無しさんNGNG
どんまい
0909デフォルトの名無しさんNGNG
>>857みたいなの漏れも好き。
正直コーディングしてて速度とか結構気になる。
ベンチマークとるclassとかってあんの?
0910デフォルトの名無しさんNGNG
Javaのプログラミング小問題をあつかっているHP無いでしょうか?
0911デフォルトの名無しさんNGNG
>>907 禿同。 各地で荒れてますからね…
0912↑・・・と申す夏厨NGNG
0913907NGNG
>>912
また夏房か…。
0914デフォルトの名無しさんNGNG
目的の魚と違うな。外道か。
0915NAGANGNG
ってゆーかどう考えても897とか899とか、901、902、903は明らかにいたずらでしょ。
オレはまじめに聞いてるのです。
0916デフォルトの名無しさんNGNG
いちいち夏厨x2言わなければいいだろ
無駄な主張でスレを埋めるなよ

夏厨言いたかっただけちゃうんかと(ry
0917NAGANGNG
ハァ?駄レスすんなや
0918907NGNG
>>916
また夏房か…。
0919NAGANGNG
お前も逝け
マジUzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!!!!!!!!!!!!
0920907NGNG
>>917
もうひとり…。
0921911NGNG
>>912 夏厨扱いされちまったよ…鬱だ…吊ってくるよ
0922デフォルトの名無しさんNGNG
>>921 ヰ�`
0923NAGANGNG
つかえない阿呆はさっさと逝ってよし
0924デフォルトの名無しさんNGNG
>>1-1000
自作自演ご苦労様でした。
0925デフォルトの名無しさんNGNG
疲れたよ・・・。
0926NAGANGNG
import javax.swing.JFrame;
public class Main(String[] args) {
  while (true)
    new JFrame().show();
}
0927デフォルトの名無しさんNGNG
>>926
何それ。
0928デフォルトの名無しさんNGNG
黒いヒモパンが妙に色っぽい女性です。
ちょっと年はいっているようですが円熟味のあるSEXシーンを演出してくれています。
見てくださいフェラの時のほっぺのくぼみ。
カリ首にまとわりついて離れない強力スロートですよ。
他の援交美女も乱れてます。
無料ムービーでお楽しみ。
http://www.geisyagirl.com/
0929デフォルトの名無しさんNGNG
import javaXXX.animal.mammal.human.*;
public class SexTest {
public static void main(String[] args)
Man m = new Man(Human.YelloMonkey);
Woman w = new Woman(Human.YelloMonkey);
while (true)
m.insertTo(w);
}
}
0930デフォルトの名無しさんNGNG
wがない。
0931デフォルトの名無しさんNGNG
>>930
ありがとうございました
0932デフォルトの名無しさんNGNG
>>929
これでもいけるみたいです。

import javaXXX.furniture.*;
import javaXXX.animal.mammal.human.*;
public class SexTest2 {
public static void main(String[] args)
Bed bed = new Bed();
bed.add(new Man(Human.YellowMonkey));
bed.add(new Woman(Human.YellowMonkey));
}
0933デフォルトの名無しさんNGNG
bed.add(new Man(Human.YellowMonkey), new Woman(Human.YellowMonkey));
0934デフォルトの名無しさんNGNG
protected Child[] children;
をお忘れなく。
0935デフォルトの名無しさんNGNG
>>934
なくても自動的にGCが回収しますよ
0936デフォルトの名無しさんNGNG
バッチ処理についての質問です

200万件のレコードのDBを総なめして1レコードごとに処理を行い更新する
というバッチを作る上でなるべく高速に、かつ保守しやすいプログラムを書く上での
テクニックを教えてください。はじめてのJavaの仕事なんで文字列はStringbuffer
を使うぐらいしか思いつきません。
0937デフォルトの名無しさんNGNG
Javaを使わない
0938デフォルトの名無しさんNGNG
ストアドで処理する
0939デフォルトの名無しさんNGNG
>>929
SexTestクラスを使うときはManクラスのメソッドsetCondom()を使った方がいいと思われ。
0940939NGNG
間違えた(w
ManクラスのinsertTo()メソッド使う前にsetCondom()を使った方がいいと思われ。

だな。適当なこと書いてスマソ。
0941936NGNG
言語を決められる立場じゃないのでJavaでなきゃだめです

やはりストアドですか。猶予は結構あるんで両方から攻めてみたいと思います。
その上でJavaのよいテクニックがあれば教えてください
0942936NGNG
追加質問です。
バッチ実行をDBサーバと同じマシンで行う場合でもストアドのほうが早いんでしょうか?
0943デフォルトの名無しさんNGNG
藻前は根本的にわかってない感じ
0944デフォルトの名無しさんNGNG
しかしCondomインタフェースの実装はどのメーカーのも完璧じゃないらしい。。。
0945デフォルトの名無しさんNGNG
外部JARってどこにおいとくよ
0946デフォルトの名無しさんNGNG
おしっこJAR
0947デフォルトの名無しさんNGNG
>>887
すくつは知ってたけど巣掘は初めてみた夏休み
0948デフォルトの名無しさんNGNG
初心者はでしゃばらず、kissメソッドでも使っとけ。





insertToなんて10年早い。
0949デフォルトの名無しさんNGNG
>>942
ストアド→RDBMSが、自分自身にとってもっとも効率よく実行できるよう
ある意味好き勝手にコンパイルし、内部に保存しているもの。

外部からのアクセスでストアド以上に速く動くなんて、ありえんだろ。
0950デフォルトの名無しさんNGNG
>>941
プログラムによるけどまずストアドプロシージャのほうが早い。
んでJavaを利用して「なるべく高速に、かつ保守しやすい」プログラムならば次のステップがよいと思われる。

1 200万件をカーソルの先読み機能を利用して一気にメモリに読み込む。
2 カーソル閉じる。
3 更新SQLでPreparedStatementを作成する。
4 カウンタを準備する。
5 読み込んだ200万件がなくなるまでループ。
5.1 例外処理の開始。
5.2 業務処理を実行する。
5.3 PreparedStatementにパラメータをセットする。
5.4 PreparedStatement#addBatch()でバッチに追加。
5.5 カウンタを増やす。
5.6 カウンタが100件(100とか200とかは適当な数値で)を超えるまたは次の行が存在しないか?
5.6.1 PreparedStatement#executeBatch()を実行。
5.6.2 更新結果の件数が間違っているか?
5.6.2.1 ロールバック、プログラムの終了
5.6.3 コミット
5.7 例外の捕捉。
5.7.1 プログラムの終了またはバッチの続行
0951デフォルトの名無しさんNGNG
sdkインストールするときに下記のエラーがどうしても出てしまいます,対処方キボンヌ
環境はRehHatLinux9です

$ su
# rpm -ivh j2sdk-1_4_1_04-fcs-linux-i586.rpm
Preparing... エラー: rpmdb: damaged header #1320 retrieved --
skipping.エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
0952デフォルトの名無しさんNGNG
test
0953デフォルトの名無しさんNGNG
次スレ立てときました
http://game2.2ch.net/test/read.cgi/game/1060079075/
0954デフォルトの名無しさんNGNG
>953 おつ
0955デフォルトの名無しさんNGNG
次スレ立てときました
http://pc2.2ch.net/test/read.cgi/tech/1060918347/

残りの点プレよろしく
0956山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0957936NGNG
>>950

おおここまで明確に書いてくれるとは。ありがたいです。後は自分で調べながらやってみます
ほんとありがとうございます。
0958デフォルトの名無しさんNGNG
interfaceで定義されてるだけのメソッドがどこにも実装されてないのに何で使えるのじゃ?

0959デフォルトの名無しさんNGNG
java
0960デフォルトの名無しさんNGNG
コンピュータの中に住んでいる親切な小人さんが
interface の定義を見て、処理してくれてるんだよ。
0961デフォルトの名無しさんNGNG
>>958
新しいソースは実装して無いメソッドがあるのでコンパイルエラー食らってて、
以前作ったクラスファイルがそのまま残ってたとか。
0962デフォルトの名無しさんNGNG
>>960
こーゆオチではなかろうね。

public interface Suka {
 String toString();
}
public class Sample01 implements Suka {
 
 public static void main(String[] args) {
 Sample01 a = new Sample01();
 System.out.println(a.toString());
 }
}
0963デフォルトの名無しさんNGNG
質問なんですが、
int x=getPoint();
というのを、その場で
int x=getPoint(){return 3;};(←もちろんコンパイルエラーですが・・・)
というようなことをやりたいのですが
どうやればいいのでしょうか?
0964デフォルトの名無しさんNGNG
>>963
3を入れたいならint x=3;とすればいいでしょ・・・
0965デフォルトの名無しさんNGNG
>>963
Java は局所メソッド作れないので局所クラスで似たような事するとか。
class X{ int getPoint(){ return 3; } }
int x = new X().getPoint();
0966デフォルトの名無しさんNGNG
可読性が低下するような事はおやめなさい
0967デフォルトの名無しさんNGNG
というか何をやりたいのかわからないんだけど。
0968963NGNG
>>964
あのさ、あくまでも解りやすく書いただけだよ
そんぐらい、頭働かせろバカ

>>965
なるほど参考になります

>>966
論点が違うんだよバカ
的外れな回答してんじゃねー

>>967
理解できないのならいちいち書き込んでんじゃねー
おまえはゴチャゴチャ言いたいだけかと
0969デフォルトの名無しさんNGNG
>968
釣りはやめれ。
0970デフォルトの名無しさんNGNG
>>963
余計なおせっかいの回答者っているよな
「そんな質問以前に、普通そんな設計はしない」
みたいなこと。
初心者にんなこといったってわかるわけねーのに・・・
おまえがプログラミング上級者だといいたいだけじゃんと、いいたい。
0971上級者NGNG
初心者は黙って従えばいいんじゃん?
0972デフォルトの名無しさんNGNG

まあ、プログラマに関わらず
論点とは違うとこゴチャゴチャ言うやつって多いよな
ちょっとのことばの違いで
「いや本来●●は○○である」
みたいに言いやがる・・・特に「本来」とか「実際には」とかいう表現が好きだよな
俺なんか昔
『二の舞を踏む』って発言したら
「それは、『二の舞を●●●』っていうんだよ」
「ちなみに、『口をにごす』は本来は『●●をにごす』だよ」
「さらに、『腹が煮え繰り返る』は『●が煮え繰り返るだよ』」
とか、最初の指摘はいいのだが
余計なことプラスして言いやがって。
「お前それ言いたいだけちゃうんか?」と言う意味で、ウザ過ぎ。
このプログラム板にもいるよな、「そんなコト聞いてね―よ」的なおせっかいって
0973デフォルトの名無しさんNGNG
      _|_
                       , -´  `- 、
                    ( _................_ )
                  `ー-|-一´
                       |     チリーン
                       |
                     ノ
                     / ̄7
                     /夏 /
                     /だ /
                     /な /
0974デフォルトの名無しさんNGNG
長文Uzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
0975デフォルトの名無しさんNGNG
論点はずれて自分の言いたいことだけ言う香具師は結構いるものだ。
0976デフォルトの名無しさんNGNG
>>973
AAずれてますよプ
0977デフォルトの名無しさんNGNG
>>973
コピーするときは、右下から左上に向かって選択しましょう
0978デフォルトの名無しさんNGNG
>>ALL
>>1
論点はずれまくり(禿藁嘲笑
0979デフォルトの名無しさんNGNG
>>972>>975
禿同!
特に自分の言いたいことだけ言うってやついるよな
あっそーみたいな
0980デフォルトの名無しさんNGNG
あっそー
0981デフォルトの名無しさんNGNG
> 『二の舞を踏む』
「二の舞を舞う+二の足を踏む」かな?

> 『口をにごす』
「言葉をにごす」が正しいらしいけど、
口語だったら「口をにごす」ぐらい大目に見ても…

> 『腹が煮え繰り返る』
「腸が煮えくりかえる」の書き間違いだとすると、
それで正しいんじゃないかと思うんだけど…
0982デフォルトの名無しさんNGNG
つれた!!!!!!!!!!!!!!!!!ププププププププ
0983デフォルトの名無しさんNGNG

>>981
二の舞を演ずる
0984デフォルトの名無しさんNGNG
>>981
おまえみたいのを論点ずれまくりって言うんだよ
0985972NGNG

>>981、983
↑
ね、俺が隠して書いたおかげで
2匹もつれましたよ
でも、この人たちは正常です
「ウザイ」対象ではありません。

↓こういう奴がウザイのです
0986972NGNG
↑こういう奴がウザイのです
0987デフォルトの名無しさんNGNG
Java質問スレですよ。。。
0988デフォルトの名無しさんNGNG

俺がもっと嫌なのは
あるスレで質問すると
「ここは質問スレじゃない」
それはごもっともだと思うのだが
都合よくその切り札使われるのが嫌だ
0989デフォルトの名無しさんNGNG

俺がもっと嫌なのは
あるトイレで大便しようとすると
「�d�d(いま入ってます)」
それはごもっともだと思うのだが
都合よくその切り札使われるのが嫌だ
0990デフォルトの名無しさんNGNG


>>989が賞賛のレスを待ってこのスレに集中しています
0991デフォルトの名無しさんNGNG
論点もAAもズレてるレスが読めるスレはここですか?
0992デフォルトの名無しさんNGNG
↑
また来たよこういう奴。
いわゆる「・・ですか?」隊
そんなの今時流行んね―よ
0993デフォルトの名無しさんNGNG
また来たよこういう奴。
いわゆる「桃色美少女収集」隊
そんなの今時流行んねーよ
↓
0994デフォルトの名無しさんNGNG
桃尻ですが何か?
0995デフォルトの名無しさんNGNG
イってきまーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
0996デフォルトの名無しさんNGNG

そろそろ1000取合戦なのだが
どうせなら、最高に笑えるネタでとって欲しいものだ
「1000ゲット」等といわれたところで後世になにをもたらすのか
その辺を考えて欲しい

いいかココからは持久戦だ
しびれを切らして999取ったやつは、弱い人間だ
ましてや999、1000と連続でとった奴は道徳違反だ
0997デフォルトの名無しさんNGNG
1000ホスィ
2chで取ったことないYO!!!
0998デフォルトの名無しさんNGNG
アムロいっきまーす
0999デフォルトの名無しさんNGNG
うぽ?
1000デフォルトの名無しさんNGNG
100000000
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。