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

サイザー専用JAVA演習場

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/12/08(金) 18:50:35
サイザーにJAVAをやさしく教えてあげるスレです。
0237サイザー 光太郎 ◆rbhHqF51rI 2006/12/16(土) 21:41:07
すみませんでした。 昨日の夜質問を書き込んでPC直ぐシャットダウンしたんで
あんなにレス&俺のレスを待ってる方々が居た分かりませんでした_(。_。)_
0238デフォルトの名無しさん2006/12/16(土) 21:58:36
まずは、書き込みのボタン押す前に読み直してみて、
誰にでも伝わる文章になっているか気を付けような。
0239デフォルトの名無しさん2006/12/17(日) 02:28:39
>>235
何いいたいのかわからないけど、とりあえず。

なんですぐ答え聞くのよw
上のレスで何度も何度も何度も何度も出てるけど、自分で考える力養いなよ
0240デフォルトの名無しさん2006/12/17(日) 07:20:40
>>237
おはよ、サイザー。
>>236が「自己中」って言ってるのはそういう意味じゃないと思うよ。
煽りっぽいけど、今一度自分を振り返ってその言葉の意味を考えてみたら?

何やってて>>235になったのかはわからないけど、なんで数字だけ書くのさ…。
ちなみにエラーが出た時って、そのエラーの特徴的な所をググると意外なヒントが見つかる時もあるよ。
今回のはどうか知らないけどさ。

ひとりで勉強してるとつまづいてばかりでなかなか進まないよね。
でもここで聞く前に、ググったり本を読み返したりフローっぽいの書いて流れを確認したり、
ちょっと気分転換してから考え直すなり、1日くらい自分だけの力で頑張ってごらん。
それがそのまま自分の力になるから。がんばれ。
0241サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 09:08:01
\65373 javaでググったらエラーコードの一覧見つかった。
\65373だけでググ」ってたから通販サイトしかヒットしなかったんだorz
0242デフォルトの名無しさん2006/12/17(日) 09:15:42
>>241
おめでと、サイザー。一歩前進だね。よく気付けました。
そうやって欲しい答えを見付けやすいように検索しなくっちゃね。
0243サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 12:45:38
戻り値について質問なんだけど
class car{                            1
int num;                             2 
double gas;                            3 
int getnum(){                           4  
System.out.println("ナンバーを調べます");             5
return num;}                            6
double getgas(){                          7
System.out.println("ガソリン量を調べました");           8 
return gas;}                            9
void ng(int n,double g){                     10 
num = n;                             11 
gas = g;                             12
System.out.println                        13
("車のナンバーを"+num+"ガソリンの量を"+gas+"にしました");}}   14 
以下略
6と9の文は11と12でnとgに変換されて10の文の値を以下略に送ってる
って解釈で良いの? 激しく戸惑ってる;
0244サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 12:53:59
これは俺の推測だから合っててもレスしてね
0245サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 13:06:39
すまん以下略も張っとく
class sm23{
public static void main(String args[]){
car car1 =new car();
car1.ng(1234,20.5);
int number = car1.getnum();
double gasoline = car1.getgas();
System.out.println("車からサンプルを調べたところ");
System.out.println("ナンバーは"+number+"ガソリン量は"+gasoline+"でした");}}
0246デフォルトの名無しさん2006/12/17(日) 13:23:36
サイザー、System.out.printlnを使って変数内の数値の動きを追い掛けてごらん。
0247サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 13:33:07
反映されるプロセスを理解しないと覚えれないんです
0248デフォルトの名無しさん2006/12/17(日) 13:35:36
>>247
だからそれはここで聞かずに自分の手と目で確かめなよ…。
0249サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 13:37:36
car1.ng(1234,20.5)をいじるんですよね?
0250サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 13:44:31
ごめ 分かった気がする
0251デフォルトの名無しさん2006/12/17(日) 13:48:41
>>250
よっしゃ、ひとりでよく理解したじゃん。その調子でがんばれ。

今日は日曜だから人いないな。ふたりでチャットしてるみたいだw
0252サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 13:52:25
いあいあSystem.out.println入れるところ 戻り値についてはまだ・・・
0253サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 14:00:44
わかんねーorz 検索の旅に出よう・・・
0254サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 14:14:11
ネットじゃ余計分からんねぇー;;;;;すみませんけど
System.out.println入れるところヒントください
0255サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 14:42:37
■引数の値渡し(intなどのプリミティブ型)

