Java入門・初心者質問スレ Part.3 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/04/04(火) 20:41:11.59ID:y0EcmGB0
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.2
http://echo.2ch.net/test/read.cgi/tech/1478863511/
507502
垢版 |
2017/05/24(水) 00:25:16.54ID:PoyHH2+7
レスをくれた方、ありがとうございました。
>>506の方のリンクやスッキリJava実践編を参考に改良してみたいと思います。
2017/05/24(水) 17:28:31.44ID:rgjqqiZm
https://ideone.com/TgG170

配列の中身を拡張for文表示させようとした際に
上記のように上手く行かないのですが、なぜなのでしょうか?
2017/05/24(水) 18:14:51.41ID:oppUfTVj
>>508
System.out.println(i);
2017/05/24(水) 18:51:24.14ID:NmDuToTQ
>>508
その文脈でのiはループ変数ではなく配列のそれぞれの要素そのものだから、>>509の書き方をすればいい
まぁそもそもループ変数じゃないんだからiなんて名付けちゃいかんね
nくらいにしとくといいよ
2017/05/24(水) 19:16:31.99ID:rgjqqiZm
>>509>>510
ああ、ループ変数ではなく、そのまま要素になるんですね
混同してしまいました
勘違いしないようにもっと分かりやすい名前をつけるようにします

ありがとうございました!
2017/05/24(水) 19:57:10.67ID:2FV//qQH
拡張for文をちゃんと理解して
numsから要素取り出してるだけだから
iは1,2,3でnum[i]は2,3,範囲外例外になってるだけだよ。
2017/05/24(水) 23:15:42.47ID:CMr8dFBK
propertiesファイルを読み込んで、そこからenumを生成するようなことは可能ですか?
つまり

#Animals.properties
enums=DOG,CAT,HUMAN, ...

と書かれたファイルを読んで

enum Animals {
    DOG,
    CAT,
    HUMAN,
    ...

となるようにしたいのですが
514デフォルトの名無しさん
垢版 |
2017/05/24(水) 23:21:34.43ID:0Qc+9z9K
   ∩___∩
   | ノ      ヽ
  /  >   ● |    ムリ☆
  |    ( _●_)  ミ
 彡、    |∪|   )
/      ヽノ //
ヽ|       /
 |       /
 ヽ /  /
  / /ヽ
(´_ /ヾ_)
2017/05/24(水) 23:30:40.23ID:CMr8dFBK
やはり無理ですよね・・・
ありがとうございました。
2017/05/26(金) 09:43:02.44ID:AcHukEBi
型のメソッドdatetime(Timestamp)は引数(Timestamp)に適用できませんって出るんだけどどうしたらいいのか教えてください
2017/05/26(金) 12:02:24.51ID:eKd8m2Nz
適用できないのでどうしようもありません
2017/05/26(金) 12:47:00.31ID:7lZclfT9
違うpackageのTimestampを引数に使ってるんじゃね?
2017/05/26(金) 12:52:15.67ID:R5Fz6uU5
ideoneにでもソース上げた方が早そう
2017/05/26(金) 13:53:37.24ID:AcHukEBi
>>518
うん、違うパッケージで書いたゲッター、セッターに値を入れようとしてる
2017/05/26(金) 14:15:00.54ID:eKd8m2Nz
アホの子かな?
2017/05/26(金) 14:23:54.10ID:AcHukEBi
ごめん、間違ってた同パッケージ内の他クラスに値を入れようとしてるんだ
2017/05/26(金) 15:05:41.68ID:AcHukEBi
解決しました。どうやらTimestampのimportが間違ってたみたい
2017/05/26(金) 17:56:19.31ID:jskRO0Qi
FFT の本を買って読むのが一番だと思うが、Java で出版されているのはあるのかな?
https://www.amazon.co.jp/dp/4789830322/
2017/05/27(土) 05:57:17.98ID:IXLLFPSU
テキスト読み始めて1ヶ月が経過した初心者なのですが
プログラムを書く練習の為にお題や解答等が
記載してある良いサイトがあれば教えて頂けないでしょうか。
2017/05/27(土) 06:40:26.62ID:I4+BI8Pi
>>525
AOJ
2017/05/27(土) 17:51:11.88ID:3U461hCt
新わかりやすいjava入門編というものを進めてきてオブジェクト志向に入り案の定つまづきました
そもそもクラスとメソッドというのがよくわかりません。色々なサイトを見ているとクラスというのはオブジェクトの設計書なる説明が目立ちます
HelloWorldなりif文なりをクラスの中に書いてきましたけど別にオブジェクトの設計書なんて作った覚えがなくてこれはどういうことかと
メソッド(=関数)がまとまったのがクラス(=プログラム)で、クラスがまとまってパッケージ(=大きなプログラム)になるくらいの認識だったのですが……
2017/05/27(土) 18:03:31.28ID:WiwmRK76
ただメソッドをまとめたものじゃなくてクラスのインスタンス内にはフィールドによる状態があるからね
2017/05/27(土) 18:28:20.46ID:5U21Fkdq
クラス=実在しない脳内の中の紙切れ。設計書でも何でもない
インスタンス=実在する紙切れ。いくらでも複製可能
2017/05/27(土) 18:43:41.59ID:5U21Fkdq
static修飾子=脳内の紙に思い描いただけでそれにアクセスすることができる魔法の言葉

