Java入門・初心者質問スレ Part.7
■ このスレッドは過去ログ倉庫に格納されています
変数名間違ってるしインスタンスの意味も理解してない
入門書読み直し ct はループの中で、c の0から2をそれぞれぞれ参照していくというのが正しい言い方なんですか? ヒント1:拡張for文
ヒント2:ググる
ヒント3:説明読む
ヒント4:初心者以前のレベル
ヒント5:上記のことが理解出来たら入門書読み直して理解できるまで絶対に質問しない >>668
>型を判別している部分があったら、即ダメ
Hotelクラスを作りました
checkIn(Human human)メソッドを定義して、配列Human[] guestsに入れていきます
そのホテルはDoctorに対しては特別割引をしていました
その場合の宿泊料計算についても型判別を使ったらダメですか? >>681
それは職業の属性を持たせるという方式でやった方が良いのではないか?
Job クラス作ってそのインスタンスで職業を保持するようにしておいてそれを Human クラスの中に持つ感じ。
何故かというと同じ人の職業が変化する可能性があるため。 >>682
なるほど、確かにそうですね。その通りです
感覚的に継承の使い所だと思って安易に継承を使ってしまうと後で困ってしまうということになりかねない
設計レベルで何をするのか固まってないと使うのは難しいのか >>683
というか継承いらない
継承は基本的に悪なので使わなくて済むなら使わないほうがよくて、原則としてインターフェイスと移譲を使えというのが今時のオブジェクト指向
継承は、どうしても継承を使ったほうが自然にコードを共通化できる場合に実装テクニックとして使うもの 言語仕様なんでしょうけど、
何で普通のfor文は遅いのでしょう? どうせループの閾値をループ毎にコストの掛かる冗長な計算してましたってオチだろ 継承is-a よりも、包含has-a(委譲・インターフェース)の方が柔軟性がある。
継承を使うと、長期間仕様が固定される
怪物クラスの派生で、スライム・ドラゴンクラスがある時、
攻撃・属性とか、長期間に渡って、仕様が固定される
その代わりに、後に、幽霊クラスを追加しても、
同じ仕様だから、修正箇所が無い
もし、型判別するのに、switch 文を使っていたら、
何か所も修正して、テストしないといけないから、新たな怪物を作れなくなる
switch monster {
case slime:
case dragon:
case ghost: // 追加 すみません、またまた正規表現でつまずいたので教えてください。
-------------------------
String mail = "mailto:info@jafrec.org?subject=title" ;
Pattern pattern = Pattern.compile(
"(([0-9a-zA-Z!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\}\\|~]+(\\.[0-9a-zA-Z!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\}\\|~]+)*)|(\"[^\"]*\"))"
+ "@[0-9a-zA-Z!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\}\\|~]+"
+ "(\\.[0-9a-zA-Z!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\}\\|~]+)*");
Matcher m = pattern.matcher(mail);
if (m.find())
System.out.println(m.group());
-------------------------
info@jafrec.org?subject=title
-------------------------
このパターン文字列は、このサイトからもらってきて、行頭の「^」と行末の「$」を消しただけのものです。
[メールアドレスのチェックをするサンプルコード]
https://www.sejuku.net/blog/13215
要するにメールアドレスでは「?」は使用可能な文字ということですが、
subject=title という文字列を含まないちゃんとしたメールアドレスはどうやって抽出すればいいのしょうか? Regular Expression(正規表現) Part14 [無断転載禁止]©2ch.net
ttp://mevius.2ch.net/test/read.cgi/tech/1489511075/ 基本を理解してれば5秒で解決できようなことも
コピペするだけで自分で考えることを完全に放棄して
「どうすればいいですか?!(ブヒッ w」って言う奴がたまに沸くけど
俺から言えることは一つ
とりあえずプログラム勉強するのやめて死ぬか肉体労働でもしてろアホ String mail = "mailto:info@jafrec.org?subject=title";
int start = "mailto:".length();
int end = mail.lastIndexOf("?subject=");
System.out.println(mail.substring(start, end)); 自分は中括弧なしの一行のif文よく使うのだけど、
別の事情でたまたまそれ全部取ったら動作早くなった気がするのだけど気のせいでしょうか? >694 ←なんだこれw
馬鹿は回答側に回るなって何度言えばわかるんだ?
入門書読み終わるまでROMってるか釣りじゃなかったら
思考能力が小学生以下だからとっとと死ぬか肉体労働でもやってろ低能 >>697
よう天才
最高のコード頼むわ
無理だろうけど 正規表現で何してるかわかれば
上の方でアホっぽい奴が書いてるように最後の行の「?」と「*」消せば
?に当たった時点で抽出されなくなる
それを>694みたいに固定文字列検索してsubstringするような馬鹿は馬鹿と言われて当然
こんなコピペだけして何も考えてなく応用力0の奴に回答すると延々と質問してくるし回答してやる価値もないし
?残してそれ以降の文字だけ消したいとかこの?が何を意味してるかもわかってないし
そもそもこんなことしたい奴なんてwebクローリングとかして怪しいことする気満々の糞業者だし
とりあえず死ねって感じ ∧_∧ / ̄ ̄ ̄ ̄ ̄
( ´∀`)< オマエモナー
( ) \_____
│ │ │
(__)___) まぁ勉強初めて2日目とかの初心者なんだろうけど
よくそんなゴミコード晒せるな
ビックリするわ >>703
はよ自信満々のコード晒せよ
無理だろうけど >>703
派遣切りされて暇なのか?
現場で頑張りなよ土方くん >>700
後出しで偉そうに言ってんじゃねえよw
おい土方コード書け *消したらドットが複数ある時どうするんだ
そもそもドメイン名にハテナ無理じゃね
消すのは最後だけじゃない
でもまあ土方にしては回答頑張ったんじゃねえの 現場土方は他人に馬鹿と言う割に頭悪いよね
高卒土方と呼んでやろうか? 正規表現もわからずゴミコードしか書けない池沼が6連投www
>*消したらドットが複数ある時どうするんだ
書いてある正規表現も理解できない馬鹿なんだから無理して書き込むなって糞馬鹿w
こんな奴が回答してたりするからゴミスレすぎる
馬鹿はプログラムやるなってwマジでw 昨日ふと夜空を見上げたら微分が流れた
思わず願い事したの 昔もこのスレはこんなに馬鹿が溢れてなかったんだけど
今はすごいね
まともな奴はみんなどっか他所に行ったみたいだな
馬鹿しかいねぇw >>718
馬鹿はお前だけだよ高卒くん、あんま調子乗ってっと微分せざるを得ないが? 正しい修正案を提示できない高卒土方がさっき微分を殺してました 最後の?と*消すなんてそんないい加減な修正したら
現場では速攻微分だから public class sure{
public static void main(String[] args){
System.out.println("ここは初心者の質問が許されているスレですか?");
}
} >>722
public class sure{
public static void main(String[] args){
System.out.println("はい。");
}
} String[] come=
{"コ","メ","ン","ト","が","辛","す","ぎ","て",
"質","問","し","づ","ら","い","で","す","わ","(汗"};
for(String c:come){
System.out.println(c);
} すまないが生きている価値のないごみクズは35歳だけにしてくれないかな。 皆さんレスどうもありがとうございました。こんな感じになりました。
if (m.find()) {
int index = m.group().indexOf("?subject=");
if (index > -1)
System.out.println(m.group(0).substring(0, index)) ;
----------------
String mail = "mailto:info@?subject=.org?subject=title" ;
これだとちゃんとしたアドレスを抽出できませんが、こんなドメインなどほとんどないだろうってことにしときます。
実際のところ「?」を含むドメインにもほとんどお目にかからないのでパターン文字列から「?」を取り除いても実用上ほとんど問題ないって気がします。
あと余談になりますが、
<a href = "mailto:info@?subject=.org?subject=title">連絡先</a>
このリンクをクリックすると、メーラーが立ち上がりますが、宛先は「info@;」、件名が「.org?subject=title」になりました。 サ ブ ス ト リ ン グ www
上のゴミコードってこの馬鹿の自演だったのかw
消えろゴミ業者 ちょっと間違いました。indexOf より lastIndexOf ですね。
それなら "mailto:info@?subject=.org?subject=title" からも抽出出来ます。
"mailto:info@?subject=.org" だとおかしくなるってことです。 >>730
ご指摘ありがとうございます。?が使えるのはアカウント部分で、ドメイン部分はダメなんですね。
すごく恥ずかしい勘違いをしてました。皆さんお騒がせしました。 ええんやで高卒土方の修正案が悪すぎて
混乱を招いた、全部そいつのせい 馬鹿すぎて何も理解できてないのがすげーww
皮肉で指摘してやっても「?」が何を意味してるかも全くわかってないし
3秒で解決できることに何日かけてんだこの自演馬鹿はwww >>733
お前がメルアドの仕様をまったくわかってなくて
いい加減な修正案を提示したんですよ
馬鹿すぎて理解できてなかったのはお前です 高卒の限界を示した土方くんはもうここに来たらアカンで
回答者として能力が足りてない >上の方でアホっぽい奴が書いてるように最後の行の「?」と「*」消せば
>?に当たった時点で抽出されなくなる
最後の行? は? メールアドレスの仕様わからずに回答してるわけ?
この人頭の中には水でも詰まってるわけ? 砂漠では助かりそう
とこのスレを見てる全員が思いましたよ、サハラで死ねよ高卒くん javaグラマーになりたい中学生のガキかなんかかなコイツ・・w
文章滅茶苦茶でチンパン言語で何言ってるか解読不能w
ゴミコードって言われたもんだから常に顔真っ赤でギャーギャー負け惜しみ言って
俺の言ってることがホントにわからんらしいwww
馬鹿ガキはSNSで質問でもしてろ池沼
アホ あと可哀想だから教えてやるけど
お前のようなゴミコードは現場だと速攻で指摘されて全部書き直しさせられるからなw
2文字消すだけで解決することを固定文字検索してサブストリングってwwww
小学生のプログラミングスクールかよwww
こういうゴミコードを「コーディングホラー」って言うから覚えておけアホガキw
アホ 高卒土方が中学生のガキに回答の瑕疵を指摘されてサハラの星になったお話 >>739
でたw現場www
お前の現場レベル低くね? まぁ勉強し始めて3日目?wぐらいのお前のようなガキが書いたコードを
現場で書く奴なんて1万人に一人もいないからありえんけどなw
アホ 自称上級者のいい加減な修正より
勉強を始めて3日目の俺の素直で正直なコードの方が
わかりやすくて処理が速くて正確に動作するわけ
このスレで1万人に1人の天才と出会ってしまった不幸を呪って
もいいと思うが何年も仕事してて末尾の?と*を消せばいいなんて
アドバイスしてしまう自分に疑問を持たないと成長はないんじゃないかと
差し出がましいとは思うが天才からの忠告として受け入れていただければ
初心者スレから卒業できるんじゃないかと思います
末筆ながらご卒業誠におめでとうございました お前のゴミコードだとURLパラメータ1個増えたら全部修正だね!すごいね!w(大失笑(爆裂(核爆弾))www)
俺の正規表現で完結する修正内容はメールアドレスだけ未来永劫正しく取得できるね!やったね!w
池沼「うるさい!うるさい!ぼくのゴミコードの方が正しいんだ!!!!くぁwせdrftgyふじこlp (アババババオンギャあああ」
THE 池沼
アホww
腹いてぇwww おめーの正規表現バグってっから
末尾の?と*を消すだけの姑息な修正施した
正規表現ではメルアド抽出できないことは
上級者の自覚をお持ちのあなたならよくわかっておられるでしょうに
subjectのパラメータは今後一生変わらないから俺の天才コードは
一切問題ないけど 元々はお前が持ってきたゴミ正規表現だろアホww
アホ >>747
まあまあ落ち着きなさいな
興奮しすぎて混乱しておられるようだ
(小前提)正規表現を提示したのは質問者
(大前提)僕は質問者じゃありません
(結論)ゆえに僕は正規表現を持ってきていません
正規表現がマズいと思うならそれを修正しないと
この正規表現はマズイですよとあなたが指摘したのならわかりますよ
でもあなたはそれをやっていない
最後の行の?と*を消したら行けるよ、なんとかなるよ!絶対大丈夫だよ!!
とお墨付きを与えたのはあなたじゃないですか、あなたが首謀者ですよ >>689って、ドメインの部分に、アカウントにしか使えない文字が他にも並んでませんか?
?以外にももっと消すべき文字があるのでは。 だからゴミ正規表現でもお前の期待通り動くようにしてやってんのに
バグってるだのホンマキチガイクソガキやなコイツw
アホ そもそも質問に曖昧な部分があるからな
A = mailto:
B = info@jafrec.org
C = ?subject=title
としてAとCが不変でBを取得したいのか
それともCは可変なのか >>752
不変ならばこうする
可変ならばこうすると仮定を置いて
修正案を提示すればよいかと 曖昧だからわかりませんではなく
曖昧だから分析して選択肢を作るのが回答者としての役目だと思います お前みたい馬鹿の思考を考慮して
何で回答者があらゆるパティーンを推測して回答すんだよ馬鹿ガキ
スレを荒らすなゴミ >>755
あなたのように間違った回答を提示しないように
曖昧さを分析するのは大事なことだと思いますけどね
スレを荒らしてるのはあなたですよ、あなたがゴミです 文体を見てください、丁寧語で書いてる僕がどう見てもジェントルメンです >>757
有れよじゃねーよw
勝手に仮定おくような奴はチームにはいらんから
確認しろよ フレームワーク・ライブラリにあるはず
例えば、Ruby なら、validates_email_format_of という、gem を使う >>760
仮定と思い込みは違いますよ
こう仮定を置いたらこうなります
一方でこう仮定を置いたらこうなります
どちらかわかりませんので教えてくださいと
確認することできますよね
仮定を置くことと確認することは独立した事柄で
同時に成り立ちますよ
仮定を置いたから確認できないという関係にないので
あなたが言ってることは成り立たない 仕様の曖昧なところを分析して選択肢を用意して
仕様を明確にしていくって能力は仕事で必要だし
チーム開発でも役立つっしょ >>752
やろうとしているのは、WEBページで、クリックするとメーラーが起動するリンクがありますよね。
そのHTMLコードの中からメールアドレスを抽出することです。
mailto: は固定で、メールアドレスのあとにに来る文字列は色々ですが、?だけを見ればいいようです。
http://www.shurey.com/js/mailto.html >>764
不要な選択肢に要した時間が無駄だから先に確認するんだろ
お前みたいに非効率な奴はチームにいらんって事 >>766
時間かけずに仮定を置けばいいじゃん
思考を巡らせずにわかりませんといっちゃうやつは木偶の坊だよ >仕様の曖昧なところを分析して
ワロタw
斬新な発想した馬鹿だねw
仕事したことなくても普通こんなこと思わんと思うけどねぇ(超新星爆発ww)wwwww そもそも仕様が決まってないこともあるからね
仕様を決めてもらうために仮定を置いて
こうしたらこうなりますね、さあどうしましょうかとお伺い立てれば
うむ、そうなのか、じゃあこうしようと意思決定できるよ >>768
仕様ガチガチに決まってるものが下りてくる現場なの?
それって末端過ぎない? もう少し上だとあるよ
僕勉強始めて3日目の中学生だからわかんないけど 最初から「?」のことしか言ってないのに馬鹿な質問しかできない馬鹿が
自演で馬鹿コード書いて自演で馬鹿なコードを選択してるんだから世話ねぇわw
「?」の意味を調べればおのずと答え出るのに全く調べようとしないしなw
だからこんなコピペ馬鹿に回答してやる価値なんか最初からないんだよ
アホ 曖昧なところは明確になるまで詰めるんだよアホwww
お前が最初に言ったのは仮定をしてその仮定に対して”回答”を作るってことなんだよ
話をすり替えるな雑魚
アホ >>771
でも君回答したよね?
最後の行の?と*を消せば良いって自信満々にご回答されましたよね? >>767
つまりお前は時間をかけずに全ての仮定をおけると
AIかよ
>>769
それは口頭だろ摩り替えんな
コード書くのは確認してからが常識だから >>772
でもあなた何も詰めずに最後の行の?と?*を消せば良いって言いましたよね?
あなたが言いましたよね? 全然詰めれてないじゃないですか ■ このスレッドは過去ログ倉庫に格納されています