引数として渡した場合、渡した値のコピーがメソッドに渡ります。

メソッドに引数として1000円を渡した場合、

メソッドの呼び出し先で800円使えば、呼び出し先では残金200円です。

しかしメソッドの呼び出し元では、残金は1000円のままです
みーつけた(*ε* )
0256デフォルトの名無しさん2006/12/17(日) 15:44:34
>6と9の文は11と12でnとgに変換されて10の文の値を以下略に送ってる
>って解釈で良いの? 激しく戸惑ってる;

なんかよくわからん。
0257サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 16:03:38
率直に言うと何で
int number = car1.getnum();
double gasoline = car1.getgas();
これの後、戻り値の外{}外で行われてる処理まで反映されるのか聞きたいの
0258Java使ってるSEPG ◆jG/Re6aTC. 2006/12/17(日) 16:48:02
とりあえず、他人にわかりやすい日本語が使えるようになろうな。
それと、ソースコードの改行位置が不愉快すぎる。
参考書にそんな改行でコードが掲載されているのか?
さらに言うが、行番号は行の末尾じゃなくて行頭につけるのが主流だ。

で、>>257の意味をわかりやすく別の言葉とを交えて説明しる。
意味不明すぎるぞ。
あと、何度も言ってるが、「予想していた結果」はどうなると思ってたんだ?
0259サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 17:01:26
予想では
のSystem.out.println
("ナンバーは"+number+"ガソリン量は"+gasoline+"でした");}}
number,gasolineの値が設定されていないからコンパイルすらできない。
改行コードの}は自分自身でやりました参考書では 
{ 
  文
 }
にしっかりなってます
0260デフォルトの名無しさん2006/12/17(日) 17:05:11
…毎回サイザーの言ってることが難解で凹む…。
0261サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 17:09:37
int number = car1.getnum();
double gasoline = car1.getgas();
これの後、戻って returnの外{}で行われてる処理まで
何故反映されるのかが疑問
0262デフォルトの名無しさん2006/12/17(日) 17:50:43
ん、まさか…
returnでプログラム終了とか思ってないか?

returnすると、"そのメソッド"を抜けるんだぜ?
まぁ、mainでreturnすると終了だけど…、
それ以外のメソッドでreturnすると、呼び出し元の処理に戻る。

あと、returnでは戻り値を返すことも出来る。
だから、
>int number = car1.getnum();
>double gasoline = car1.getgas();
で、numberとgasolineには値が設定されてるぞ。



にしても、相変わらず難解な日本語だ。
もしこれが仕事のメールだとしたら、業務委託は速攻解約するなぁ・・・。
0263サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 18:07:41
>>262 なるほどー そのまさかの勘違いです
解約されますかorz日本語書かなくてokな仕事、なるべく着こう・・・
0264サイザー 光太郎 ◆rbhHqF51rI 2006/12/17(日) 18:11:37
>>262 それとレスありがとうございます!。靄っとしたのが取れました
0265デフォルトの名無しさん2006/12/17(日) 18:59:56
>日本語書かなくてokな仕事、なるべく着こう・・・
みたいなことは、わざわざ書かなくても内心にとどめておけばいい。
「雉も鳴かずば撃たれまいに」ってやつだ。
0266デフォルトの名無しさん2006/12/17(日) 22:54:59
最近はインド人に仕事振ってるから気にするな。
まあ彼らは英語使えるが…
0267デフォルトの名無しさん2006/12/17(日) 23:01:09
なるほど!
サイザー専用ブリッジSEを雇えばいいのかw








って、そんなバカな。
0268デフォルトの名無しさん2006/12/18(月) 00:14:19
ちょっと聞きたいんだけど、最近の若いやつらってこういう感じで勉強するのが主流?

会社の若い奴らもこのスレとおんなじような感じで勉強したり質問してきたりするんだけど、
一向にプログラム書けるようにならない。。

たとえば>>262-263の流れでいうと、「メソッド」とか「return文」は「具体的にいうとどういう状況で使えば
よいか」みたいなことって気になったりしないんだろうか?

