【初心者】Java質問・相談スレッド116【歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2008/06/13(金) 17:52:10JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
【初心者】Java質問・相談スレッド115【歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1210529127/
次スレは>>990あたりで。
過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
0153デフォルトの名無しさん
2008/06/15(日) 21:44:16>>86
015485
2008/06/15(日) 21:46:07最後のおまとめありがとうございます。
まあ端的にいえばそのとおりですね。
他の方は誤解されているようですが、私はこの板で質問したことは一度もないし、ネット上の掲示板にも質問したことはありません。
すべて独学です。
>>85のコメントは形式は質問になってますが、
>>87で補足したように抗議文です。
警鐘を鳴らしたかっただけです。
では、ここからはいつもの流れでどうぞ。
0155デフォルトの名無しさん
2008/06/15(日) 22:47:50>>85が挙げてる例である「Java ダブルクリック 実行」でググってみた。
…マニフェストファイル書いてjar作る正しい手順が、それなりにヒットする。
>>85が何を見て「でたらめだらけ」と結論づけたのか気になる。
ただ、VBと違って、標準の開発環境はこれ、というのがないから、初心者は困るんだろうな。
素のjdkが基本といえば基本だけど、
初心者には(特にVBのようなRADツールの経験があれば余計に)取っつきづらいだろう。
最近じゃ「Eclipseで始めるJava入門」みたいな本も出てるしね。
だから、コマンドプロンプトでの手順示されても
「じゃあウチのEclipse/NetBeans/JBuilderではどうすりゃいいの?」となるんじゃないかな。
その結果「これはつかえない!デタラメに違いない!」と結論づける、と。
そもそも、仮にjdkオンリーで覚えても、最終的にはIDEを使うようになると知ったら、
「あの苦労は何だったのか」と徒労感を覚えるかもしれない(それはそれで大事な経験なんだけど)。
そしたら余計に取っつき悪さを感じるかも。
そういうのが嫌な人は、どれか特定の便利なIDEべったりになるといいかもね。
そういう人にはNetBeansがお勧め。
Webから得られる情報が限られるけど、面倒なネタは避けられると思う。
0156デフォルトの名無しさん
2008/06/15(日) 23:05:06>まあでも今日で初心者卒業できたのは、
いきなりそんなこと前提にされても、と何も言えなくて・・・夏
0157デフォルトの名無しさん
2008/06/15(日) 23:09:350158デフォルトの名無しさん
2008/06/15(日) 23:09:47「n=OO」という風に表示したいのですが、
表示をさせることができません。
表示をさせるための記述を教えてください。
よろしくお願いします。
public class karimasu{
public static void main(String[] args){
int n=0;
double a[]=new double[100];
a[0]=1.5;
a[1]=2.0;
a[2]=3.0;
System.out.println("1.5");
System.out.println("2.0");
System.out.println("3.0");
for(n=3;n<=100;n++){
a[n]=(-1*a[n-1]) + a[n-2] + a[n-3];
System.out.println(a[n]);
}
}
}
0159デフォルトの名無しさん
2008/06/15(日) 23:10:36答えは出ましたが、表示を変えることができないです。
0160デフォルトの名無しさん
2008/06/15(日) 23:13:560161デフォルトの名無しさん
2008/06/15(日) 23:16:360162デフォルトの名無しさん
2008/06/15(日) 23:25:41あの時の方で
いまだに解決していません(汗
()の中にいろいろといれても
うまく表示できなくて…
0163デフォルトの名無しさん
2008/06/15(日) 23:29:36例えがものすごく悪かったようなので
もう一度書きます
a[1]=1.5
a[2]=2.0
a[3]=3.0 といった表示を連続で出したいのです
0164デフォルトの名無しさん
2008/06/15(日) 23:31:560165デフォルトの名無しさん
2008/06/15(日) 23:35:08なぜ>>42をスルーできたのか気になる
0166デフォルトの名無しさん
2008/06/15(日) 23:37:13教えてくださりありがとうございます
おかげさまで出ましたm(_ _)mペコリ
0167デフォルトの名無しさん
2008/06/15(日) 23:39:000168166
2008/06/15(日) 23:39:54まさかのa[0]〜a[2] の表示が出ない!!
0169デフォルトの名無しさん
2008/06/15(日) 23:40:480170デフォルトの名無しさん
2008/06/15(日) 23:42:40そりゃ、ループが3からだもの
0, 1, 2 は固定なんだから、>>158 の
System.out.println("1.5");
System.out.println("2.0");
System.out.println("3.0");
を
System.out.println("a[0]=1.5");
System.out.println("a[1]=2.0");
System.out.println("a[2]=3.0");
に変えればいいと思うよ
0171166
2008/06/15(日) 23:42:57無事にできました
ありがとうございます
とりあえず落ち着け俺
0173デフォルトの名無しさん
2008/06/15(日) 23:48:370174デフォルトの名無しさん
2008/06/16(月) 00:02:42「入力した数字が素数かどうかを調べる」というものなのですが、
下のところまでできたのですが、
肝心の「数字を入れてください」の部分ができません
「input>」と表示した後に数字を入れたいのですが
どうすればいいでしょうか
public class sosuu {
public static void main (String[] args) {
int n = ;
boolean isPrime = true;
for (int i = 2; i <= n - 1; i++)
if (n % i == 0) {
isPrime = false;
break;
}
if (isPrime)
System.out.println(n + " prime number.");
else
System.out.println(n + " not prime number.");
}
}
記述すべきことを教えてくださいませ
よろしくお願いします
0175デフォルトの名無しさん
2008/06/16(月) 00:05:170176デフォルトの名無しさん
2008/06/16(月) 00:08:20一応聞きたいのですが、
それ以外の方法はありますでしょうか?
教わったかどうかあやふやですので…
0177デフォルトの名無しさん
2008/06/16(月) 00:14:200178デフォルトの名無しさん
2008/06/16(月) 00:16:33そっちのほうほうをお願いします
自分でもうまく当てはめようとしたのですが
どうにもうまくいかず。
教えの程、よろしくお願いします
0179デフォルトの名無しさん
2008/06/16(月) 00:17:16ほうが一つ多すぎましたorz
落ち着け私
0180デフォルトの名無しさん
2008/06/16(月) 00:19:06自分で作っておいて気づいたのですが
argsを使っていました…
ここからどう変えるのか…
0181デフォルトの名無しさん
2008/06/16(月) 00:26:52>「input>」と表示した後に数字を入れたいのですが
この「後に」というのは条件ではないの?
argsの内容は実行前のコマンドの段階で入力されてしまうんだけど、っていうあたりはわかってるのかな
0182デフォルトの名無しさん
2008/06/16(月) 00:28:46いや>>174よく読まず無責任にargs出した俺が悪いんだが
0183デフォルトの名無しさん
2008/06/16(月) 00:31:15忘れていました(汗
「いつも最初に記述するように」と教わっていたので
最初の2行くらいはろくに考えておらず…
となると>>175の方の表記の方法でしかできませんかね?
0184デフォルトの名無しさん
2008/06/16(月) 00:32:13やはり私の記述はわかりづらいのでしょうか?
0185デフォルトの名無しさん
2008/06/16(月) 00:33:32まだDataInputStreamのreadLine()で指導している先生だったりするとか、
そのくらいしか思い浮かばない
0186デフォルトの名無しさん
2008/06/16(月) 00:36:56あれ…
その方法は学んだっかな…
何かもっとこうシンプルだったような…
0187デフォルトの名無しさん
2008/06/16(月) 00:39:26それを専ら使うように指導しているとか
0188デフォルトの名無しさん
2008/06/16(月) 00:43:25とりあえず手元にあるパソコンでは
スキャナー表示のものを動かすことができませんので
手を加えたものを後日別の場所で動かしてみます
0189デフォルトの名無しさん
2008/06/16(月) 00:50:34素で使ったことなかったYO
0190デフォルトの名無しさん
2008/06/16(月) 00:54:540191デフォルトの名無しさん
2008/06/16(月) 00:55:14>System.out.println(n + " is a prime number.");
>System.out.println(n + " is not a prime number.");
0192デフォルトの名無しさん
2008/06/16(月) 00:58:30jcpadはそれで大丈夫なのかなと
>>191
?
0193デフォルトの名無しさん
2008/06/16(月) 00:59:05## : not prime
ならおkかも
0194デフォルトの名無しさん
2008/06/16(月) 01:05:14どのような記述をすればそうなるでしょうか?
0195デフォルトの名無しさん
2008/06/16(月) 01:06:52>>193は形容詞版
0196デフォルトの名無しさん
2008/06/16(月) 01:13:35なんだかだんだんおかしな方向に…
表記はこうするように言われているのでこの通りにしております
問題は数字をJCpadのコマンド画面で直接打てないことで…
0197デフォルトの名無しさん
2008/06/16(月) 01:19:510198デフォルトの名無しさん
2008/06/16(月) 01:26:08いや、わかった。すまん。
ttp://www.mlab.im.dendai.ac.jp/computer2/while/
0199デフォルトの名無しさん
2008/06/16(月) 01:26:29そうです、はい
素数の式が絡んでくるともう…
0200デフォルトの名無しさん
2008/06/16(月) 01:28:06それのことを言っていたんですかね?
確かに参考にしましたが、うまくできず
0201デフォルトの名無しさん
2008/06/16(月) 02:30:09教師か教科書か教え方が悪い。
0202デフォルトの名無しさん
2008/06/16(月) 03:33:10よく見たらこれと一緒だな
ttp://pc11.2ch.net/test/read.cgi/tech/1212085079/46
0203デフォルトの名無しさん
2008/06/16(月) 09:09:44情報学科卒業してきた子より
高卒で趣味でunixいじってたような子の方ができたりする
0204デフォルトの名無しさん
2008/06/16(月) 09:35:23TreeMapを使っているのに、ソートされないのは
やはりソースに問題がありますよね?
0205デフォルトの名無しさん
2008/06/16(月) 11:10:15その上こんなスレに来る奴なんてデフォで講義ろくに聞いてない&屑講師なんだから当たり前だろ。
そりゃ趣味でlinuxいじってた方が強いわ。
0206デフォルトの名無しさん
2008/06/16(月) 11:25:170207デフォルトの名無しさん
2008/06/16(月) 11:50:090208デフォルトの名無しさん
2008/06/16(月) 12:03:20Linuxと違ってWinではルートが複数あり、また環境によって存在するドライブレターも違うので
全ルートを与えるためにはA~Zまで試してみるくらいしか方法が思いつきません。
今現在存在するルートディレクトリ(C:\,D:\…)を取得する方法ってあるでしょうか?
0209デフォルトの名無しさん
2008/06/16(月) 12:13:54File.listRoots()
0210デフォルトの名無しさん
2008/06/16(月) 13:13:08四苦八苦していたのにこんな便利なstaticメソッドがあったのですか…。
即レスありがとうございます!!
0211デフォルトの名無しさん
2008/06/16(月) 14:50:40そのDLLでEXCEPTION_ACCESS_VIOLATION (0xc0000005)
を発生した場合、Java側ではtry catchをしても
落ちてしまいます。
なんとか例外としてキャッチできないものでしょうか?
0212デフォルトの名無しさん
2008/06/16(月) 15:04:19でJavaの例外として投げ直す
0213デフォルトの名無しさん
2008/06/16(月) 17:21:26ありがとうございます。
CでDLLのEXCEPTION_ACCESS_VIOLATION をキャッチできるか
聞いてきます。
0214デフォルトの名無しさん
2008/06/16(月) 17:47:14それに近いクラスはあるでしょうか。JDK1.6です。JDKでなくても、その他ライブラリであれば合わせて教えていただけないでしょうか。
0215デフォルトの名無しさん
2008/06/16(月) 18:23:05String path="C:\\";
path.replaceAll("\\","");
とやったのですが、java.util.regex.PatternSyntaxExceptionが出ました。
バックスラッシュを表したくてエスケープさせて指定したつもりが、
どこがおかしいのでしょうか?
0216デフォルトの名無しさん
2008/06/16(月) 18:23:55JTree
0217デフォルトの名無しさん
2008/06/16(月) 18:33:24ありがとうございます。
これってawt用ですが、できれば親と子を持つという概念だけのコレクションクラスはないですかね。
0218デフォルトの名無しさん
2008/06/16(月) 18:40:020219デフォルトの名無しさん
2008/06/16(月) 18:41:49それくらい自分で作れ
0220デフォルトの名無しさん
2008/06/16(月) 19:00:37コレクションでツリーなんて良くあることなのに、高級言語の1.6にしてもないなんてね。そのくせ余計なクラスばかり多い
0221デフォルトの名無しさん
2008/06/16(月) 19:21:52ありがとうございます。
しかし何故\\\\になるのでしょうか?
replaceを使うと普通に\\で大丈夫なのに。
0222デフォルトの名無しさん
2008/06/16(月) 19:25:16ない。
http://bugs.sun.com/view_bug.do?bug_id=4094377
evaluationによれば、Doug Lea御大がC++で実装した経験から、
汎用かつ軽量でパフォーマンスに優れた実装を作るのが難しいからだってさ。
0223デフォルトの名無しさん
2008/06/16(月) 19:26:34ttp://java.sun.com/javase/ja/6/docs/ja/api/java/lang/String.html
> String replace(CharSequence target, CharSequence replacement)
> リテラルターゲットシーケンスに一致するこの文字列の部分文字列を、指定されたリテラル置換シーケンスに置き換えます。
> String replaceAll(String regex, String replacement)
> 指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。
0224デフォルトの名無しさん
2008/06/16(月) 19:46:06ここから考えると、
\を表す文字列で表したい→\\
\を正規表現で表したい→\\\\
ってことですよね。
なんか考えているうちにこんがらがってきましたが、
コンパイル時のエスケープと正規表現のエスケープで二重にエスケープする
必要があるってことでしょうか??
0225224
2008/06/16(月) 19:47:09○ \を文字列で
0226デフォルトの名無しさん
2008/06/16(月) 19:57:44ttp://java.sun.com/javase/ja/6/docs/ja/api/java/util/regex/Pattern.html
>たとえば、文字列リテラル "\b" は、正規表現と解釈されると、バックスペース 1 文字とマッチされます。 しかし、"\\b" は単語境界とマッチされます。
0227デフォルトの名無しさん
2008/06/16(月) 20:29:46システムで設定されているアイコン(htmlならIEやFxのアイコンのような)を表示したいのですが、
Javaではこういう情報を取得する方法はあるでしょうか?
0228デフォルトの名無しさん
2008/06/16(月) 20:38:39現在、Apache + Tomcat の環境で、SSLによるWebアプリケーションを構築しています。
その中でAppletも併用しているのですが、このAppletに証明書を付けて配布したいと考えています(AppletからWebサービスを呼び出す)
Apacheにopensslで作成したキーを登録し、WebアプリケーションやAppletのダウンロードのSSL化はできました。
ところが、そこで作成した証明書をkeytool で登録し、AppletのJarに付与しようとするとエラーとなります(認証チェインがルート証明書に届いていない云々)
そこでkeytoolでキーと証明書を作ればと思ったのですが、keytoolでは証明書はエクスポートできるのですが、鍵は抽出できません。
本番環境では正式なCAを通した鍵と証明書があるのですが、開発環境でオレオレ認証でApacheと署名Jarを同時に行うにはどうすれば良いでしょうか?
0229218
2008/06/16(月) 21:39:29r = path.replaceAll("[\\\\]",""); // Compile -> "[\\]"
r = path.replaceAll("\\\\",""); // Compile -> "\\"
r = path.replace("\\",""); // Compile -> "\"
コンパイルすると、2つ重なる¥が1つの¥になるので、
逆に1つの¥を表すためには¥を2つ重ねる必要がある。(C/C++も同じ。)
その上で、正規表現の¥自身を表すときは¥を2つ重ねる必要がある。
正規表現で"\"や"[\]"はおかしい。
コンパイル後、String内の¥¥bは2バイト、一方¥bは1バイト文字になる。
0230デフォルトの名無しさん
2008/06/16(月) 21:52:01JFileChooser で使ってるサイズしか取れないけど。
javax.swing.filechooser.FileSystemView#getSystemIcon(java.io.File)
0231デフォルトの名無しさん
2008/06/16(月) 22:06:06こんなのあったのですか、ありがとうございます!
0232デフォルトの名無しさん
2008/06/16(月) 23:29:30オレオレCAの証明書をJREのルート証明書群に追加すればいいんでない?
(jre/lib/security/cacerts)
0233デフォルトの名無しさん
2008/06/17(火) 14:06:02たとえばこんなのとかので
trunk
+-/build/build.xml #ビルドに関するもろもろ
+-/src/net/2ch/pc11/Hoge.java #ソース
+-/tests/net/2ch/pc11/HogeTest.java #テスト用
参考になるウェブサイトとか公開されているsvnで秀逸なのを教えてくんろ
0234デフォルトの名無しさん
2008/06/17(火) 14:39:420235デフォルトの名無しさん
2008/06/17(火) 16:03:250236デフォルトの名無しさん
2008/06/17(火) 16:16:020237デフォルトの名無しさん
2008/06/17(火) 17:15:21つListIterator
0238デフォルトの名無しさん
2008/06/17(火) 17:50:280239デフォルトの名無しさん
2008/06/17(火) 19:06:42ビューを定義していたから楽しようとして落とし穴にはまった、、
継承せずにベタに書くと解決しました。
継承したままうまくクエリする方法ってないでしょうか。
0240デフォルトの名無しさん
2008/06/17(火) 19:41:06何が必要なのかおしえてくれ〜〜〜
play("./burst.wav");//爆発音声
0241デフォルトの名無しさん
2008/06/17(火) 20:07:08参考資料をよく読むんだッ
0242デフォルトの名無しさん
2008/06/17(火) 20:10:43int y = 1585;
xの百の位の3とyの十の位の8を
抜き出して演算処理したいのですが
どのようにしたらいいですか?心優しい方助言をば・・
初心者でごめんですm(_ _)m
0243デフォルトの名無しさん
2008/06/17(火) 20:13:36123わる10は、12あまり3
0244デフォルトの名無しさん
2008/06/17(火) 20:36:27アプレットのplayメソッドに渡すのは文字列で表されたURLじゃなくて、
「URL」というクラスのオブジェクト。
play getCodeBase
でぐぐるとわかるよ。
0245デフォルトの名無しさん
2008/06/17(火) 20:45:16わかりそうで・・・わかりませんOrz
具体的にコードで操作するにはどうすれば int x = 2345; の
百の位の 3 抜き取れますか?
タイトルに・・初心者大歓迎って書いてあったから・・ごめんなさい
0246デフォルトの名無しさん
2008/06/17(火) 20:51:37どうすればよいでしょうか?
0247デフォルトの名無しさん
2008/06/17(火) 20:53:40サーブレットのユニットテストを書こうと思っていて、
ちょっと調べた所HttpUnitとCactusってのが有名っぽいので
どちらかを使おうと思ってます。、
それぞれの長所短所とか教えて下さい。
0248デフォルトの名無しさん
2008/06/17(火) 20:55:14こういうのって良くあるTIPだと思うんですけど、そういうサイトとご存知ないですか?
0249デフォルトの名無しさん
2008/06/17(火) 20:56:46x=String.valueOf(2345);
x.charAt(2);
0250デフォルトの名無しさん
2008/06/17(火) 21:02:15すみません。いろいろ調べたのですが。InputStream見たいにデコレータ形式だと思ってjavadocも見たのですが、
コンストラクタにもなくて。
0251デフォルトの名無しさん
2008/06/17(火) 21:02:28PixelGrabberでピクセル値とってきてBufferedImageに書き込むとかは?
0252245
2008/06/17(火) 21:12:56初めてiアプリ自作してるのでわからないことだらけ・・ですOrz
■ このスレッドは過去ログ倉庫に格納されています