つまりウンコ変数やチンコ変数またはマンコメソッドなどを
脳内で想像しただけで既に実在することになるが複製はできない
2017/05/27(土) 20:45:17.11ID:899ucGB1
>>526その他の方
525の人ではないですが、
日本語のサイトでは無いですかね?英語が読めないもので…。
2017/05/27(土) 20:46:45.03ID:WiwmRK76
AOJなら一部ページ除いてちゃんと日本語が用意されてるよ
2017/05/27(土) 20:47:26.42ID:bQ1clPq0
>>531
https://paiza.io/ はどうだったかな?前に問題解いた記憶があるんだが、答えはあったかどうか忘れた。
2017/05/27(土) 21:20:33.59ID:3U461hCt
>>528->>530
説明ありがとうございます。さっぱり解らないのでやはりjavaは自分には早かったようです……
2017/05/27(土) 21:37:32.99ID:583uXQeo
プログラマで英語読めると読めないじゃ得られる知識に天と地ほどの差があるから、真面目に英語覚えた方がいいぞ。
2017/05/27(土) 21:41:43.89ID:HQTdzCti
>>531
>>348
2017/05/27(土) 21:54:13.93ID:WqZ7Atlq
>>531
会津大学が運営だぞ……さすがに日本語対応してることくらいは気づいてくれ
538531
垢版 |
2017/05/27(土) 22:33:43.16ID:899ucGB1
レスをくれた方、ありがとうございました。

>>532
よく見たら日本語にできました、すいません。

>>533
このサイトも日本語にできますね。ありがとうございます。

>>535
単語を覚えるのが苦痛なんです…。

>>537
確かにu-aizu.ac.jpって書いてありますね。
URLに気付かないとは…自分自身に笑っちゃいました。
2017/05/27(土) 22:45:08.47ID:Cnbgg+tR
>>538
むしろ単語はコード読んでたら普通の人より知ってるだろ。。。
2017/05/27(土) 22:50:09.90ID:aR8Z7uvM
英語読めると海外サイトのQ&Aが原文で読めるっていうのが凄いありがたいからな
大概ググると海外で既に答えが出てる問題だったりするし
541531
垢版 |
2017/05/28(日) 00:55:35.48ID:cBtiXtru
>>539
コードに出てくる単語には詳しくなっても、専門用語に関してはあんまり…。
記憶力に自信が無い方なので…。

