【初心者】Java質問・相談スレッド101【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2007/04/30(月) 22:10:53質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
【初心者】Java質問・相談スレッド100【大歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1175317038
/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc10.2ch.net/hp/
次スレは>>980あたりで。
0002デフォルトの名無しさん
2007/04/30(月) 22:28:500003デフォルトの名無しさん
2007/04/30(月) 22:40:10if文の中で宣言の指定をすると「シンボルを見つけられません」といわれて
コンパイルできません。
最初の段階で宣言すればいいのですが、なぜif中に宣言したらいけないのでしょうか?
誰か教えてもらえると助かります。
0004デフォルトの名無しさん
2007/04/30(月) 22:42:54いけなくない。
if () { A }
B
Aでする宣言は有効。ただし、Bではその変数は見えない。
0005デフォルトの名無しさん
2007/04/30(月) 22:55:29あー
なんとなくわかりました。
ありがとうございます。
0006デフォルトの名無しさん
2007/05/01(火) 03:09:15あまり出来ない人でも使えるようにActionScrip和訳辞書のようなイメージでシステム
を作りたいと思っています。ユーザーがイベントやそのイベントが起きたときの処理などを
日本語であらかじめ設定されたライブラリから選択すればそのままソースがデータベースから
読み出されアウトプットされるようなものを作りたいのです。
どのように作ればよいのでしょうか?
何か開発に使えそうなソフトなどないでしょうか?
本当に困っています。誰か助けてください
0007デフォルトの名無しさん
2007/05/01(火) 04:06:32public class Test extends Thread{
private int i, j;
public synchronized void run(){
for( int count = 0; count < 2; count++ ){
i++;
j++;
System.out.println(" i=" + i + ":j=" + j );
}
}
public static void main(String[] args){
new Test().start();
new Test().start();
}
}
このコードの実行結果を答えよっていうような問題があって、
選択肢の中に、
B i=1:j=1
i=2:j=2
i=1:j=1
i=2:j=2
C iとjの値は出力されるが、表示順は一意ではない
この2つがあって、Bが正解になってて、
解説には、run()メソッドをsynchronized指定しているため、run()メソッド実行中は他に制御が移ることなく処理される。
とあるんですが、これ違いますよね?
うまく説明できないんですが、このときって別々のオブジェクトのrunにロックがかかってるんですよね?
forループの回数増やして試しても、Cの結果になりました
0008デフォルトの名無しさん
2007/05/01(火) 04:20:34うん
あんたの解釈で合ってる
0009デフォルトの名無しさん
2007/05/01(火) 04:46:47ありがとうございます
ちょうど今日SJC-P受けるのでその前にすっきりできました\(^o^)/
0010デフォルトの名無しさん
2007/05/01(火) 06:36:430011デフォルトの名無しさん
2007/05/01(火) 08:59:250012デフォルトの名無しさん
2007/05/01(火) 09:04:31曜日を取得
0013デフォルトの名無しさん
2007/05/01(火) 09:22:49次は?
0014デフォルトの名無しさん
2007/05/01(火) 09:30:08祝日を管理するプログラム
0015デフォルトの名無しさん
2007/05/01(火) 10:00:30成人の日と体育の日は第2月曜。春分の日と秋分の日は年度によって違う。振替休日。
成人の日は
Cal date=インスタンス〜
date.set(1月1日)
int col=1月1日の曜日ゲット
int count=0
for(int c;c<=30;C++){
if(col==2){
count++
if(count==2){
Holiday=1*100+c
break
}
}
col++
if(col>7){
col=1
}
体育の日も同様に!
春分の日
Syunbun=3*100+(int)(20.8431+0.242194*(Year-1980)-(int)((Year-1980)/4))
春分の日
Syuubun=9*100+(int)(23.2488+0.242194*(Year-1980)-(int)((Year-1980)/4))
振替休日
まんどくせ( ̄σ‥ ̄)
0016デフォルトの名無しさん
2007/05/01(火) 10:46:19・指定された年月に対する一ヶ月分のカレンダーをGUI上に表示する
・土日祝祭日は色分けすること。
・年月の指定範囲は1970年1月〜2099年12月とする
・祝祭日は過去にさかのぼると平日だったりするので(海の日とか天皇誕生日とか…)その辺も考慮する。
・将来的に祝祭日の追加に対応できるようにする。
・余力があればこれを元にスケジュール帳を作ってみる。
これだけやればGWの暇つぶしになるじゃろ
0017デフォルトの名無しさん
2007/05/01(火) 10:47:05いつ天皇が逝っても対応できるように和暦の即時追加とか
はぁ〜、和暦とかハッピーマンデーをどっかのサーバーで一元管理してくれればいいのにな
0018デフォルトの名無しさん
2007/05/01(火) 10:49:54( ̄σ‥ ̄)
0019デフォルトの名無しさん
2007/05/01(火) 11:04:40このクライアントアプリでJava版があるんだよ
これを自分の考えたアルゴリズムで打つように組んで遊んでるよ。
このアルゴリズムがすげー弱い・・・。
0020デフォルトの名無しさん
2007/05/01(火) 11:36:43テキストエリアにjの回数分、ランダムに出力したいのですが、
どうも一番最後の処理だけが出力されてしまいます。
どこがおかしいか教えて頂けないでしょうか?
for(j = 1; j <= cnt; j++){
m = "role" + j + " = " + Math.round(Math.random()*10) + ",";
document.form1.result.value = m;
}
0021デフォルトの名無しさん
2007/05/01(火) 11:41:39スレ違い
0022デフォルトの名無しさん
2007/05/01(火) 11:45:15すいません。
0023デフォルトの名無しさん
2007/05/01(火) 11:53:15002421
2007/05/01(火) 11:54:00本当だ、JavaScriptってないんだな。
Web制作板に結構あるからそっちでどうだろう?
0025デフォルトの名無しさん
2007/05/01(火) 12:16:21SimpleDateFormat使うんだろうけどわかりませn
0026デフォルトの名無しさん
2007/05/01(火) 12:24:07どういう文字列にしたい?
2000年10月10日 10時10分
2000/10/10 10:10
などなど具体的に
っていうかAPIは読んだ?
0027デフォルトの名無しさん
2007/05/01(火) 12:30:321.時刻のフォーマット
1.日付と時刻の両方のフォーマット
1.パターン文字によるフォーマット
があるお
0028デフォルトの名無しさん
2007/05/01(火) 12:33:33API読みました!が、わかりません;;
2000/10/10(Dateクラス)をテキストフィールドに表示させたいんですが、
その場合Stringにしなきゃですよね?しかし方法がわかりません;;
0029デフォルトの名無しさん
2007/05/01(火) 12:41:18sdf.format(new Date(time));
0030デフォルトの名無しさん
2007/05/01(火) 12:43:450031デフォルトの名無しさん
2007/05/01(火) 13:56:18できればfreeがよいです。
windows、macで変わりますか?
0032デフォルトの名無しさん
2007/05/01(火) 15:02:07Javaをはじめたばかりなんですが
Eclipseなどの開発環境をいきなり入れるべきか
まずはエディタ+JDKの王道でやっておくべきか
どちらの方がおすすめでしょうか?
0033デフォルトの名無しさん
2007/05/01(火) 15:09:05どっちでも自分がいいと思った方を選べばいいよ
自分の感性を信じるんだ
0034デフォルトの名無しさん
2007/05/01(火) 15:10:10それでも敢えて言うなら、IDEから始めた方が良いと思う。この方が馴染みやすい。
ただ、ある程度Javaに慣れてきたら、エディタ+JDKでの開発にもふれておくべき。
IDEの後ろで何が起きているかは知ってて損はない。
0035デフォルトの名無しさん
2007/05/01(火) 15:30:58003632
2007/05/01(火) 15:55:09「どちらが良いかは人それぞれ」なんですね。
かなり乱暴なイメージとしては、初心者がウェブサイトを作るのに
メモ帳で手打ちしていくかホームページビルダーを使うか、
といった感じなんでしょうか。
ものの本を何冊か読んでみたところ、
エディタ+JDKが大前提で書かれてるものばかりだったので、
初めから統合開発環境に手を出すのはご法度なのかと思っていましたが、
そうとも限らないんですね。
簡単なコーディングをいくつかエディタで書いてみてから
統合開発環境も触ってみようと思います。
レスありがとうございました。
0037デフォルトの名無しさん
2007/05/01(火) 16:36:21無料なんだから全部試してから決めれば?
0038デフォルトの名無しさん
2007/05/01(火) 17:10:42関数を使うとき微妙に違う処理なんだけど引数に渡すものもない場合
どう呼び出すんでしょうか?
例えばtextshow1関数とtextshow2関数って分けずに
textshow関数で引数を渡すと思うんですが、
textfield1と2で違うだけって場合とか。
文字列を渡してやればいいのでしょうか?スマートでない気もします。
0039デフォルトの名無しさん
2007/05/01(火) 17:22:20HTTPのクライアントを書いていて、
以下のようにテキスト入力用のBufferedReaderと、
画像等のデータを入力するためのDataInputStreamを同時に使いたいと考えています。
InputStream is = sock.getInputStream();
DataInputStream DataIn = new DataInputStream(is);
BufferedReader TextIn = new BufferedReader(new InputStreamReader(is,1);
ヘッダをBuffuredReader#readLine()で""(ヘッダ終わり)が出るまで読み込んだ
後に、DataInputStreamでデータを読んでも、0バイトしか読み込めませんでした。
(バッファに先読みされた?)
BufferedReaderをまったく使わずにDataInputStream#readLine()を使えば一応
問題ないのですが、こちらのメソッドは非推奨らしいので出来れば使いたくありません。
この二つをうまく共生させる方法はありませんか?よろしくお願いします。
0040デフォルトの名無しさん
2007/05/01(火) 17:22:42何が違うのか具体的、かつ詳細に。
っつか、何が問題なのかもよくわからんし、
面倒だから自分の気が済むようにすればいいんじゃね? とか思わなくもない。
0041デフォルトの名無しさん
2007/05/01(火) 17:58:03> この二つをうまく共生させる方法はありませんか?
\r\n\r\n を検知したら -1 返すような InputStream 作って、
Reader にはそれを渡すとかして、先読みさせないようにするとか。
BufferedReader textIn = new BufferedReader(new InputStreamReader(
new InputStream(){
private boolean eof = false;
private int data = 0;
public int read(){
if(eof) return -1;
int b = is.read();
data = data << 8 | b;
eof = (b == -1 || data == 0x0d0a0d0a);
return b;
}
}));
とか。
素直に java.net.HttpURLConnection とか使った方が良いような気もする。
0042デフォルトの名無しさん
2007/05/01(火) 19:00:22↓みたいなことがしたいってこと?
import java.awt.TextField;
private TextField textfield1 = new TextField();
private TextField textfield2 = new TextField();
public void textshow(java.awt.TextField field){
field.setText("テスト");
}
呼び出すときは textshow(this.textfield1); textshow(this.textfield2);
0043デフォルトの名無しさん
2007/05/01(火) 20:24:220044デフォルトの名無しさん
2007/05/01(火) 20:32:16貴様、朝4時頃にカキコしてたやつだろ。
朝っぱらから受けるんだなぁと思ってたら、こんな時間まで…
0045デフォルトの名無しさん
2007/05/01(火) 20:35:39帰りにショッピングしてたよ\(^o^)/
0046デフォルトの名無しさん
2007/05/01(火) 20:59:530047デフォルトの名無しさん
2007/05/01(火) 21:30:32こんな感じです。
<SCRIPT language="JavaScript">
<!--
jmp = new Array();
img = new Array();
jmp[0] = "リンク先";
jmp[1] = "リンク先";
jmp[2] = "リンク先";
img[0] = "画像";
img[1] = "画像";
img[2] = "画像";
n = Math.floor(Math.random()*jmp.length);
document.write("<a href='"+jmp[n]+"'>");
document.write("<img src='"+img[n]+"' border='0'>");
document.write("</a>");
//-->
</SCRIPT>
画像は事情があって同じディレクトリに置けないので、htmlから始まるアドレスを入れて表示させています。
警告文を表示させないで実行したいのですがどうすればいいか教えてください。
0048デフォルトの名無しさん
2007/05/01(火) 21:35:250049デフォルトの名無しさん
2007/05/01(火) 21:39:210050デフォルトの名無しさん
2007/05/01(火) 21:43:22どういうことかというと、↓みたいなことをアプレットでもできるか?という意味です。
class A{
public static void main(String[] args){
B();
}
public static void B(){
C;
}
}
0051デフォルトの名無しさん
2007/05/01(火) 21:51:58メソッド呼び出してるようにしか見えないんだけど。
参照ってどこにあんの?
0052デフォルトの名無しさん
2007/05/01(火) 21:53:49「Methodオブジェクトを取得して何かする」という意味になりそうだが
たぶん違うな。
0053デフォルトの名無しさん
2007/05/01(火) 21:53:580054デフォルトの名無しさん
2007/05/01(火) 21:58:58なんでメソッド呼び出しが できなくなるって思うんだ?
0055デフォルトの名無しさん
2007/05/01(火) 22:03:10drawlineを含んでるからかな。
0056デフォルトの名無しさん
2007/05/01(火) 22:10:02呼ばれておらずなにも起こらないのか、
コンパイル自体ができないのか、
いろいろ可能性があって回答不能。
0057デフォルトの名無しさん
2007/05/01(火) 22:11:58とりあえず、ソース全部晒せ。
コンパイルエラーか実行時エラー出てるなら、それも全部。
0058デフォルトの名無しさん
2007/05/01(火) 22:14:570059デフォルトの名無しさん
2007/05/01(火) 22:47:12なるほど!
うまくいきました。
>java.net.HttpURLConnection
こんなクラスあったんですね・・・検討したいと思います。
ありがとうございました。
0060デフォルトの名無しさん
2007/05/01(火) 23:29:070061デフォルトの名無しさん
2007/05/01(火) 23:30:080062デフォルトの名無しさん
2007/05/02(水) 00:09:17入力した誕生日に対して現在の日付を基準に年を求めるメソッドを
作りたいのですが、どのメソッドをどのように使ったらいいかわかりません・・・(´・ω・`)
どなたか教えてください(´・ω・`)
0063デフォルトの名無しさん
2007/05/02(水) 00:18:03現在日付は取れるのか?
四則演算は出来るのか?
誕生日入力ってのはmainのパラメータで渡すのか?
何が出来ないんだ?
出来る事と出来ない事を分けて書いてくれ
0064デフォルトの名無しさん
2007/05/02(水) 00:36:58中身はよくないと思うが参考にはなるだろう
ttp://forum.java.sun.com/thread.jspa?threadID=685608&messageID=4021491
つまり
java.util.Calendar
java.util.Date
だ
0065デフォルトの名無しさん
2007/05/02(水) 00:59:38java初心者なのですが、
int a,b に数字を入れて割り算を行い、余りも含めてdouble型で出力しようとして
public static void main(String[] args) {
int a = 5;
int b = 3;
double d;
d = a/b;
System.out.println("5/3="+d);
}
と記述してみたのですが、実行結果は1.0となってしまいます。
どうすれば余りも含めて表示することができるのでしょうか?
0066デフォルトの名無しさん
2007/05/02(水) 01:01:570067デフォルトの名無しさん
2007/05/02(水) 01:09:400068デフォルトの名無しさん
2007/05/02(水) 01:14:57(double)int / (double)int = double
0069デフォルトの名無しさん
2007/05/02(水) 08:33:030070デフォルトの名無しさん
2007/05/02(水) 09:44:47商と剰余を同時に計算することはできないので、それぞれやる計算する
がある。ところで、doubleでの余りってどういうものを期待している?
0071デフォルトの名無しさん
2007/05/02(水) 10:14:401.↑↓(吉幾三の『よし』に近いイントネーション)
2.↓→(和田アキ子の『わだ』に近いイントネーション)
どっちなんでしょうか?
0072デフォルトの名無しさん
2007/05/02(水) 10:17:20ジャヴァ、ジャヴァ、ジャヴァ、ジャヴァ
0073デフォルトの名無しさん
2007/05/02(水) 10:19:06xlsファイルをCSVファイルに変換するJAVAプログラムなんて
あるのぉ??
(σ´Д`)JExcelApi使ったけどリファレンスが全部英語でわかんねぇ
007565
2007/05/02(水) 10:27:00わかりました。
わざわざありがとうございます。
007672
2007/05/02(水) 10:43:05いや、あの…ネタだったのに、ごめんorz
個人的には『わだ』式。
元々英語なんだから日本語にした時の発音なんてそれぞれじゃね?
0077デフォルトの名無しさん
2007/05/02(水) 10:47:33つーか、ExelでCSV保存しなおすことができるよね
007871
2007/05/02(水) 11:20:43あ、ネタだったんですか・・・。
でも、分かる人には四声で表現した方が伝わりやすいですね。
>元々英語なんだから日本語にした時の発音なんてそれぞれじゃね?
それもそうなんですが、例えばWordとかExcelとかだと第1声に近い感じのが主流ですよね。
Javaにもそういう主流の発音があるのかなぁ、と思ったので。
どうでも良いと言えば、どうでも良いんですけど
以前、Word、Excelの発音が第4声に近い感じの人が
「WordとExcelぐらいできますよ〜」と自身満々に言ってた割りに全然使えなくて
「使い慣れてる人はあんな発音しないよな・・・」みたいな印象をみんな持ってたので
ソフトの発音と言えどもバカにはならないな、と思ってたんですよね。
もし主流の発音があるのなら今のうちにそっちにしとこうと思って質問したんですが、
って、ものすごく長くなってすみません。
発音気にする前にワニの本読みます。
0079デフォルトの名無しさん
2007/05/02(水) 11:28:47( c == 'A' )
がアザラシに見えてきます。どうすれば良いんでしょうか?
0080デフォルトの名無しさん
2007/05/02(水) 12:32:24定数を定義する。これで'A'がメソッドの中に現れることはない。例えばこう。
public static char ^ω^ = 'A';
0081デフォルトの名無しさん
2007/05/02(水) 12:52:350082デフォルトの名無しさん
2007/05/02(水) 13:04:250083デフォルトの名無しさん
2007/05/02(水) 13:09:33>>29あたり見れ
0084デフォルトの名無しさん
2007/05/02(水) 13:12:28ありがとうございます!
0085デフォルトの名無しさん
2007/05/02(水) 13:12:35くせる え
どっちとも読むと思われ。
0086デフォルトの名無しさん
2007/05/02(水) 14:06:48( c == ^ω^ )
どう見ても、アザラシです。ありがとうございました。
008782
2007/05/02(水) 14:27:47StringにYYYY/MM/ddの形で文字列が入ってることが前提だとどうすればいいでしょう?
0088デフォルトの名無しさん
2007/05/02(水) 16:41:51あのなぁ>>29が回答だなんて誰も言ってないだろ?
ある程度ヒントが出てるんだからクラス名使って自分で調べろよ。
その上で何が分からないのかを聞けよ。
もしも自分なりに調べた上で質問してるなら
何を何処まで調べて、何が分からないんだ?
0089デフォルトの名無しさん
2007/05/02(水) 16:48:52http://java.sun.com/javase/ja/6/docs/ja/api/java/text/DateFormat.html#parse(java.lang.String)
http://java.sun.com/javase/ja/6/docs/ja/api/java/text/SimpleDateFormat.html#parse(java.lang.String,%20java.text.ParsePosition)
0090デフォルトの名無しさん
2007/05/02(水) 21:05:17csvファイルに変換したいのだが・・・。
どうしてもcsv変換後は前と(セルの中身)配置が違う。
どうしたらいいんだ〜!誰か・・エレガントなロジックをおしえてくれぇぇ!!
読み込みにはPOIを使用してます。
0091デフォルトの名無しさん
2007/05/02(水) 21:11:410092デフォルトの名無しさん
2007/05/02(水) 22:14:41何か手軽にデバッグできるようなのありませんか?
C(win32api)ではダイアログボックスがすごく便利でしたが、
それに相当するようなものないかなーと
0093デフォルトの名無しさん
2007/05/02(水) 22:18:46javax.swing.JOptionPane#showMessageDialog とか?
素直にNetBeansとかEclipseみたいなIDEの
付属のデバッガ使った方が良いような気もするけど。
0094デフォルトの名無しさん
2007/05/02(水) 22:45:58なぜか付属のデバッガのことを忘れてましたw
ありがとうございました。
0095デフォルトの名無しさん
2007/05/02(水) 22:58:210096デフォルトの名無しさん
2007/05/02(水) 23:09:47共有メモリとかは標準にはないけど、NIO方面になんかあったよーな気も……
0097デフォルトの名無しさん
2007/05/02(水) 23:10:08ソケット通信とか色々あるけど
0098デフォルトの名無しさん
2007/05/02(水) 23:31:37どうすればいいでしょうか?
0099デフォルトの名無しさん
2007/05/02(水) 23:35:140100デフォルトの名無しさん
2007/05/02(水) 23:35:440101デフォルトの名無しさん
2007/05/02(水) 23:47:47■ このスレッドは過去ログ倉庫に格納されています