★★Java質問・相談スレッド149★★
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2011/10/18(火) 19:53:20.26JavaScript, 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
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
★★Java質問・相談スレッド147★★
http://hibari.2ch.net/test/read.cgi/tech/1312958339/
次スレは>>950あたりで。
過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
0153デフォルトの名無しさん
2011/12/01(木) 01:14:08.26タイマーでどうにかなるんじゃねーの?
http://allabout.co.jp/gm/gc/80603/
0154デフォルトの名無しさん
2011/12/01(木) 01:19:03.62ありがとうございます
さっそく試します
0155デフォルトの名無しさん
2011/12/01(木) 01:25:49.42冗長なソースを読んでいただいてありがとうございます。
Classについてもっと勉強して分割できるようにがんばってみます。
>>152さん
わざわざ検索かけていただいてありがとうございます。
やはりズバリの命令はないんですね。
>変換かけてtry~catchで拾うか、正規表現でマッチを取るか、
が何を意味しているのかわかるようになるまで勉強してみます。
0156デフォルトの名無しさん
2011/12/01(木) 01:44:39.08java.lang.NumberFormatExceptionで例外をキャッチ
0157デフォルトの名無しさん
2011/12/01(木) 01:59:55.23正規表現が、そのものずばりだと思うけどね。
簡単な数字の判定程度なら、すぐ分かるからググってみるといい
0158デフォルトの名無しさん
2011/12/01(木) 15:11:08.45ひとつのクラスあたり30行くらいを目処に設計するとわかり易いと云われている。
プログラムの機能各にクラスを分けるといい。
0159デフォルトの名無しさん
2011/12/01(木) 16:36:22.931クラス, 1メソッドみたいにするのか?
0160デフォルトの名無しさん
2011/12/01(木) 17:06:08.93クラスのドキュメントコメントとクラス宣言だけで終わりだな
0161デフォルトの名無しさん
2011/12/01(木) 17:16:57.221ファイル 200行超えるのは避けたいがファイル数が増えまくるのも嫌
0162デフォルトの名無しさん
2011/12/01(木) 17:21:52.550163デフォルトの名無しさん
2011/12/01(木) 18:33:54.020164デフォルトの名無しさん
2011/12/01(木) 18:42:42.80あ、けど行数もコーディング規約によって変わるしいいか
0165デフォルトの名無しさん
2011/12/01(木) 19:36:26.47サーバー側からCドライブのフォルダの中のファイル名送ろうとしてるんだけど
クライアント側で出力すると1行目しか読み込んでない…
0166デフォルトの名無しさん
2011/12/01(木) 20:28:32.340167デフォルトの名無しさん
2011/12/01(木) 21:41:24.40まず簡単なテキストの送受信から確認したら?
0168デフォルトの名無しさん
2011/12/01(木) 21:53:16.27簡単に扱うためのソケット通信なのにw
0169デフォルトの名無しさん
2011/12/01(木) 22:09:06.770170デフォルトの名無しさん
2011/12/01(木) 23:20:04.430171デフォルトの名無しさん
2011/12/02(金) 00:28:33.370172デフォルトの名無しさん
2011/12/02(金) 00:34:35.040173デフォルトの名無しさん
2011/12/02(金) 01:22:04.560174デフォルトの名無しさん
2011/12/02(金) 01:26:06.300175デフォルトの名無しさん
2011/12/02(金) 08:22:14.91悲しいかなjavaに限った話ではない。
0176デフォルトの名無しさん
2011/12/02(金) 09:10:00.020177デフォルトの名無しさん
2011/12/02(金) 10:28:00.64現在、サイトの独自ドメインのメルアドで送信しているのですが、
高確率で迷惑メール扱いになってしまいます。(携帯へのメールなど)
なにか対策はないでしょうか?
gmailを使うとか、SendMail()に迷惑メールではないと明示するパラメータがあるとか。。。
0178デフォルトの名無しさん
2011/12/02(金) 10:31:43.710179177
2011/12/02(金) 10:46:01.79それは思います。しかし、救済策はないのかなぁとか期待してしまいました。
0180デフォルトの名無しさん
2011/12/02(金) 10:53:35.470181デフォルトの名無しさん
2011/12/02(金) 10:59:21.46Webでユーザーにお願いするしかないでしょ
PCだと、変なタイトル付けるとなりやすい感じ?
0182177
2011/12/02(金) 11:00:56.62とどのつまり、そんな悪用可能な方法は無いと言うことですか。。
0184デフォルトの名無しさん
2011/12/02(金) 13:27:36.530186デフォルトの名無しさん
2011/12/02(金) 14:33:38.66File fileを送ってるだろ?w
0187デフォルトの名無しさん
2011/12/02(金) 18:30:16.23ありがとうございます!!!!!
なんたらとかんたらを別にしたら解決しました。
0188デフォルトの名無しさん
2011/12/02(金) 18:33:28.170189デフォルトの名無しさん
2011/12/02(金) 18:40:14.79別にしちゃダメだろwww
0190デフォルトの名無しさん
2011/12/02(金) 19:38:00.08”本気”で対応したいならDomainKeysとかDKIMとかでググればいいかと
0191デフォルトの名無しさん
2011/12/02(金) 22:09:06.45通常ならnewで作って普通に呼び出せばいいのに
特別な呼び出し方でスコープも分かりにくいから旨味が無いわけだが
static変数は別だけど
0192 ◆QZaw55cn4c
2011/12/02(金) 23:14:02.61特定のクラス一つに強制的に所属させる、という分類法に機能的・意味的にそぐわないメソッドを無理やりにどこかに押し込める、いわばオブジェクト指向万能論者にとっても必要悪・目の上の瘤的な存在なのでは?
0193デフォルトの名無しさん
2011/12/02(金) 23:20:35.640194デフォルトの名無しさん
2011/12/02(金) 23:49:45.96日本語おk
0195デフォルトの名無しさん
2011/12/03(土) 00:03:52.54CSVを書き込むCSVWriterというクラスを作り、実際の出力はwriteCSV()が行うとします。
この時CSVWriterはjava.io.BufferedWriterを継承させたいのですが、そうなると
利用者から見てwrite()、writeCSV()どちらを使えば良いか迷うことになります。
このとき、write()を実行された場合はどういう動作が適切でしょうか。
0196151
2011/12/03(土) 01:04:00.97http://www.javamex.com/tutorials/threads/invokelater.shtml このサンプルどおりボタンの処理をスレッド化したら解決しました
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
Thread omoimessoddoThread = new Thread() {
public void run() {
omoimesoddo();
}
};
omoimesoddoThread.start();
}
});
本来上記ページのサンプルにあるSwingUtilities.invokeLaterを使用するコードもつけたのですが、
ひょんなことからコードをコメントアウトしても動いてます
重いメソッドが動いてる間にもボタンが操作可能になってしまってるのが関連してるのかもしれないですが
そのへんはぼちぼち直していきます
ありがとうございました
0197196
2011/12/03(土) 01:07:10.180198デフォルトの名無しさん
2011/12/03(土) 01:16:31.890199デフォルトの名無しさん
2011/12/03(土) 01:36:05.39http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html
0200デフォルトの名無しさん
2011/12/03(土) 07:54:35.19そもそもインターフェイスが合わないからWriter以下を継承するべきではありません
Writerを引数に取る独立したクラスにしましょう
0201デフォルトの名無しさん
2011/12/03(土) 10:11:43.07スタティックメソッドで計算結果を得られればそれで十分じゃない
0202デフォルトの名無しさん
2011/12/03(土) 11:21:53.22前のリプレースで置換した文字列は無視することはできますか?
例えばある文字列を、"あ"を"あい"に置換した後、"い"をいうに置換する場合
最初の"あ"が"あい"に置換された"い"の部分を無視するとか
0203デフォルトの名無しさん
2011/12/03(土) 11:39:04.620204デフォルトの名無しさん
2011/12/03(土) 12:36:59.76これはただの例なので文字は連続しているとは限りません
"え"を"おえ"に置き換えるという部分もあるので単純に一度置き換えた箇所以外の該当文字をリプレースしていく方法はありますか?
0205デフォルトの名無しさん
2011/12/03(土) 12:38:29.74前の置換を利用したい場合、利用したくない場合、色々あるから、
置換の順序を考慮してするのが簡単。
0206デフォルトの名無しさん
2011/12/03(土) 12:55:15.630207デフォルトの名無しさん
2011/12/03(土) 13:47:17.03自分でエディタ使って一括置換する場合にどうすれば考えてみれば早い。
自分なら、一つ目はありえない文字列(「@@1@@」みたいな)に置換しておいて、
その後で二つ目の置換をかけ、最後に最初置換した文字列を本来の目的の文字列に置換する。
0208デフォルトの名無しさん
2011/12/03(土) 14:19:19.60そりゃスンゴイわぁー
0209デフォルトの名無しさん
2011/12/03(土) 14:52:16.59>>201
スタティックメソッドの存在理由をそれなりに納得出来ました
0210デフォルトの名無しさん
2011/12/03(土) 15:19:02.68実はオリジナルの暗号文作成ソフトであ、から ん、までの一つ一つの文字を置換したいので効率の良い方法ありませんか?
0211デフォルトの名無しさん
2011/12/03(土) 15:23:48.140212デフォルトの名無しさん
2011/12/03(土) 15:36:51.63暗号について聞きたいなら、こっちでやれ
http://hibari.2ch.net/test/read.cgi/tech/1180280982/
0213デフォルトの名無しさん
2011/12/03(土) 16:02:59.420214デフォルトの名無しさん
2011/12/03(土) 16:15:13.81ひらがなの暗号化なら、
サンデー今週号の「史上最強の弟子ケンイチ」にすばらしい方法が出てたぞ。
0215デフォルトの名無しさん
2011/12/03(土) 16:15:30.94ちょっとした言葉遊び程度の暗号です
ひらがなを置換して変な文章作成するソフトで複合化はルールに従った置換で簡単に出来るのですが、
一文字一文字を暗号化していくとなると難しいです
0216デフォルトの名無しさん
2011/12/03(土) 16:18:42.400217デフォルトの名無しさん
2011/12/03(土) 16:39:43.100218デフォルトの名無しさん
2011/12/03(土) 17:02:25.24どれだけ無趣味なんだお前
0219デフォルトの名無しさん
2011/12/03(土) 17:05:19.97それ一度置換した文字は読み直す必要ないじゃん。1パスで処理できる
そもそも何回も先頭まで戻って置換し直しなんて処理にはならないじゃん
0220デフォルトの名無しさん
2011/12/03(土) 17:28:24.53SwingWorkerでググるとよろし
0221デフォルトの名無しさん
2011/12/03(土) 17:35:13.28リプレース前の文字列が1字に限られるんだったら、文字列の頭から順に処理していくだけで済むんじゃないの?
そうでなくとも、未リプレースの文字なのかリプレース済みの文字なのか判別できるようにしとくだけで良さそうだけど。
0222デフォルトの名無しさん
2011/12/03(土) 18:54:47.28例えば
string a="あいうえお";
a.replase("あ", "あい").replase("い", "いう")•••;
ってことですか?
0223デフォルトの名無しさん
2011/12/03(土) 22:14:38.39java.lang.ClassNotFoundExceptionとなってしまいます
これを問題なく実行できるようにする為にはどうすれば良いでしょうか?
メソッド名やフィールド名に日本語を使うのは大丈夫でした
また、Eclipseを使っていますが、TextFileEncodingはUTF-8に設定しています
0224デフォルトの名無しさん
2011/12/03(土) 22:37:37.24diceクラスのdiceRollメソッドでint型のdiceNumberに値を入れて、
panelクラスのpanelDownメソッドでpanelNumber(残りのパネル枚数)を50に設定して、
panelNumber = panelNumber - diceNumber; return panelNumberでdiceの出た目の数だけどんどん枚数が減っていく仕様にしたいのですが、
playクラスのplayGameメソッドで、dice();panelDown();と続けて実行して、最後にshowクラスのshowPanelメソッドで
System.out.printf("残りのパネルは%d枚です",panelDown(panelNumber));としているのですが、
パネルの残り枚数が50から変動しません。いろいろ試してみましたがだめでした。何かアドバイスをください。お願いします
わかりづらいようでしたらもう少し詳しく書きます
0225デフォルトの名無しさん
2011/12/03(土) 22:52:27.96一旦ローマ字にリプレースして、あとから戻せ。あ行は最後に戻せ。
0226デフォルトの名無しさん
2011/12/03(土) 22:58:35.48panelDownのなかでdiceNumberが幾つか確かめろ
あと、panelNumberはなんでpanelDownの引数なの?
panelDownの中から見るpanelNumberと引数で渡しているpanelNumberがブツなら引数で渡すことないし、
別のブツなら上書きされてねーんじゃねーの?
0227デフォルトの名無しさん
2011/12/03(土) 23:01:47.570228デフォルトの名無しさん
2011/12/03(土) 23:04:44.30×panelDownの中から見るpanelNumberと引数で渡しているpanelNumberがブツなら引数で渡すことないし、
○panelDownの中から見るpanelNumberと引数で渡しているpanelNumberが同じブツなら引数で渡すことないし、
0229デフォルトの名無しさん
2011/12/04(日) 00:48:13.48パッケージ名やクラス名に日本語を入れるのはやめとけ。
コンパイル後にファイル名になるのでJVMの外の世界に影響が出る・・つまりOS依存部分が出来てしまう。
0230デフォルトの名無しさん
2011/12/04(日) 17:58:25.990231デフォルトの名無しさん
2011/12/04(日) 18:16:19.56一まとめの文書量が多いとPDF使うよ。
0232デフォルトの名無しさん
2011/12/04(日) 19:00:44.490233デフォルトの名無しさん
2011/12/04(日) 19:24:37.75エラーログもPDFで送ってきた馬鹿を思い出したw
0234デフォルトの名無しさん
2011/12/04(日) 20:21:41.130235 ◆QZaw55cn4c
2011/12/04(日) 20:53:55.19いまや pdf がセキュリティホールの一つ。
0236デフォルトの名無しさん
2011/12/05(月) 10:27:16.66命令を送って制御したいと思っています
独自コマンドをいくつか定義して、それに加えて
UNIX 標準のコマンド等(less, grep, リダイレクトなど)を
組み合わせて使用できるようにしたいです
cygwin のターミナルから GUI プログラムに向けて
メッセージを送信するといいのかなと思いましたが
別々のプログラム間でどのように
メッセージを送信すればよいか分かりません
どなたかやり方分かる方教えて下さい
0237デフォルトの名無しさん
2011/12/05(月) 10:52:15.00ソケットはどうですか。
0238デフォルトの名無しさん
2011/12/05(月) 10:56:47.86System.out.print() や System.out.println() を実行した後に、
その出力した値を文字列として得たいのですが、どうしたらいいでしょうか。
System.out.print("AAA");
System.out.print("BBB");
String str = /* 何かを実行することで、"AAABBB"を取得 */
ということをやりたいのです。
System.setOut() を使えばできそうなのですが、なかなかできません。
System.setOut() の引数の型が Writer であれば、StringWriter を使えるのですが、
引数の型が PrintStream なので使用できません。
何か良いアイデアはありませんでしょうか。
0239デフォルトの名無しさん
2011/12/05(月) 11:08:48.12ありがとうございます
ポート開くのはセキュリティ的に少し怖いのですが、
何か安全対策の方法はありますか?
0240デフォルトの名無しさん
2011/12/05(月) 11:31:54.79オーバーライドの重要性(つーか必須)はよく分かったけど
オーバーロードって要らなくね?
ようは
if(変数の数==1)
Method1();
if(変数の数==2)
Method2();
みたいなもんでしょ?(型で判断もしてくれるけど)
同じメソッド名で混乱を招くだけじゃね?
0241デフォルトの名無しさん
2011/12/05(月) 11:39:49.830242デフォルトの名無しさん
2011/12/05(月) 11:48:16.410243デフォルトの名無しさん
2011/12/05(月) 12:01:28.760244デフォルトの名無しさん
2011/12/05(月) 12:03:53.75クラス
オーバーロード
ファイナリィ
ストリーム
ヌルポ
0245デフォルトの名無しさん
2011/12/05(月) 12:12:02.03ガッ
0246デフォルトの名無しさん
2011/12/05(月) 12:41:58.65>相手は死ぬ
0247デフォルトの名無しさん
2011/12/05(月) 14:39:24.870248デフォルトの名無しさん
2011/12/05(月) 17:01:23.64絶対オーバーライドしろや!的な継承をさせるためだけの物なんだな
しかも引数の数と型まで限定させてさ
そのくせ中身は空っぽ
ウゼェ存在だなwwww
0249デフォルトの名無しさん
2011/12/05(月) 17:12:54.74何をいってんだお前は?
中身が空っぽなのはお前の頭蓋骨の中だろ(笑)
0250デフォルトの名無しさん
2011/12/05(月) 17:16:27.040251デフォルトの名無しさん
2011/12/05(月) 17:26:50.97<?>
ってどういう意味ですか?[]と同じ配列の意味でしょうか?
0252デフォルトの名無しさん
2011/12/05(月) 17:45:55.61■ このスレッドは過去ログ倉庫に格納されています