>>540
そうですか、それはメリットですね。
でも今から英語をマスターするなんて俺には無理でしょうね…。
2017/05/28(日) 00:59:02.60ID:7JGA0U31
34歳、発達障害の無職ですが…6 [無断転載禁止]©2ch.net
http://tamae.2ch.net/test/read.cgi/prog/1495077839/
543531
垢版 |
2017/05/28(日) 01:12:07.04ID:cBtiXtru
失礼します。

>>536 >>542
リンク貼るの止めてもらえませんか?ニーズも無さそうですし。
2017/05/28(日) 01:18:18.20ID:1i8XYM/R
問題とかアルゴリズムにやたら拘ってるけど
関数分割もできないレベルの奴がそんなもの追い求めても時間の無駄だって
ずっと教えてやってるのに一向に聞く耳持たないよなお前
2017/05/28(日) 05:51:20.33ID:oCI88hgR
>>541
マスターするというほどでなくても大丈夫。とにかくわからない単語が出てたらコピーしてすぐググれ。意味出て来るから。
2017/05/28(日) 09:34:28.95ID:7JGA0U31
>>543
参考にします。
2017/05/28(日) 16:33:34.89ID:x9tOFMEC
教えてやってんのに無理無理ばっかりじゃもう教える気にならんわ
548デフォルトの名無しさん
垢版 |
2017/05/28(日) 17:02:24.77ID:JNmEYY0a
(´・ω・`)みんながおすすめしてたからスッキリわかるJAVA入門注文しました
これ分厚いけどがんばって読んだらプログラマーになれるの?
みんなはひと月ぐらいで読み終わるの?
http://i.imgur.com/eiBgULb.jpg
2017/05/28(日) 17:15:31.02ID:x9tOFMEC
少しプログラミングの経験があるなら1週間あれば読み終わる
ただ読むだけじゃ役に立たない 自分で実際に書いて動かしてみないと
2017/05/28(日) 17:35:16.55ID:3VcyGTAo
>>548
読むと言うよりは実際にソースコードを動かしながら勉強していく
ついでにIDEも導入して、実際に開発してる気分でやっていくとテンションが上がる上
IDEの使い方も理解できて一石二鳥
2017/05/28(日) 17:50:43.69ID:vFbXjviW
クラスがBTOパソコンのカタログスペックみたいなもんでメモリだのハードディスクの容量だの指定して注文して届いたPCがインスタンスみたいな理解したんですけど大丈夫ですかね
ただそうなると本でオブジェクト指向の手前までに載ってるプログラムもクラスってなんでクラスなんです?例えばただのHelloWorldとか
インスタンス生成しないならクラスである必要でないというかそもそもクラスじゃないんじゃないかと思うんですけれど
2017/05/28(日) 17:52:43.55ID:1i8XYM/R
スッキリはホントわかりやすいと思うわ
そこら辺のゴミみたいな入門書とは雲泥の差だから宣伝しなくても
口コミで勝手に売れて作者も印税ウハウハだろうな
元々ある程度Java触ったことある奴なら1日で読み終わる
553デフォルトの名無しさん
垢版 |
2017/05/28(日) 17:53:47.81ID:JNmEYY0a
>>550
>>549
(´・ω・`)そうなんやー
じっさいにやりながらですね
がんばります
2017/05/28(日) 18:00:25.93ID:1i8XYM/R
HelloWorldが出力されてる時点でインスタンスが存在するんだが
2017/05/28(日) 18:43:34.75ID:QwjzxVOm
作家の座談会によると、
スッキリは、無名の著者が、2, 3年掛かって作ったとか聞いた

イラスト代とか、途方もなく、お金が掛かっているプロジェクト。
大赤字からスタートしてるんだろ

無名の著者で、売れるかどうかも、分からないような本だった

