X



Java入門・初心者質問スレ Part.4 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0078デフォルトの名無しさん
垢版 |
2017/07/15(土) 11:07:20.84ID:zmwkueqb
たとえばListの0番目に名前が入っていて1番目に住所が入っています
みたいな仕様だとインデックス直書きでアクセスするのはよろしくないかもね

最初の要素を取得するってだけなら0で良いと思う

最初の要素を取得するためのインタフェースとしては
・Stream.findFirst()
・Queue.element()
があるのでケースバイケースで
0079デフォルトの名無しさん
垢版 |
2017/07/15(土) 11:18:17.37ID:vvIOQCOR
まあデータ構造決まってるなら構造体みたいなクラスを定義するのが一番分かりやすくはあると思うけどね
0080デフォルトの名無しさん
垢版 |
2017/07/15(土) 12:35:01.54ID:ejj256V/
hash突っ込んどけば名前で扱えるからましになるのでは?
名前変わったら終わりだけどな。
0081デフォルトの名無しさん
垢版 |
2017/07/15(土) 12:36:01.21ID:ejj256V/
「に」が抜けた。「hashに」だ。
0082デフォルトの名無しさん
垢版 |
2017/07/15(土) 15:53:59.30ID:aAFD2FSQ
すいません
スッキリわかるJAVA入門でいきなりつまづきました
system.out.println(““)この中に文字を入れて文章を表示させたんですが
「次は二桁を書き足して表示させよう」となってるんですが、一桁目のsystem.out.println(““)をコピーして
改行後下に貼り付けてコンパイルしてもエラーになってしまいます
やり方が違うんでしょうがどうしたらいいかわかりません、すいません、教えてください。
0084デフォルトの名無しさん
垢版 |
2017/07/15(土) 15:58:22.33ID:qtlS5nEU
>>82
ソースコードと小一時間にらめっこして分からなかったらideoneでもpastebinでもいいからここに貼れ、話はそれからだ
というのはさておきセミコロンまでコピペした?
0088デフォルトの名無しさん
垢版 |
2017/07/15(土) 16:16:04.41ID:qtlS5nEU
>>87
エラー文の\12288を16進に直すと3000、これはUnicodeで全角スペースを表す
どこかに全角スペースが混ざってるから取り除くとおk

俺もやったなーこれw
解決に1時間くらいかかった
0092デフォルトの名無しさん
垢版 |
2017/07/15(土) 16:19:10.83ID:aAFD2FSQ
>>90
ありがとうございます

ちなみにエラー番号からエラー内容を調べる事は出来るのでしょうか?
0093デフォルトの名無しさん
垢版 |
2017/07/15(土) 16:21:09.13ID:qtlS5nEU
エラーの内容がそのまま書いてあるだけだよ、慣れればすぐに読めるようになる
0095デフォルトの名無しさん
垢版 |
2017/07/15(土) 16:47:37.67ID:ISc0zg3F
入門書を一通りやり終えた後の次はどんなことに手を出せばいいのかわからない
今はとりあえずAPI仕様を読んだりオブジェクト指向関連の書籍でお茶を濁している最中
ステップアップのフローチャートが頭に浮かばない
デザインパターンやフレームワークもやりたいけど、多分今の実力じゃ手に余るし
0096デフォルトの名無しさん
垢版 |
2017/07/15(土) 17:10:30.36ID:rsSZ04ms
>>95
何か作りたいもんがあるからJavaやってんじゃないのか。
作ってるうちに足りないもんが見えてくるから
それをやればいい。
0097デフォルトの名無しさん
垢版 |
2017/07/15(土) 17:22:44.63ID:T1g1+yar
まぁみんながみんな作りたいものがあるわけでもないよね
特に初心者なんて何が出来るかもよくわからんわけだし
0098デフォルトの名無しさん
垢版 |
2017/07/15(土) 17:48:43.67ID:qtlS5nEU
何かが作りたくて始めたわけじゃないのか…
俺は最初から作りたいものありきだったからよくわからん
0099デフォルトの名無しさん
垢版 |
2017/07/15(土) 17:54:10.13ID:ISc0zg3F
>>96
当初はAndroidアプリで音楽プレーヤーを製作したかった
でもアプリ開発入門書を読んでもコードを叩いてもちんぷんかんぷんだったからjava自体を学習し始めた
現状、デスクトップアプリとして着手しようと目標変更
そこでオブジェクト指向の理解深化やjavafxに触れたり、
OSSのソースコードを見てみたりするも絶賛五里霧中で

