★★Java質問・相談スレッド165★★
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2013/10/20(日) 19:30:39.35JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
前スレッド
★★Java質問・相談スレッド164★★
http://toro.2ch.net/test/read.cgi/tech/1378219684/
0497デフォルトの名無しさん
2013/11/08(金) 08:30:53.30もう結論出ているから移る必要無いよ。終了。
Jar弄るなら云々とか自分のJarに含めるなら云々といっている人は外の世界をもっと
よく見るかあるいは手元のJarの中身をもっと眺めてみようね。
>>496
もう分かったから。仕事行けよ。
0498デフォルトの名無しさん
2013/11/08(金) 12:37:58.85もう分かったから、ここから出て行け
0499デフォルトの名無しさん
2013/11/08(金) 12:46:51.170500デフォルトの名無しさん
2013/11/08(金) 12:59:30.020501デフォルトの名無しさん
2013/11/08(金) 13:07:20.090502デフォルトの名無しさん
2013/11/08(金) 13:17:03.190503デフォルトの名無しさん
2013/11/08(金) 15:16:45.29Apache License 2.0にはLICENSEやNOTICEを派生成果物や成果物の中につければいいとあるんだからderby.jar内に書いてあるんならどちらも問題ないだろう
ただユーザはJarを展開して配置するわけではないからderby.jarを中に入れようが外に添付しようがJar内のLICENSEやNOTICEは読まんだろうな
0504デフォルトの名無しさん
2013/11/08(金) 16:29:58.93ホスト名とか動的にいれらんないの?
0505デフォルトの名無しさん
2013/11/08(金) 16:46:28.190506デフォルトの名無しさん
2013/11/08(金) 16:52:35.74http://logging.apache.org/
0507デフォルトの名無しさん
2013/11/08(金) 16:54:12.08http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/net/SMTPAppender.html
SMTPAppender (Apache Log4j Core 2.0-beta9 API)
http://logging.apache.org/log4j/2.x/log4j-core/apidocs/org/apache/logging/log4j/core/appender/SMTPAppender.html
0508デフォルトの名無しさん
2013/11/08(金) 17:07:42.810509デフォルトの名無しさん
2013/11/08(金) 17:09:38.27log4j.xmlで、subjectを動的に設定できないから困ってる。
環境変数とか読み込めたりする?
0510デフォルトの名無しさん
2013/11/08(金) 17:13:05.70ttp://stackoverflow.com/questions/7014792/how-can-i-dynamically-change-the-email-subject-using-log4j-smtpappender
0511デフォルトの名無しさん
2013/11/08(金) 17:25:35.090512デフォルトの名無しさん
2013/11/08(金) 17:29:07.23http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/net/SMTPAppender.html#setSubject(java.lang.String)
0513デフォルトの名無しさん
2013/11/08(金) 18:31:29.78可愛いヤツめ。
>>510
mdc。なんかいけそうな気がする。
ありがとう!試してみるよ。
0514デフォルトの名無しさん
2013/11/09(土) 17:21:41.590515デフォルトの名無しさん
2013/11/10(日) 08:57:57.22一応、Java SE7 programmer Silver の資格を持ってますが。
あんなのは、ただの意地悪問題だけのテストだったので意味が無かったのですが
Stringに関しての質問で
例えば
int num = 10;
とあったとして
Stringに変換する時
""+num か、
((Integer)num).toString() か、
String.valueOf(num)
どれが一番適切なんでしょうか。
疑問です。
0516デフォルトの名無しさん
2013/11/10(日) 09:01:51.37以上
0517デフォルトの名無しさん
2013/11/10(日) 09:03:12.580518デフォルトの名無しさん
2013/11/10(日) 09:05:29.10一応、Java SE7 programmer Silver の資格を持ってますが。
あんなのは、ただの意地悪問題だけのテストだったので意味が無かったのですが
Stringに関しての質問で
例えば
int num = 10;
とあったとして
Stringに変換する時
""+num か、
((Integer)num).toString() か、
String.valueOf(num)
どれが一番適切なんでしょうか。
疑問です。
0519デフォルトの名無しさん
2013/11/10(日) 09:13:38.92((Integer)num).toString()は
Integer.valueOf(num)#toString()で
Integer#toString()はInteger.toString(num)を呼んでいて
String.valueOf(num)は
Integer.toString(num)を呼んでいる。
なのでInteger.toString(num)でいんじゃないか。
0520デフォルトの名無しさん
2013/11/10(日) 09:29:38.11性能評価でもすりゃべつだろうけど
0521デフォルトの名無しさん
2013/11/10(日) 09:35:00.480522デフォルトの名無しさん
2013/11/10(日) 09:35:51.360523デフォルトの名無しさん
2013/11/10(日) 09:48:02.99(90問中70問正解で合格)
public class Test {
public static void main(String args) {
System.out.println("Hello");
System.out.print("Java");
System.out.println("World");
}
}
上記のコードはどのような出力をするか、選択肢の中から1つ選べ。
A. HelloJavaWorld
B. Hello
Java
World
C. Hello
JavaWorld
D. コンパイルエラー
E. 実行時エラー
0524デフォルトの名無しさん
2013/11/10(日) 09:50:12.020525デフォルトの名無しさん
2013/11/10(日) 09:52:43.570526デフォルトの名無しさん
2013/11/10(日) 10:02:23.280527デフォルトの名無しさん
2013/11/10(日) 10:04:54.550528デフォルトの名無しさん
2013/11/10(日) 10:28:37.290529デフォルトの名無しさん
2013/11/10(日) 10:51:23.920530デフォルトの名無しさん
2013/11/10(日) 11:00:09.750531デフォルトの名無しさん
2013/11/10(日) 11:13:19.84スコアに応じて、コミュニケーション能力のレベル (Proficiency Scale) がA、B、C、D、Eの5段階で評価される[16]。
また、スコア分布も公開され、受験者中のおおよその順位を知ることもできる。TOEICスコアとコミュニケーション能力レベルとの相関表は以下の通りである。
A 860点〜 Non-Nativeとして十分なコミュニケーションができる。
自己の経験の範囲内では、専門外の分野の話題に対しても十分な理解とふさわしい表現ができる。
Native Speakerの域には一歩隔たりがあるとはいえ、語彙・文法・構文のいずれをも正確に把握し、流暢に駆使する力を持っている。
B 730点〜855点
どんな状況でも適切なコミュニケーションができる素地を備えている。
通常会話は完全に理解でき、応答もはやい。
話題が特定分野にわたっても、対応できる力を持っている。業務上も大きな支障はない。正確さと流暢さに個人差があり、文法・構文上の誤りが見受けられる場合もあるが、意思疎通を妨げるほどではない。
0532518
2013/11/10(日) 11:30:44.86E
理由:mainの引数のStringが配列になってない。
マジでこんなひっかけばっかり。
ちなみにいまだ答えの解らなかった問題をひとつ
クラスを作った時に有る可能性のあるものを2つ選択せよ
A:import
B:package
C:メソッド
D:フィールド
0533デフォルトの名無しさん
2013/11/10(日) 11:33:38.500534デフォルトの名無しさん
2013/11/10(日) 11:33:51.87まさに検定だな。
運転や医療行為や海賊行為のように禁止されていることを特別に免除される、免許ではないな。
ソフトウェア開発も、資格を持っている人でないと販売してはならない、という時代がいつか来るかもな。
0535デフォルトの名無しさん
2013/11/10(日) 11:34:47.14{
int a=1;
int getA(){return a};
}
と書いた後にclass Aと書けばメソッドとフィールドも「作った時にある」可能性はあるよな。
0536デフォルトの名無しさん
2013/11/10(日) 11:37:56.600537デフォルトの名無しさん
2013/11/10(日) 11:43:11.07クラスを定義する時点でObjectクラスのフィールドとメソッドを継承してるのだから、C、D。
クラスを定義する時点でパッケージとimport元のクラスは存在してるだろうから、A、B。
英語だともっと適切な表現なのかな。
0538デフォルトの名無しさん
2013/11/10(日) 11:45:04.39理解力試験とかライセンス法制度とかの具体例は、システムの生成というものを考える上で具体的でおもしろい話だとは思いますけど、ついてこれる人は少ないでしょうね。
0540デフォルトの名無しさん
2013/11/10(日) 12:37:10.66あくまで販売する場合なので、開発チームに安全衛生責任者を置くような感じ。
開発現場で事故が起きるわけじゃないし必要ないか。しかし、販売する商品の品質管理はひどいものだ。
0541デフォルトの名無しさん
2013/11/10(日) 13:02:55.93さようなら
0542デフォルトの名無しさん
2013/11/10(日) 13:28:55.530543デフォルトの名無しさん
2013/11/10(日) 13:30:13.76それを使ったからけが人が出るとか言うのなら基準も作れるだろうが
実際の害は↓
この商品(システム)を運用すると御社に最大○○名程度の余剰人員が発生しますが
くれぐれも解雇なさいませんようお願い申し上げます
0544デフォルトの名無しさん
2013/11/10(日) 15:32:48.13カード番号とか個人情報流出の被害はどうかな。
対象となるシステムが限定されるけど。個人情報保護法の適用されるシステムとか。
0545デフォルトの名無しさん
2013/11/10(日) 15:39:24.37真痛へ
0546デフォルトの名無しさん
2013/11/10(日) 16:05:51.340547デフォルトの名無しさん
2013/11/10(日) 17:32:55.17オラクルシルバーなんてほとんど意味ないのに。
0548デフォルトの名無しさん
2013/11/10(日) 18:39:56.400549デフォルトの名無しさん
2013/11/10(日) 18:43:21.73スーパーリスト
ハイパーリスト
メガトンリスト
0550デフォルトの名無しさん
2013/11/10(日) 18:44:27.220551デフォルトの名無しさん
2013/11/10(日) 21:49:23.88ArrayList
0552デフォルトの名無しさん
2013/11/10(日) 23:22:56.54Javaに高速という概念は存在しない
0553デフォルトの名無しさん
2013/11/10(日) 23:27:44.75String.concat(String...)
String.concat(CharSequence...)
があれば最強なんだけどね・・・
0554デフォルトの名無しさん
2013/11/11(月) 01:40:11.55あるクラスの内部クラスを、他のクラスで委譲することはできるのでしょうか
それとも委譲する場合は内部クラスではなくしっかりとクラスを作らないとだめなのでしょうか
よろしくお願いします
0555デフォルトの名無しさん
2013/11/11(月) 01:44:32.73できますん
0556デフォルトの名無しさん
2013/11/11(月) 01:56:07.81Objectしか継承してないような内部クラスなら渡しても使い道ないがな
0557デフォルトの名無しさん
2013/11/11(月) 02:03:30.110558デフォルトの名無しさん
2013/11/11(月) 02:07:46.70日本語でおk?
0559デフォルトの名無しさん
2013/11/11(月) 05:29:33.86StringBuilder使え
0560デフォルトの名無しさん
2013/11/11(月) 05:50:23.01例えば
Aメソッドの最初に「ここまで実行できてる」と書いてその後の処理でエラーが出る
Aメソッドの最後でBメソッドを呼び出し
Bメソッドで「Bメソッドまで実行できてる」と書く
この場合「Bメソッドまで実行できてる」というメッセージが出てるのはおかしいですか?
Aメソッドの処理でエラーが出ているはずなのにどうしてBメソッドが呼び出されてるのか分かりません
0561デフォルトの名無しさん
2013/11/11(月) 06:56:09.600562デフォルトの名無しさん
2013/11/11(月) 07:37:15.580563デフォルトの名無しさん
2013/11/11(月) 09:02:14.50それだとStringを作るためにappend,toString時にchar[]のコピーが2回必要になる。
文字列のパフォーマンスを考えるとStringに追加してもらうしかないし、解決するには+=, concatでなく、concat(...)が必須ってことが理解できるはず。
0564デフォルトの名無しさん
2013/11/11(月) 09:05:53.820565デフォルトの名無しさん
2013/11/11(月) 11:45:32.86結局おまえは何がしたいんだ
Stringは、アドレスを保持していて
concatした結果はStringのインスタンスに影響無く
戻り値で再度Stringのインスタンスで受けるしかねーだろ
0566デフォルトの名無しさん
2013/11/11(月) 12:02:31.29System.arraycopy, Arrays.copyOfのところですが、少なくともcharAtの呼び出しと評価も回避できます。
javaではパフォーマンスはあまり考えませんが、memory copy (java.awt)やStringについては少し気にしてもいいかなと思います。
0567デフォルトの名無しさん
2013/11/11(月) 12:56:58.60細かいところをいくら気にしてもその8割は労力の無駄
0568デフォルトの名無しさん
2013/11/11(月) 13:02:07.170569デフォルトの名無しさん
2013/11/11(月) 13:02:28.04んなもんAメソッドが投げるのがRuntimeExceptionか、Exception
か、Errorか、しらんが
AメソッドがExceptionを投げました。
Exceptionの詳細が表示される。
でBメソッドが実行されます。
それだけの話し。
0570デフォルトの名無しさん
2013/11/11(月) 15:10:36.87RandomAccessFile raf = new RandomAccessFile(file, "r");
raf.seek(2);
String s = raf.readLine();
System.out.println(s);
raf.close();
これで3文字目から改行まで文字列を表示しますが
3文字目から6文字目までと範囲を指定して読み込む書き方を教えてください
0571デフォルトの名無しさん
2013/11/11(月) 15:38:09.40byte 三文字目 = raf.readByte();
byte 四文字目 = raf.readByte();
byte 五文字目 = raf.readByte();
byte 六文字目 = raf.readByte();
byte[] b = { 三文字目, 四文字目, 五文字目, 六文字目 };
String s = new String(b);
System.out.println(s);
0572デフォルトの名無しさん
2013/11/11(月) 15:38:43.280573デフォルトの名無しさん
2013/11/11(月) 15:52:54.68なんか面倒くさいんですね
ありがとうございます
0574デフォルトの名無しさん
2013/11/11(月) 15:57:57.60もうちょっと便利メソッドがあるからRandomAccessFileのリファレンス見るよろし
0575デフォルトの名無しさん
2013/11/11(月) 16:22:59.06RandomAccessFileを使う理由は?
文字列を巻き戻したりせずに読み込むだけならReaderで十分だよ。
char[] buf = new char[4];
BufferedReader in = new BufferedReader(new FileReader("sample.txt"));
in.skip(2);
in.read(buf, 0, 4);
in.close();
String s = new String(buf);
0576デフォルトの名無しさん
2013/11/11(月) 17:43:57.81Readerを使うのが正しいな。
0577デフォルトの名無しさん
2013/11/11(月) 18:08:20.300578デフォルトの名無しさん
2013/11/11(月) 19:39:57.97あれはObjectInputStreamの下位的な位置付けで文字列の読み込みも
シリアライズとかで必要なものに特化してるからなぁ。
0579570
2013/11/11(月) 21:02:29.64これを使うものだと思ってました
BufferdReaderも使ってみます
>>574
read(new byte[10])こんな感じの書き方を覚えました
0580デフォルトの名無しさん
2013/11/11(月) 21:13:25.31とし、例外Exceptionのprintstacktraceの内容をファイルに書き込むことは
可能ですか?
試行錯誤しましたがわかりません。
0581デフォルトの名無しさん
2013/11/11(月) 21:15:06.96ファイルを読んでいる途中でファイルの先頭方向に戻るとかいう操作が必要で無い
場合はRandomAccessFile使う必要無いよ。こっちを使うのがむしろ特殊ケース。
大抵はInputStreamでskipを使って指定バイト数を読み飛ばすので用に足りると思う。
あとキャラクターエンコーディングとかを意識してバイト数ではなく文字数単位で
読み込んだり読み飛ばしたりする場合はReaderを使わないとダメ。
0582デフォルトの名無しさん
2013/11/11(月) 21:16:25.96http://docs.oracle.com/javase/jp/7/api/java/io/PushbackReader.html
0583デフォルトの名無しさん
2013/11/11(月) 21:18:23.92http://otn.oracle.co.jp/technology/global/jp/sdn/java/private/techtips/2001/tt0518.html
0584デフォルトの名無しさん
2013/11/11(月) 21:25:25.060585デフォルトの名無しさん
2013/11/11(月) 21:28:26.87http://muranoya.net/wordpress/?p=17
0586デフォルトの名無しさん
2013/11/11(月) 21:45:24.23ロガーを使うのが王道じゃないかな。
0587デフォルトの名無しさん
2013/11/11(月) 21:50:30.85全てのプロジェクトに対して、ビルドパスを通すことは賢いやり方とは思えないのですが
0588デフォルトの名無しさん
2013/11/11(月) 21:59:27.14そのような疑問を抱いた時こそMavenやGradleといった依存性管理ツールを学ぶ好機。
0589587
2013/11/11(月) 22:10:17.54あぁ、そうなっちゃうんですね
mavenすごく面倒なので、使わないようにて思ってたんですが
ありがとうございます
0590デフォルトの名無しさん
2013/11/11(月) 22:39:17.36すごく楽じゃん。規約に沿ってきれいにまとまる範囲までは。
今となって特殊な事情でも無い限りこの手の依存性管理を「使わないようにする」理由が薄い。
ライブラリやフレームワーク等も依存性管理ツールの利用を前提としてプロダクトを細かく
モジュールに分割して配布する(そしてfat jarが敬遠される)ようになったから、過去のjarを
手作業でコピって上書きしたら以降運任せではとうてい持続しない。
もう新規プロジェクトは規模にかかわらず依存性管理ツールの使用がデフォで良いと思う。
規模にかかわらず便利だし、特殊なことをしない小さなプロジェクトほど楽が出来る。
入門に際してもjavacでHello Worldが済んだら以降はMavenなりGradleといった今時のビルド
ツール強制で良いと思うけれどもね。
0591デフォルトの名無しさん
2013/11/11(月) 22:46:24.540592デフォルトの名無しさん
2013/11/11(月) 23:08:15.48Reader#skip(2)でエラー出なかったからといって、
ほんとに2文字スキップしたのかは戻り値確認するまで解らんぞ
0593デフォルトの名無しさん
2013/11/11(月) 23:12:34.540594デフォルトの名無しさん
2013/11/11(月) 23:15:30.330595デフォルトの名無しさん
2013/11/11(月) 23:17:12.15PrintWriterでないと無理。コンストラクタにWriter渡して作ればいい。
0596デフォルトの名無しさん
2013/11/11(月) 23:21:43.55■ このスレッドは過去ログ倉庫に格納されています