理由は知らないけど、スッキリの編集者は、転職したらしい
2017/05/28(日) 18:53:19.68ID:x9tOFMEC
>>554
mainメソッドにのみ記述した場合はインスタンス作成されませんが
2017/05/28(日) 19:37:02.55ID:1i8XYM/R
メインメソッドが既にインスタンスなんだが
バカなんだから思い込みだけでレスつけるなよ阿呆
インスタンスの定義が何かわかってんのかお前
2017/05/28(日) 19:41:04.59ID:wvAEkP6f
>>555
だから元を取るために必死にダイマしてるの?
2017/05/28(日) 19:44:08.81ID:rKdLC74L
>>557
知ったかで人を阿呆呼ばわりするのはどうかと
メインメソッドにstaticって付いてるのの意味分かってる?
2017/05/28(日) 19:45:36.04ID:x9tOFMEC
>>557
なんでいきなりキレられてるのか全然わかんないんだけど
メインメソッドがインスタンスになることはできないよ?
2017/05/28(日) 19:47:27.86ID:1i8XYM/R
クラスローダーがmainメソッドのあるクラスを読みこんだ時点で
mainメソッドがインスタンス化するんだよ阿呆
小学校からやり直して来いアホども
2017/05/28(日) 19:50:14.15ID:1i8XYM/R
メモリの概念すらわかってなさそうな馬鹿しかいないとかビックリだわ
HelloWorldは魔法の言葉か?w
2017/05/28(日) 19:54:14.22ID:rKdLC74L
メソッドがインスタンス化で草生えるわ、JavaScriptかってのw
2017/05/28(日) 19:55:52.87ID:tr4rluHU
>>560
Appクラスにmainがあるとしたら、mainはApp.classというひとつしか存在しないインスタンスのメンバーだよ
2017/05/28(日) 19:55:55.36ID:rKdLC74L
まあクラスオブジェクトをインスタンスって言うならそうだろうけどな
2017/05/28(日) 20:03:51.11ID:1i8XYM/R
インスタンスじゃなかったら何なんだよ?wwwww
メモリ上に実態がないのにアクセスできんのか?www
専門学校生レベルの奴はチンポでも弄ってろよ阿呆
567デフォルトの名無しさん
垢版 |
2017/05/28(日) 20:15:26.83ID:qHRbOIzL
>>566
聞く前に自分で考える癖を付けようよ
568デフォルトの名無しさん
垢版 |
2017/05/28(日) 20:57:22.72ID:VccFyu7h
>>554
自分の書いた部分以外では、な。
569デフォルトの名無しさん
垢版 |
2017/05/28(日) 21:04:50.30ID:VccFyu7h
>>566
涙拭けよ
570デフォルトの名無しさん
垢版 |
2017/05/28(日) 21:35:45.78ID:QPUrPhGM
Javaから入るのはよくないけどな。
2017/05/28(日) 22:58:57.33ID:vFbXjviW
>>554
new クラス名 ってやって初めてインスタンスができるのではないのですか
2017/05/28(日) 23:00:44.44ID:Y/jTFKWE
>>570
どういうところがよくないの?
2017/05/28(日) 23:02:53.89ID:Y/jTFKWE
>>571
ライブラリ内部でインスタンス作ってるケースも普通にあるからね
newを自分で書くときは、あくまで自クラスでインスタンス作るときの場合に使うってだけ
574デフォルトの名無しさん
垢版 |
2017/05/28(日) 23:08:25.60ID:QPUrPhGM
>>572
コンピュータとオブジェクト指向プログラムが乖離しすぎているから。
2017/05/28(日) 23:26:56.70ID:6qJqAaY9
>>574
それJava云々じゃなくてオブジェクト指向自体に疑問を呈してるってことだろ?
2017/05/28(日) 23:36:35.46ID:wvAEkP6f
文脈的には単に初心者が手続き型プログラミングとオブジェクト指向型プログラミングを
一気に覚えようとするのは好ましくないくらいのニュアンスじゃないの
2017/05/29(月) 00:27:00.16ID:lFCv8yRy
オブジェクト思考言語が手続き型言語ではないという説は初めて聞いた
2017/05/29(月) 00:45:21.43ID:KqfCApyh
>571
インスタンスって言葉に惑わされてるだけ
mainメソッドという処理を行うためのstaticな領域は既に存在する
その中で書かれた処理は順次あらたに領域が確保されていくだけ
処理を行うための領域が存在したないただのクラスはnewして初めて領域が確保される
2017/05/29(月) 01:13:01.57ID:JZ+YO2S6
staticの概念が難しい・・・・・・
言われてる事は分からんでも無いんだけど、理解出来てる気がしない
2017/05/29(月) 08:27:06.94ID:C0b3SugI
int[]よりArrayList<Integer>の方が型安全ですが、固定長なら配列の方が高速に動作しますよね?
普通はどちらを取るものですか?
2017/05/29(月) 08:51:58.84ID:BkgkdtpP
型安全とは?
2017/05/29(月) 10:09:34.31ID:krahuleL
>>578
入門者にstaticとか領域とか申されましても……
待ってくれたまえ ことばの洪水を ワッと いっきに あびせかけるのは
583デフォルトの名無しさん
垢版 |
2017/05/29(月) 10:17:19.00ID:QVs41rDP
>>581
<>でクラス指定しとくと他のクラスのインスタンスへの参照入れられなくなるってことじゃね?
2017/05/29(月) 10:30:59.28ID:SygdXyO8
>>580
普通はどちらかのみ使うではなく、用途によって使い分けるじゃね?
2017/05/29(月) 11:00:42.17ID:xnEvchj+
>>584
Effective Javaでは配列はあまり推奨されてないようなので、実際のところどうなのかなと思いまして
2017/05/29(月) 12:47:36.03ID:wRfxx2EJ
>>580
なにをもって配列の方が速いって言ってるのか知らないけど、ArrayListも中身は配列だからw
587デフォルトの名無しさん
垢版 |
2017/05/29(月) 13:17:24.11ID:xpUPwHwO
>>585
しかし ArrayList は文字通り中で配列使ってるよ。
なんだったらソース見てみな。
588デフォルトの名無しさん
垢版 |
2017/05/29(月) 13:17:59.69ID:xpUPwHwO
か、かぶった。リロードし忘れた。とほほ。
589デフォルトの名無しさん
垢版 |
2017/05/29(月) 13:18:05.22ID:6ZDN/iGx
>>586
コレクションだよな。
590デフォルトの名無しさん
垢版 |
2017/05/29(月) 13:20:40.27ID:6ZDN/iGx
>>586
配列のようにしか使わないなら配列の方が早いだろう。
591デフォルトの名無しさん
垢版 |
2017/05/29(月) 13:54:37.23ID:WVHDxzCz
「スッキリわかるJava入門」インプレス
昨日購入しまして、早速取り組み開始。
130P程読み進み、例題で「数あてゲーム」を書けってのがありまして、
それを何も見ないで考えて書いて出来上がり走った時の達成感
[ヵンド→]*☆*ヽ(*´Å`*)ノ*☆*[ウレ千→]
この気持ち忘れず最後まで読破します。

チラ裏失礼
2017/05/29(月) 15:08:34.74ID:qlUWK/sD
次はデバッグの楽しさだなw
2017/05/29(月) 16:59:09.15ID:npKTVoCQ
普通のArrayよりArrayListばっかり使ってるわ
可変長の配列の方が個人的にイメージしやすいし

普通の配列は書く時は直感的だけど、ArrayListでは使えるメソッドが使えなかったりするから不便でしょうがない
594デフォルトの名無しさん
垢版 |
2017/05/29(月) 18:40:35.39ID:s4hVHfzU
お疲れ様です。
今度、springでwebアプリケーションの業務
をすることになり2週間程学習をしているの
ですが全く理解出来そうにありません。

自学しようにも、インターネットの情報は
少なく感じますし、spring究極入門という本も
買ってみたのですが、何ヶ月かかるか
わからないほど自分には難しいです。

どのように学習を進めて行けばいいでしょうか?
2017/05/29(月) 19:00:48.24ID:hK31qQAt
基本的な事という事を承知の上で質問いたします
nextInt();で生成した乱数が 0〜10だった場合はこの処理をそうでなかったら10〜20かチェックそうでなかったら...
という処理は可能なのでしょうか...?
r = New Random()
for(int s = 0; 10 <= s; s++){
if(s = r){
//処理...
}
}else for(...){
//処理
}
と書きたいのですがelse for が構文エラーになってしまいます....
何か他の方法があるのでしょうか
2017/05/29(月) 19:16:34.05ID:JOJKTbqr
>>595
なんでforループになるのかわからん
書いてることそのまま翻訳したらこうならねえ?

int r = new Random().nextInt(21);

if ( r <= 10 ) { /* ... */ }
else if ( r <= 20 ) { /* ... */ }
2017/05/29(月) 20:58:21.92ID:KqfCApyh
正直フレームワーク系の本って買うだけ金と時間の無駄
最低限アノテーションの使い方とインジェクションの作法覚えて
ググりながらspringプロジェクトをローカルで作成して適当に
簡単な認証システムでも作ってりゃ覚えるだろ
springつってもいくつか種類あったと思うけど
2017/05/29(月) 22:54:19.91ID:hK31qQAt
>>596
すいません説明不足でした、100ならこの景品、80〜99ならこの景品、60〜79ならこの景品、というようなコードを書きたいのでそれでは思い描いた通りにならないのですよ...
for(int s = 0; s <= 100; s++){
if(r = s){

//処理

}
}else for(int t = 101; t <= 200 ; t++){

//同上
}
というように書きたいのです...
2017/05/29(月) 23:15:03.72ID:npKTVoCQ
>>598
そもそもelse forなんて構文無いだろ
書くならこれで良いだろ?

package test;
import java.util.Random;
public class Main {
public static void main(String[] args){
Random rand = new Random();

int n = rand.nextInt(100);
System.out.println(n); //デバッグ用に表示

if(70 <= n && n <= 100){ //70~100まで大当たり
System.out.println("大当たり!");
}else if(40 <= n && n < 69){ //40〜69まで中当たり
System.out.println("中当たり!");
}else if (20 <= n && n < 40 ){ //20〜39まで小当たり
System.out.println("小当たり!"); // 19以下ははずれ
}else{
System.out.println("外れ");
}
}
}
2017/05/29(月) 23:34:58.26ID:9PSXRaA2
>>594
最初にこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

Spring Framework 4 プログラミング入門、掌田津耶乃、2014

アスペクト指向も出てくる
2017/05/29(月) 23:40:17.48ID:KqfCApyh
評価2.5のゴミみてぇな本を勧めるなよwwww
目次見ただけでゴミってわかる
こういう読むだけたいして意味も価値もない無駄な知識を入れようとするから
フレームワーク関連の本は糞で初心者はさらにわからなくなるんだよ
2017/05/29(月) 23:48:53.76ID:hK31qQAt
>>599 様の通りにやってみたところ正常に動作しました、
こんなバカの質問に答えていただきありがとうございました
2017/05/29(月) 23:53:29.49ID:r7OgtnEw
>>601の話聞くよりは本読んだほうがマシだと思う
604デフォルトの名無しさん
垢版 |
2017/05/30(火) 00:16:24.33ID:xiJHA6at
>>603
ただのあの本は前提知識がある人向けただからな。
2017/05/30(火) 00:22:56.26ID:HpOG2ZPb
掌田は地雷だから
2017/05/30(火) 00:35:53.61ID:yvdd5Rk1
フレームワークの本に3000円とか金ドブもいいとこ
しかも3年前の生ごみとかありえんわ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況