プログラミングに体系化された学習方法や方針があると思い込んでいる節が頭の中にあった
それがそもそもの間違いなのか
0100デフォルトの名無しさん
垢版 |
2017/07/15(土) 17:57:38.55ID:ejj256V/
何作ったらいいかわからない?
それでは俺のためにエロゲでも作ってくれたまえ。
0101デフォルトの名無しさん
垢版 |
2017/07/15(土) 18:02:19.45ID:qtlS5nEU
>>99
体系化されたものなんてほとんどないけどアルゴリズムの知識やらプログラムの組み立て方はどこに行っても役に立つから学んでおくといいかな
Aizu Online Judgeの簡単な問題でも解いてみたらどうだろう、人のコード見れるから参考にもなるし
0102デフォルトの名無しさん
垢版 |
2017/07/15(土) 18:41:44.49ID:ISc0zg3F
>>101
OnlineJudge初めて知った、やってみる


更なる問題としては頭の中にべき論が多数生まれたこと
java8だから新しく導入されたラムダ式で書くべき、デザインパターンに則るべきとか
他には、まずコンソールアプリをそれなりに作れるようになるべき等…
入門書に出てきた単語や技術・テクニックを習得しないと、
まともにプログラミングできない強迫観念にも似た考えを抱いた

だから作ることより知ることの方に比重が置かれて自己目的化しつつある本末転倒状態
0103デフォルトの名無しさん
垢版 |
2017/07/15(土) 18:55:04.65ID:qtlS5nEU
知ることはもちろんいいことだが今は考えてる暇があったら手を動かせ
クソコードを量産して初めてわかる新機能のありがたみというのもある
0108デフォルトの名無しさん
垢版 |
2017/07/15(土) 23:28:48.42ID:q4YYoqHS
>>102
書くのと知るの、どっちが欠けても良いプログラマーにはなれんよ
それにやってみればわかるがJavaの関数型インターフェースやストリームは既存の有名なデザパタと競合したりしない
0109デフォルトの名無しさん
垢版 |
2017/07/16(日) 02:57:48.81ID:1fICcUqx
>>102
知識不足ばかりが気になるなら知識の補充だけやってればいいと思う
結局さ、なにかを作りたい人は作りたいモチベを抑えられない人なんだよ
そうじゃない人がそうなろうとしても、人種が違うんだからうまくいかないよ
0110デフォルトの名無しさん
垢版 |
2017/07/17(月) 09:09:36.85ID:Ze9nWRlN
質問なのですが4GBのメモリのノートPCだと本当にAndroidシミュレータ動かないのでしょうか?
もしそうだとしたら悲しい気持ちに打ちひしがれそうなのですが
0112デフォルトの名無しさん
垢版 |
2017/07/17(月) 11:55:15.98ID:HvQCc1dg
>>110
やってみてから言えよ
環境わかんないけどうちではメモリ4Gでも動いた
つーかJavaの質問じゃなくね?
0113デフォルトの名無しさん
垢版 |
2017/07/17(月) 11:58:39.74ID:dYQc5jFE
(´・ω・`)クラス.メソッド().メソッド()
この書き方わからなかったの
最初のメソッドでクラスが返ってきて、そのクラスのメソッドをつかうときにこういう書き方するんだって
しらんかったー
ようやく読み終えたスッキリわかるJava入門には説明してなかったの
こういうメソッドふたつが並んでる書き方とかみんなは特別な説明なくても見ただけでわかるの?
この辺でプログラミングの適正とかでてくるんやろか?

それで調べてたら
クラス.メソッド().メソッド().メソッド().メソッド()
とか書くメソッドチェーンっていうのもあるらしい
これってリターンで他のクラス呼び出したらどんなものでもメソッドチェーンで書けるの?
0114デフォルトの名無しさん
垢版 |
2017/07/17(月) 12:02:33.60ID:VuxDjspY
>>111
う、う〜...

>>112
4GBでも動いたんですねっ!希望が持てます
自分でもやってみたのですがNexusでメモリー不足ですって出たもので
というかスレチですね
失礼しました
0115デフォルトの名無しさん
垢版 |
2017/07/17(月) 12:05:18.93ID:RdQgJoxw
返り値のあるメソッドを書く時、
左側に変数を用意して代入するものだと思っていましたが、
メソッドのみで書いてもエラーにならないのですね。
この場合、返り値はどこに行くのでしょうか。
無かった事にされるのでしょうか。
0117デフォルトの名無しさん
垢版 |
2017/07/17(月) 13:16:31.03ID:Uy8niamL
メソッドチェーンは、JavaScript でよくやっている。
jQuery, Underscore とか

戻り値で、this を返すように作る。
そうすれば、同じインスタンスのメソッドを、連続して呼べる

obj = obj.a();
obj = obj.b();
obj = obj.c();

obj.a().b().c();
0118デフォルトの名無しさん
垢版 |
2017/07/17(月) 15:36:43.88ID:6JtF0HSC
>>113
書ける。
0120デフォルトの名無しさん
垢版 |
2017/07/17(月) 16:09:04.23ID:6JtF0HSC
てか、streamはメソッド数珠繋ぎが当たり前だな。それできないと不便だし。
0121デフォルトの名無しさん
垢版 |
2017/07/18(火) 13:02:40.83ID:6DbTRi2A
>クラス.メソッド()
厳密に言うと、メソッドチェーンは、クラスではなく、インスタンスメソッド

そのインスタンス(this)を返すから。
bind で、そのインスタンスを束縛しているのと同じ
0122デフォルトの名無しさん
垢版 |
2017/07/18(火) 13:52:31.69ID:vumXXDez
Javascript、ネットワークセキュリティ等の知識がある人。一緒に仕事しませんか?
月50万〜
0129デフォルトの名無しさん
垢版 |
2017/07/18(火) 18:44:08.28ID:bmzbSPDE
>>126
書いてある?あ、透明部分に黒で書いてあるの?スマホで見てて背景黒になって表示されてわからなかった。
0132デフォルトの名無しさん
垢版 |
2017/07/18(火) 19:41:08.33ID:X/hWddMd
こんにちは
EclipseでMac用のプログラムを改造途中です
ttps://code.google.com/archive/p/tokyo-jogging/

WIDCOMM6.5.1.4800をインストールしたのですが、デバッグウィンドウによるとwinsockで接続しようとしているようです。
ログ中に BlueCove version 2.1.1-SNAPSHOT on winsock と表示される

wiiremoteJ.jar(ver1.6b)
bluecove2.1.1-snaposhot.jar
Win764bitでバランスWiiボードを接続
USBドングル(BroardcomBCM20702)を使用

Q1..ハードウェアドライバはこれで正しいでしょうか?
インテルUSB3.0ルートハブ
  +Broadcom BCM20702 Bluetooth4.0
    +Microsoft Bluetooth Enumerator    ←これがブロードコムにならない
      +BluetoothHIDデバイス        ←これもMSのドライバ
        +HID準拠ゲームデバイス(WiiMote)
      +BluetoothHIDデバイス
        +HID準拠ゲームデバイス(バランスWiiボード)
      +Bluetooth Remote Control
      +Bluetoothオーディオ
MS StackがwiiremoteJで必要なL2CAPプロトコルをサポートしていないので、HIDまで行けない気がします

Q2.BluecoveでWIDCOMMを使用するためには
import com.intel.bluetooth.BlueCoveImpl;
    System.setProperty("bluecove.jsr82.psm_minimum_off", "true");
    BlueCoveImpl.setConfigProperty("bluecove.stack", "widcomm");
でよろしいでしょうか?
0133デフォルトの名無しさん
垢版 |
2017/07/21(金) 16:05:04.18ID:9/NTCjMt
ここはJava”言語”しか知らない馬鹿しかいないからそんなこと聞いても無駄
0135132
垢版 |
2017/07/21(金) 19:54:39.68ID:98df5QyM
スレチですよねー
でもBTスレはハード板でもオーオタですし、他には
Java質問スレ
ttp://mevius.2ch.net/test/read.cgi/tech/1492780397/
ですかねー
Jettyも聞きたいことがあるんですが・・・
0136デフォルトの名無しさん
垢版 |
2017/07/21(金) 21:55:09.65ID:9/NTCjMt
マジレスすると2chじゃ突っ込んだ内容の質問にはまず回答なんかつかない
teratailとかで質問したほうが100倍マシ
0137デフォルトの名無しさん
垢版 |
2017/07/24(月) 22:41:42.40ID:Z9C6ox1d
知恵袋に全く同じことで困ってる人がいたんですが、

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12148864962

java3Dライブラリを使ってコンパイルして出力したjarファイルが開けない
→環境変数の設定が〜
みたいな回答で、たしかに書いてあるとおりにしたら開けたんですが、
これって誰かに渡すときにはその人にもjava3Dをインストールしてもらわないといけないってことですよね?
jarに含めたりとかってできないんですか?
0138デフォルトの名無しさん
垢版 |
2017/07/25(火) 20:57:58.57ID:pa2wyDo4
>>137
jarにjarを含めるにはクラスローダを実装する必要があるみたい
そこでEclipseですよ
Eclipseならマウスかちかちでjarを含んだjarをエクスポートできる
Eclipse製のクラスローダが用意されてる
0140138
垢版 |
2017/07/25(火) 21:31:26.48ID:TSeeDTaM
javaを触れ始めて3年位ですが簡単な事すら理解できてないへっぽこが失礼します。
とある人間が作ったA.jarの中に約40ほどファイルがあります。
そこにバグがあるのですが、jarを作った人間が多忙の為 私がそのファイルの中の調査をすることになりました。
(修正した箇所がわかりやすいよう、本来の使い方とは異なりますが継承+オーバーライドを使用し修正しています。)

メイン:main newでclassA(stringA,stringB)を呼び出し
hoge_project.dir1.classA newでclassBを呼び出し
hoge_project.dir2.classB newでclassCを呼び出し
hoge_project.dir3.classC extends でclassDを継承
hoge_project.dir3.classD こいつにエラーがありそう

エラーがありそうなメソッドを保有しているクラス"classD"を継承したクラスclassD_fixをhoge_project.dir3 に作成し、そのメソッドをオーバーライドしたクラスを入れ込んだjarファイルを作成することに成功(jar tfで確認)しました。
ですが、肝心のクラスAの継承に失敗していて 呼び出し元のメソッドが修正できず困っています。

エラーの内容はこんな感じでした。
classA_fix.java:7: エラー: クラス classAのコンストラクタ classAは指定された型に適用できません。

classA_fix.javaのソース
import hoge_project.dir1.classA;
public class classA_fix extends classA{//中身なし}

期待値:String,String
検出値:引数がありません。
理由:実引数リストと仮引数リストの長さが異なります。

ググって見たところ、メソッド自体が存在しない、もしくは引数が合わない等メソッドによる不具合が原因だと書かれていたので
念の為class classA_fixにコンストラクタっぽい感じでpublic void classA_fix(String stringA, String stringB){super(stringA,stringB)}等自分なりに色々やってみましたがうまくいかず・・・
クラスclassA_fixはクラスclassAを継承しただけで特にメソッドの上書きも行っていない何もない状態なのにこのようなエラーが出ていたため、わけが分からず困っています。
abstractは使用していません。

作成者とは連絡が取れない状況で、完成予定日もあるのでこちらで出来る限りの理由を探りたいのですが、何か良い方法はないでしょうか。
0141140
垢版 |
2017/07/25(火) 21:32:22.09ID:TSeeDTaM
>>140 の名前は140です
書き込んでる間にレス番がかわってましたOTL すみません
0143デフォルトの名無しさん
垢版 |
2017/07/25(火) 21:52:37.10ID:pa2wyDo4
>>140
スーパークラスのコンストラクタの呼び出しに失敗してるわけっしょ

> public void classA_fix(String stringA, String stringB)

これはコンストラクタじゃなくてメソッドっすよね
コンストラクタをきちんと定義すればいけるんじゃないかな
0144140
垢版 |
2017/07/25(火) 21:53:05.21ID:TSeeDTaM
>>142
説明ベタですみません。
現在エラーがでているのはclassA_fixです。
classDにバグがあるのは間違いないのですが、classDを直接書き換えるのが怖いのと、
報告しなくては行けないので、修正した箇所がわかりやすいように classD_fix.classを作成し、修正しようとしています。
classD_fixのjavacには成功(動作は不明)、classD_fix.classの生成に成功しました。
今現在そのclassD_fixを使用して動かせるように各クラスファイルを修正しようとしています。

超へぽっこで デバッグをやるのはこれが初めてでどういった方法でやるべきなのかもわからず、
メモ帳とコマンドプロンプトでやってます・・・OTL
0145140
垢版 |
2017/07/25(火) 22:01:15.35ID:TSeeDTaM
>>143 こんな感じで書いたんですが駄目でした。 私もしかして コンストラクタの書き方間違えて・・・る?OTL
package hoge_project.dir1;

import hoge_project.dir1.classA;

public class classA_fix extends classA {

public classA_fix( String string_a,String string_b){
}
}
0146デフォルトの名無しさん
垢版 |
2017/07/25(火) 22:13:58.15ID:pa2wyDo4
>>145
スーパーのコンストラクターが呼ばれてないーので
super(string_a, string_b);
これを追加すればいけるんじゃないかな
0147140
垢版 |
2017/07/25(火) 22:24:17.39ID:TSeeDTaM
>>146 その通りにやったらjavac通りました!ありがとうございます!
superせず終わらせるとそこで処理が終わるだけでエラーにはならないのかななんて思ってましたがそんなことないんですね・・・

そして何故かmainスレッドにて java.lang.NoClassDefFoundError・・・OTL寝れなさそうだ
0148デフォルトの名無しさん
垢版 |
2017/07/25(火) 23:34:14.91ID:ItvXAvCp
うげあー
私は本物の素人ですが、現場の世界は色々と恐ろしいのですね…
参考書を読んで頑張ります
0150デフォルトの名無しさん
垢版 |
2017/07/26(水) 01:30:21.01ID:f0n9OFYu
superコンストラクターを呼ばないといけないわけではないので、原因はもう少し間接的なものだろう
フルコードがないと理由は不明
0151デフォルトの名無しさん
垢版 |
2017/07/26(水) 01:32:29.52ID:f0n9OFYu
おそらく引数なしのコンストラクタだとちゃんと動かないスーパークラスなんだろう
0152デフォルトの名無しさん
垢版 |
2017/07/26(水) 04:45:03.63ID:ykAbfSKr
3年もやってて継承元の引数ありコンストラクタがサブクラスに引き継がれないことも知らんとか
当然スパクラスに引数ありコンストラクタがあればサブクラスでそのコンストラクタを定義しなくちゃならない
ほんと相変わらずびっくりするぐらいレベル低いなここ
0153デフォルトの名無しさん
垢版 |
2017/07/26(水) 06:36:14.97ID:8eztuswf
入門・初心者スレでレベルどうのこうのと言われましても…
あ、自分自身も含めてレベル低いって自虐ネタでしたか
0154デフォルトの名無しさん
垢版 |
2017/07/26(水) 07:58:47.46ID:ykAbfSKr
回答つけてる奴等もどうしようもなくレベル低い馬鹿しかいないってことだよ阿呆
お前等全員1円で投げ売りされてる入門書100億回読んでからレスつけろよ阿呆
0155デフォルトの名無しさん
垢版 |
2017/07/26(水) 08:04:51.73ID:2vJD5W5S
つまり変なのに絡まれないようにプログラミング歴は隠しとけってことだ
スレ民との約束だぞ
0156デフォルトの名無しさん
垢版 |
2017/07/26(水) 09:25:20.19ID:MMBO65WR
>>154
もっと簡単にこのスレのレベルを上げる方法がある。物凄く簡単なことだ。

それは君が回答を書くことだよ。
0159デフォルトの名無しさん
垢版 |
2017/07/26(水) 17:16:50.05ID:txt3JljQ
デザインパタ^−ンは勉強した方がよいでしょうか?
0160デフォルトの名無しさん
垢版 |
2017/07/26(水) 18:46:59.30ID:aaem4HGH
これからはパタ^−ンだよね
0162デフォルトの名無しさん
垢版 |
2017/07/26(水) 19:01:26.80ID:/ZvQeDL/
>>154
俺も、趣味でjavaを独学してる身だから、偉そうなこと言えないけど

1円で投げ売り
とか
100億回
とか

読み返して、恥ずかしくない?
0163デフォルトの名無しさん
垢版 |
2017/07/26(水) 20:15:45.49ID:+wB1yzpw
>>159
いらない。 そんなことより、webアプリやらandroidアプリでも作ってた方が有意義。

フレームワークで設計に触れられるし。
0164デフォルトの名無しさん
垢版 |
2017/07/26(水) 21:26:53.25ID:cjurS1ok
そしてうまい作り方を発見したと喜び勇んでブログで発表するとそんなもん何十年も前に本にまとめられて世界中の言語に翻訳されて売られまくった枯れ枯れの干からびたやり方だとコメントされまくる。
0165デフォルトの名無しさん
垢版 |
2017/07/27(木) 17:28:04.27ID:DDfF3pSC
>>152
継承しなくちゃいけないわけでもないからな。
0166デフォルトの名無しさん
垢版 |
2017/07/29(土) 03:53:30.99ID:UnhUcpCL
スッキリわかるJavaを利用してますが
dokojavaってなんとなく動作が
不安定な気がするのですが気のせいでしょうか。
同じプログラムでもエラーが出たり出なかったりします
0167デフォルトの名無しさん
垢版 |
2017/07/29(土) 06:39:29.25ID:qmPyXn75
そもそもdokojavaを使う必要がない
手軽なオンライン環境ならideoneもpaiza.ioもある
0168デフォルトの名無しさん
垢版 |
2017/07/30(日) 09:49:31.45ID:rAr/Q6m3
アンドロイドアプリを作りたいです。
どうやらjavaを知ることが第一歩のようですが、javaをマスターできれば
アンドロイドアプリ作れるようになれますか?
0169デフォルトの名無しさん
垢版 |
2017/07/30(日) 10:03:11.95ID:xziOu8cb
いいえ
料理をする時に調理器具を使えるようになるだけではダメなのと同じで
料理毎に食材や調味料の組み合わせ方法や量も学ぶ必要があります

AndroidにはAndroid用のセオリーがあります
0176デフォルトの名無しさん
垢版 |
2017/07/30(日) 14:42:06.93ID:0PJrZm1n
>>170
ていうか、Javaどの程度わかってるかにもよる。言語の基礎部分知らなければ作るに作れないだろうし
それ以前に入門書のサンプルプログラムも何やってるのかソース見てもわからんだろう。
0177デフォルトの名無しさん
垢版 |
2017/07/30(日) 15:05:49.40ID:w/kjlxMo
あと、どの程度のアプリを作りたいかにもよるな

ハローワールドを表示するだけなら、
初心者向けの本の書いてある通りにASをインストールしてボタンを押していけば、
一行もコードを書かずにアプリが出来上がるから、
javaどころか、どの言語も知らなくても問題ないしね
0178デフォルトの名無しさん
垢版 |
2017/07/30(日) 16:07:57.61ID:RBZmZf5e
コンストラクタの宣言にはstaticキーワードを付けないのに、
コンストラクタはなぜstaticなメソッドから呼び出せるの??
■ このスレッドは過去ログ倉庫に格納されています

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