おれ自身はむしろ「必要性が発生してから」その後どうにかして解法を探す、みたいなサイクルで
勉強してきたんだが、このスレみたいなやりかたでプログラムが身についた奴っているのかな。
0269サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 07:54:48
return文の使い所は疑問、例文を組んでいって使いどころの例覚えるしかない
0270サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 15:57:03
リターンのメソッドで何で
class sample
{
private int num;
public void setcar(int n)
{
num = n;
}
int getcar()
{
return num
//num = n; ←これ
}
←これ(以下略)を記述しなくても良いの?理解に苦しむ;
0271JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/18(月) 16:14:46
おまいの思考回路のほうが理解に苦しむw
だが、ソースの改行がよろしくなったな。偉いぞ。


で、本題だ。
sampleクラスには2つのメソッドがあるな。
setcarメソッドはフィールドに値を設定するだけの機能、
getcarメソッドにはフィールドの値を取り出すだけの機能がある。

つまり、getcarメソッドの機能として、フィールドに値を設定する必要がないから、
>num = n;
は記述しなくていいわけだ。

もし書くのであればreturnの前に記述する必要がある。
returnすると、同じメソッド内の残りの処理は実行されないからな。
さらに、getcarメソッドでは変数にも引数にもnという識別はないから、
returnの前で記述してもコンパイルエラーになるはずだ。


ちなみに、こういうフィールドへのアクセスだけを行うメソッドをアクセッサ、あるいはgetter/setterとも呼ぶ。
オブジェクト指向言語で「カプセル化」を実現する一般的な手法だから覚えておくといい。
0272デフォルトの名無しさん2006/12/18(月) 17:45:36
サイザーってほんとに頭悪いんだな・・
0273サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 17:50:50
>>271 レスty
0274サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 18:14:46
なるほどーメソッド内で書いてる事はフィールドへフィールドバックされる
仕組みなのかー 全てが繋がったw
0275サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 18:24:18
何気なくやってたけどこりゃ予測(フローチャート書かんと
行き当たりばったりになるわ 重要な意味理解
0276サイザー 光太郎 ◆rbhHqF51rI 2006/12/18(月) 20:14:07
うわ!; クラス変数、メソッド ムツカシー
0277デフォルトの名無しさん2006/12/18(月) 20:58:25
うわ! か行、さ行 ムツカシー
と言ってるのと変わらないぞ。

日本の夜明けは遠い。
0278デフォルトの名無しさん2006/12/18(月) 22:55:24
つか>>270、何これ!
ひとつもわかってないじゃん!
0279デフォルトの名無しさん2006/12/18(月) 23:16:12
バッチファイルとかスクリプトから始めたほうがいいんじゃない?
今のところ適正ゼロ。
0280デフォルトの名無しさん2006/12/19(火) 00:53:45
まぁまぁ。
今まで自分のモチベ保つために、基礎を省いてJAVAの勉強ばっかりやってたからな。
基礎が判ってないのは当然。>>275 の段階で重要さがわかったのだから、一歩前進だろ。

つか他の言語知ってるなど基礎できてるなら、java知らなくても作ったフローが正しければ、
ぐぐった構文を肉付けしていくだけで90%までは完成できる。
あとの10%はまぁセンスかな。
0281デフォルトの名無しさん2006/12/19(火) 02:21:59
つかフロー云々の問題じゃねーだろ>>270は。

つか今日日フローが基礎ってなんだよ。うそ教えんなよ。
0282サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 08:13:07
>>281 インスタンス変数とインスタンスメソッドを計画的に組んでいかないと
滅茶苦茶になる意味ね。ご利用は計画的に。
0283デフォルトの名無しさん2006/12/19(火) 09:40:02
>>281
アツクなるな。
フロー的な考え方は基礎中の基礎。
0284デフォルトの名無しさん2006/12/19(火) 10:51:41
Cからやらしたほうがよかったかねぇ。(基礎中の基礎のフローを理解するということで)
でもこの状況だとポインタで絶対詰まるしなぁw

>>281
サイザーにクラス図書けといってもそりゃ無理だろ。あつくなるなw
0285デフォルトの名無しさん2006/12/19(火) 10:59:05
オブジェクト指向は脇に置いとけば
全部mainメソッドの中で完結させる
0286デフォルトの名無しさん2006/12/19(火) 12:39:39
まぁ今日、FFのバージョンアップだから、しばらくFF漬けでないか?w
その気力を勉強に向ければもっと早く覚えそうなのにな
0287JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 12:40:41
OOPとか実務としてフローチャートは不要・無駄うんぬん〜は当然だと思う。
しかし、サイザーのように、"そもそもプログラミングがはじめて"って香具師には、
処理の流れを意識させるフローチャートは有効だと思うんだ。
0288デフォルトの名無しさん2006/12/19(火) 12:56:14
基本的な考え方すらわからなかったら、フローチャート必要かもね。
OOPったってメソッドの中は手続きなんだし。
0289JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 13:18:03
まさにそういうことでつ。
0290サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 13:22:45
なるほどーInteger.parseIntとか何故だ!と思ってたが、クラスライブラリー
なのかー。w 覚えるしかないってことね。orz
0291デフォルトの名無しさん2006/12/19(火) 13:27:19
クラスライブラリの意味がほんとにわかってるのか・・・・怪しいなぁ・・・
0292デフォルトの名無しさん2006/12/19(火) 13:31:55
サイザー・・もう少し日本語を磨け。。
意味がわからん
0293JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 13:38:54
クラスライブラリっちゃクラスライブラリなのかもしれんが・・・

標準APIをクラスライブラリって強調することは、
あんまりないとオモタんだが、皆様方はその辺どうよ?
0294デフォルトの名無しさん2006/12/19(火) 13:43:59
>>293
同意。

サイザーは自分にとって難しい言葉羅列してわかった気になるという、
悪い癖があるようにも思うのだが・・・

日本語も意味不明になるのがなぁ・・・。
プログラムは文法だぞ大丈夫なのか?と言いたくなることが。
0295サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 13:46:12
javaをコンパイルするファイルをダウンロードした時に一緒についてきた、
ソース書く上での言葉。< クラスライブラリー 
0296JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 13:57:42
おーい、誰か!>>295を日本語にコンパイルしてくれないかぁ?

まぁ、自信が無いうちは知ったかぶりするな。
俺みたいな青二才から見ても片腹痛い。

何かを語るのは、意味をかみ締めて味わいつくし、
自分の言葉でそれを説明できるようになってからだ。
0297サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 13:59:45
捕捉 簡単な記述である定義してないメソッドを呼び出すことのできる、
便利袋
0298サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:02:22
これなら60点はあるだろw
0299JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 14:06:34
残念ながら、せいぜい10点。
(100点満点だよな?)
0300サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:08:09
正解はもっと勉強してから言いますよ>.>
0301サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:17:44
今まで何気なく使ってた奴等は無意識にクラスライブラリーから
呼び出してたのか・・・。
はめられた気分だ。
0302デフォルトの名無しさん2006/12/19(火) 14:37:02
せめて、クラス、メソッド(JAVAはこの呼び方だったよな)の意味を
言えてから横文字使えよ。

つかサイザーなめた態度してるとしばくぞ、マジで。
0303サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:42:04
クラスって言うのは大きいカテゴリーでメソッド言うのはクラスの中にある
小さいカテゴリー。 これじゃ駄目?
0304JAVA使ってるSEPG ◆jG/Re6aTC. 2006/12/19(火) 14:43:28
>>303
訂正。
2点。
0305サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:45:51
大まかにしかまだわからなんだよー(´Д⊂
0306デフォルトの名無しさん2006/12/19(火) 14:50:57
大まかにしかわからんのなら、
そんな言葉 つ か う な。

クラスとメソッドの答えはおまい自身が検索して探せ。
教えると力にならん。
0307サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 14:55:06
うん、javaの参考書二冊やっていく上で答えを見つけるさ
0308サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 15:22:37
ヌルポのnullが出てきたぜ
0309サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 18:30:24
BufferedReader br = new BufferedReader(InputStreamReader(System.in));
string atr = br.readLine();←これ
これはreadLineメソッドを呼び出してるって事が判明したんだけど
確かクラスメソッドの呼び出し方って
型 変数名 = クラス名.メソッド名(引数リスト)
でありませんでした?
ってことはbrがクラス名?変数だよな・・・
0310サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 18:35:04
あ、brはオブジェクトかも・・・でもクラスメソッド呼び出しはオブジェクト
使わないし・・・
0311デフォルトの名無しさん2006/12/19(火) 18:41:38
基本は大切だな。
何冊でも本読んで勉強しな。
上級者は本を沢山持ってるよ。

ここで質問するより、本とつきっきりで勉強したほうがよさそう。

期限つきで勉強しているようじゃなさそうだし。
0312サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 18:47:30
そんな事言わないで教えてくれよorz気になって集中できん;;;;;;
03133112006/12/19(火) 18:48:50
集中できない?なにいってんだ?

お前頭大丈夫か?

社会に出ても人に頼るのか?
0314デフォルトの名無しさん2006/12/19(火) 18:49:49
すこしはググレやカス、マジで・・・

C++専のJava知らん俺なのであれだが、
根本的に使い方の覚え方がまちがってると思うぜ。

brはどう考えてもBufferReaderクラスの実体だろうが。
0315デフォルトの名無しさん2006/12/19(火) 18:53:18
クラスというよりオブジェクトやインスタンスとかだな。
0316サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 18:59:27
オブジェクト.メソッド()で呼び出してるかもねString.readLineでやっても
コンパイル無理だった,理論的には合ってる筈なのになorz
0317デフォルトの名無しさん2006/12/19(火) 19:02:40
理論的にあってない。
0318デフォルトの名無しさん2006/12/19(火) 19:03:30
だからお前の素人感覚のくそにもならん理論があってるとか
そういうことは誰も聞きたくねえよw

コンパイル通らない=文法的に間違いなんだよ。
0319サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 19:04:39
readLine()メソッドってStringクラスに無いっけ?
0320デフォルトの名無しさん2006/12/19(火) 19:06:21
だ か ら 自 分 で 調 べ ろ よ。
0321デフォルトの名無しさん2006/12/19(火) 19:10:17
あったとしても クラスメソッドで何をとり出すつもりなんだ?
0322サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 19:31:04
string atr = br.readLine();の意味知ったからこれの記述に納得できない
0323デフォルトの名無しさん2006/12/19(火) 19:39:43
何をいってるか意味が分からん。
何がどう納得できなくて、どうだったら納得できるんですか
0324サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 19:43:34
readLine()がクラスメソッドなら クラス名.readLine()で呼び出せるはず
そのクラス名
0325デフォルトの名無しさん2006/12/19(火) 20:03:24
ひらがなでいいかな
くらすめそっどではない
0326サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 20:08:47
じゃあ何で定義してないreadline()を使うとキーボードからの入力を
受け付けるんだ?
0327サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 20:17:05
readline()はクラスライブラリーなんだろ?=クラスメソッド
0328デフォルトの名無しさん2006/12/19(火) 20:19:21
くらすめそっどでぐぐれかす
0329デフォルトの名無しさん2006/12/19(火) 20:22:08
まずはくらすめそっどとはなにかしらべてからだ
0330サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 20:28:28
メソッドにstatic という修飾詞が入ってると、クラスメソッドになって
クラスの外からは干渉できなくなるんだろ。?
0331デフォルトの名無しさん2006/12/19(火) 20:34:52
まだまだつまみぐいがたりないようだな
いちばんだいじなかんがえかたがぬけている。
ほんのさくいんでしらべてそこよんでみな。

それとくらすらいぶらりとくらすめそっどはいこーるではない。
0332デフォルトの名無しさん2006/12/19(火) 20:39:18
くらすめそっどといんすたんすめそっどのちがいをりかいしよう
0333デフォルトの名無しさん2006/12/19(火) 20:44:34
こたえをかいてもおもしろくないだろうから
いちにちかけてしらべてみたらどうだ。
0334サイザー 光太郎 ◆rbhHqF51rI 2006/12/19(火) 20:58:49
日本語くらい分かる 馬鹿にするなー(ノ ゜Д゜)ノ ==== ┻━━┻
日本語で文章にするのは苦手だけどorz
0335デフォルトの名無しさん2006/12/19(火) 21:51:45
>>334
サイザー、JavaDocって知ってる?
readLine
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/io/BufferedReader.html#readLine()
String
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/String.html

トップページは↓
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/overview-summary.html
パッケージの java.io と java.lang と java.utilには目を通しておいたほうがいいよ。
0336デフォルトの名無しさん2006/12/19(火) 22:09:39
相手にされないと態度が悪くなるのは直したほうがいいぞサイザー
明らかにお前は技術で劣ってるんだから真摯に臨むべき
■ このスレッドは過去ログ倉庫に格納されています