「String」を含む日記 RSS

はてなキーワード: Stringとは

2020-09-27

anond:20200927003907

enumをただの単一インスタンス確約されたキーオジェクトしか使ってないの見ると悲しくなるよね

そんな用途しか使わないならstaticで宣言したStringでいいじゃねぇかってなる

ストラテジーパターン的にinterface貼って使うならenumも便利だなと思うけど

2020-09-01

仮面ライダークウガ最終回名言最初セリフだけエンジニア

「QAに聞いたんですけど、あのバグ、やっぱまだ直ってませんでした。だから、狙う時は“ここ”をお願いします」

五代……」

「いやもちろん、万が一、俺が“究極の闇をもたらす存在”になっちゃったらですけどね」

「……。こんな寄り道はさせたくなかった」

「え?」

「君には……冒険だけしていて欲しかった」

「……」

「ここまで君を付き合わせてしまって……」

ありがとうございました」

「……?」

「俺、よかったと思ってますだって一条さんと会えたから」

五代……」

「じゃあ、見てて下さい。俺の――変身」

>> java.lang.NoSuchMethodException: com.laurens.Main.main([Ljava.lang.String;)

    at java.lang.Class.getMethod(Class.java:1786)

    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:125)


台詞引用元

https://w.atwiki.jp/aniwotawiki/pages/9479.html

2020-07-12

1841年のアイドルオタク

https://en.m.wikipedia.org/wiki/Lisztomania

フランツ・リスト、すげえ人気でファンが超熱狂してたらしい。

Admirers of Liszt would swarm over him, fighting over his handkerchiefs and gloves.[3] Fans would wear his portrait on brooches and cameos.[2][4] Women would try to get locks of his hair, and whenever he broke a piano string, admirers would try to obtain it in order to make a bracelet.[4]

リストの信奉者は彼の周りを取り囲んで、ハンカチ手袋を巡って争った。ファンたちは彼の肖像画の入ったブローチやカメオを身につけていた。女性たちは彼の髪束を手に入れようとし、彼のピアノの弦が切れた時にはそれを入手してブレスレットにしようとした。

 

誇張されてるっぽいけど、「リストさんの捨てたタバコの吸い殻を拾ってアクセサリに加工してた人もいる」ってエピソードも書いてある。

厄介クソオタク19世紀からいる……

2020-06-05

anond:20200605175823

から

データ定義からそれが何なのか分からんのよ

呼び出しを見ないと

そもそも呼び出す場所によって使われ方違うし


あとそれとは逆にさ

データ定義の方に「特定の画面で使ったときに強調表示するかどうか」みたいな情報を入れたがるのよ

MVCとか遥か以前の問題

あと20プログラマやってる人が

public Map<String, Object> mOptions;

みたいなフィールド用意すれば、クラス変えなくても機能追加できる、とかほんとに言ってるの

おわってる

2020-05-23

anond:20200521175300

どもども。

「なにか作ってみろ」は有効アドバイス

わたし意見と経歴

わたしは「なにか作ってみろ」系の言説にはまったく同意しません。

わたし自身会社に3ヶ月間みっちり導入教育をしてもらい(COBOL85とPL/I時代がわかる……)、基本的アルゴリズムコントロールブレークマッチング、マスタ-トランザクションソートマージetc.いよいよ時代がわかる……)の演習を(給料をもらいながら)やって、その後もプログラムとつかず離れずでフラフラと生きてきました。

こういう経験新卒カードがあるから有効もので、では1から始めるとしたら……、というときに、プログラミングスクール専門学校)というのは悪くない選択肢ではないかと思います。が、行ったことないので正直わかりません。

実際自分が1から始めるという立場になったら、まったくオロオロして元増田さんのように世のなか(の気にいらないヤツら)に呪詛を吐いて満足するだけだったと思います(当然ながらそれをいくらやってもプログラミングは上達しません)。

「なにか作ってみる」前に動機をはっきりさせる

話をプログラミングだけに限っていえば、一番大事なのはやりかたじゃなくて動機だろうと思います

「なにか作ってみよう」というのは、なにか作ってみようと思ってない人にはまったく心に響かないでしょう。

動機リブンで「なにか作ってみた」人といえば思いだすのは、MikuMikuDance樋口優さん(ミクを簡単に踊らせたい!)とhinadanの若宮正子さん(高齢者にも遊べるゲームが欲しい!)でしょうか。

ただかれらはわたしから見れば(モチベーションを維持しそれを行動に移す)天才で、あんまり参考にならないのも確かです。

作ってみた」は就職に使える経験

あと、元増田さんの動機は「プログラミング生業にしたい」ということなので、野良プログラマでは履歴書上でのアピール力が弱いかも、と思います

ビジネスで使われるアルゴリズムにはそれなりのルールがあります安全な(バグの出にくい)コードの書きかた、「車輪の再発明」はぜず、枯れた(将棋で言えば定跡のような)アルゴリズムを使う、ほかの人に使ってもらえるための工夫(可読性の向上など)、etc.です。

「なにか作ってみよう」を繰りかえしても、そういった作法的なものが身につくかどうか、それは才能に関わってくる問題だと思います。才能だのみの手法を推奨するのは無責任だと思いますね。

また、たとえば「例をコピーして解析する」というのもある意味有効プログラミング学習法ですが、「下手に習うと下手が伝染る」ともいいます。どれがお手本として優れているか、それを見る目はある程度ビジネス用途プログラムに関わっていないと持てないというジレンマがあります

野生のプログラマ就職有効なくらいの力を見せるとしたら、なにかのコミッター(なにする人かよく知りませんが)とかになって「××ならこの人」となったり、プログラミングコンテストで上位の成績を残したりしなければいけないのかもしれません。

どうしたものでしょうね。ブクマカのみなさんの反応を見ると、専門学校でもあまり就職に有利にならない(ホントか?専門学校意味あるのか?)という話ですが、目的就職ならば、一番の近道のような気がします。

じゃあどうすべきか?は他人にはわからない

そこらへんからは、元増田さんがなにをしたいか、あるいは聞いてみたいだけだったのかによります仕事には適性とやる気が大事です。あとは年齢と必要性かな。進路はオーダーメイド以外にはありえないので、提示された案を自分で選んでそれに賭けるしかないのかな、と思います

「なにか作ってみました」の記録

自分がまず作ったもの晒してみろよ

さて、この文章は実はこの一文に反応してのものです。(↑のは前書き)

GWあたりからトシも考えずにRubyの再入門をしていまして、手始めに「首相動静」の整形ツールを作ってみました。

初心者で(Rubyに関しては仕事で使ったことないので)なにか作ってみよう、というとこの程度ですね。

これで就職に有利になるかというと、あんまりそうは思えないなあ。Excelマクロが組めるとかのほうがどこかの事務所に潜りこめそうですよ(でもそれも最近インフレ気味かもしれませんね)。

なにをするツール

朝日新聞首相動静は詳細ですが、改行が入っておらず、大変読みにくいものです。こんな感じです。

首相動静の例(2018年12月11日……話題になったものです)

 【午前】9時31分、自民党本部。33分、同党役員会。10時2分、官邸。5分、閣議。21分、宇宙開発戦略本部。34分、柴山昌彦文部科学相。38分、岩屋毅防衛相。41分、山下貴司法相。11時3分安全保障と防衛力に関する懇談会

 【午後】0時11分、政府与党連絡会議。44分、山口那津男公明党代表。1時27分、日韓議員連盟額賀福志郎会長河村建夫幹事長。2時20分、行政改革推進会議。52分、兼原信官房副長官補、秋葉剛男外務事務次官。3時36分、麻生太郎財務相財務省岡本薫明事務次官太田主計局長。4時7分、太田氏出る。可部生理局長加わる。15分、全員出る。25分、黒川弘務法務事務次官。34分、谷内正太郎国家安全保障局長、北村内閣情報官宮川内閣衛星情報センター所長。41分、谷内、宮川両氏出る。5時3分北村氏出る。10分、東京永田町ザ・キャピトルホテル東急宴会場「鳳凰」で中曽根康弘世界平和研究所設立30周年記念式典に出席し、あいさつ。20分、官邸。6時18分、ガーナのアクフォアド大統領を出迎え。記念撮影。19分、儀仗(ぎじょう)隊による栄誉礼、儀仗。27分、アクフォアド大統領会談。7時12分、署名式、共同記者発表。32分、公邸首相主催の夕食会。8時43分、アクフォアド大統領見送り。9時、ヨルダンのアブドラ国王電話協議

首相動静フォーマット

ただ、これはフォーマットがはっきりしており、

  • 午前と午後はそれぞれ1行になっていて、行頭には【午前】/【午後】という文字列が付いている。
  • 午前と午後の間には空行がある。
  • ひとつひとつイベント時刻表示で始まり句点「。」で終わっている。
  • 時刻は「h時m分」型で、前ゼロはつかない。後にかならず読点「、」が付く。「h時」の部分が前の項目と同じ場合には省略する。
  • 午前いっぱい、午後いっぱいの予定の場合には時刻をつけない(他の首相動静から)。

と、例を見るかぎりキッチリとしたルールに則っているようです。

動機

なので、「これだったら整形できるかも」と思い、再び学びはじめたRubyで整形ツールを作ってみることにしました。

整形ツール
ツール仕様
整形後の例(上記動静を整形)

【午前】

09時31分、自民党本部

09時33分、同党役員会。

10時02分、官邸

10時05分、閣議

10時21分、宇宙開発戦略本部

10時34分、柴山昌彦文部科学相

10時38分、岩屋毅防衛相

10時41分、山下貴司法相

11時03分安全保障と防衛力に関する懇談会

【午後】

00時11分、政府与党連絡会議

00時44分、山口那津男公明党代表

01時27分、日韓議員連盟額賀福志郎会長河村建夫幹事長

02時20分、行政改革推進会議

02時52分、兼原信官房副長官補、秋葉剛男外務事務次官

03時36分、麻生太郎財務相財務省岡本薫明事務次官太田主計局長。

04時07分、太田氏出る。可部生理局長加わる。

04時15分、全員出る。

04時25分、黒川弘務法務事務次官

04時34分、谷内正太郎国家安全保障局長、北村内閣情報官宮川内閣衛星情報センター所長。

04時41分、谷内、宮川両氏出る。

05時03分北村氏出る。

05時10分、東京永田町ザ・キャピトルホテル東急宴会場「鳳凰」で中曽根康弘世界平和研究所設立30周年記念式典に出席し、あいさつ。

05時20分、官邸

06時18分、ガーナのアクフォアド大統領を出迎え。記念撮影

06時19分、儀仗(ぎじょう)隊による栄誉礼、儀仗。

06時27分、アクフォアド大統領会談

07時12分、署名式、共同記者発表。

07時32分、公邸首相主催の夕食会。

08時43分、アクフォアド大統領見送り

09時00分、ヨルダンのアブドラ国王電話協議

う~ん、見やすい!ことないですか?

あと、午後の時刻を24時間制にしたいな、とも思いますが、それは今後の課題(つぎに首相動静話題になったとき)とします。全角数字計算ってどうやるんだろう?

ソース

たぶんRubyistにいろいろ突っこまれると思うけど、こんな感じです。

プログラマ玉石混淆ですが、これは石のほうの例だと思っていただければさいわいです。

はてな記法にはシンタックスハイライトあるけど、増田だとInternal Server Errorになるのではずしました。見にくくてスマソ。

# encoding: utf-8
# 漢字コンバータライブラリを取りこむ(String漢字変換メソッドを付けてくれる。神)
require 'kconv'

# 正規表現パターン
# 時刻をh時m分形式からhh時mm分形式にする
# 否定後読みを使用する
# 時は行頭にある
OneDigitHour = /^((?<![0-1])[0-9]時)/
# 分は時のあとにある。このパターンマッチすると、\1が時、\2が分になる。
OneDigitMinute = /^([0-9]{1,2}時)(?<![1-5])([0-9]分)/
# 分のない、時だけの行のパターン否定先読み使用
HourWithoutMinute = /^([0-9]{1,2}時)(?![0-5]?[0-9]分)/

# 行頭のh時m分をhh時mm分にするサブ処理(これは関数といっていいの?)
def convTopHourMinute2TwoDigits(oneLine)
    # 時を変換
    oneLine.sub!(OneDigitHour, "0\\1")
    # 分を変換
    oneLine.sub!(OneDigitMinute, "\\10\\2")
    # 分がない場合"00分"を追加
    oneLine.sub!(HourWithoutMinute, "\\100分")
    # 戻り値
    oneLine
end

# 入力ファイル名前
InputFilename = "首相動静2018年12月11日.txt"
# 出力ファイル名前
OutputFilename = "首相動静2018年12月11日_編集済.txt"

# 入力ファイルオープン
inFile = File.open(InputFilename, "r")
# 出力ファイルオープン
outFile = File.open(OutputFilename, "w")

# 時刻パターンシンプルに、h時、m分、h時m分、という3パターンを結合する
# 1つのパターンで全部カバーするよりこちらのほうが見やすい。というか、脳の容量の問題で1文に書ききれなかった
jikokuPattern = /[0-9]{1,2}時[0-9]{1,2}分、|[0-9]{1,2}時、|[0-9]{1,2}分、/
# 午前/午後
ampm = /(【午前】|【午後】)/

# 午前/午後、あるいは時刻の前で改行するためのパターン
kaigyouSign = Regexp.union(ampm, jikokuPattern)

# ファイル一括読み込み
# 昔は1行ずつ読みこんでました。メインメモリが3MByteとかだったので
contents = inFile.read.toutf8

# 入力終了。閉じておきます
inFile.close

# スコープ関係から、ここでローカル変数に代入
# ※ Rubyスコープと暗黙の型には泣かされました。これに慣れるのがRubyのコツかしら
#  明示的な型宣言はあったほうがいいと思うなあ。エラー出力の理由がわからなかったりするので。
hour = ""

# デバッグ行はコメント化しています
# 時刻パターンチェックのため、コンテンツを出力してみる
# p jikokuPattern.match(contents)

# エントリを改行サインで行に分ける
contents.gsub!(kaigyouSign, "\n\\&") # "\\&"はマッチした文字列のもの。2重のエスケープ"\\"が必要

# 改行チェックのため出力
# p contents

# 入力を行で分割して各行ごとに処理
contents.split("\n") do |oneLine|
    # 午前/午後を示す開きカッコ"【"があるか
    if (oneLine =~ /^【/) then
        # そのまま出力
        outFile.write(oneLine + "\n")
        # p "午前午後:" + oneLine
        next
    # 空白行は無視スキップする)
    elsif (oneLine =~ /^[\s ]*$/) then
        # 出力しない
        # p " 空白行:<skip>"
        next
    # 行頭に「時」があるか
    elsif (oneLine =~ /^[0-9]{1,2}時/) then
        # あったら時間表示を抜きだしておく
        hour = oneLine.match(/^([0-9]{1,2}時)/)[0]
        # p "   時:" + oneLine
        outFile.write(convTopHourMinute2TwoDigits(oneLine) + "\n")
        next
    else
        # 「時」がなければつけて出力
        oneLine = hour + oneLine
        # p "普通の行:" + oneLine
        outFile.write(convTopHourMinute2TwoDigits(oneLine) + "\n")
    end
end
感想

手でやったほうが早いね

以上

2020-03-25

e was made out of fish skins to resemble dragon scales), and the Wildlings wear animal skins like the Inuit.[128] Wildling bone armor is made from molds of actual bones, and is assembled with string and latex resembling catgut.[129] Although the extras who play Wildlings and the Night's Watch often wear hats (normal

https://oomnitza.zendesk.com/hc/en-us/community/posts/360041950754-26-03-2020-Ничто-не-случается-дважды-2-сезон-13-серия-последние-серии-смотреть-от-26-марта-

https://oomnitza.zendesk.com/hc/tam/community/posts/360042154333-26-03-2020-Корни-12-серия-СТС-смотреть-бесплатно-в-хорошем-качестве-

https://oomnitza.zendesk.com/hc/tut/community/posts/360041954414-26-03-2020-Патриот-13-серия-Тнт-все-серии-сезона-

https://oomnitza.zendesk.com/hc/tam/community/posts/360042126273--В-шаге-от-рая-13-серия-Россия-1-26-03-2020-последние-серии-смотреть-от-26-марта-

https://oomnitza.zendesk.com/hc/tut/community/posts/360042144493--Доктор-Вера-15-серия-26-03-2020-качество-HD-от-26-марта-

https://oomnitza.zendesk.com/hc/en-us/community/posts/360042153893--Корни-14-серия-на-канале-СТС-26-03-2020-в-хорошем-качестве-

https://oomnitza.zendesk.com/hc/tut/community/posts/360042153893--Корни-14-серия-на-канале-СТС-26-03-2020-в-хорошем-качестве-

https://oomnitza.zendesk.com/hc/tut/community/posts/360041947754--Отречение-21-серия-украина-ТРК-26-03-2020-онлайн-сериал-смотреть-

https://oomnitza.zendesk.com/hc/en-us/community/posts/360042146113-26-03-2020-Жизнь-после-жизни-9-серия-хорошее-качество-смотреть-от-26-марта-

2020-02-21

ビッグバンセオリー

シェルドンレナード物理屋2人が主人公コメディドラマ

出てくる人物どいつもこいつもみんな物理屋。そしてみんな頭がおかしい。

主人公物理屋ということで画面のそこかしこに数式が登場するのだけれどもこれがずいぶん凝っています

以下6話まで視た感想です。

シェルドン研究テーマは何か?

QCD量子色力学)の漸近的自由性の証明です。2004年ノーベル物理学賞

(6話より)

ホワイトボードに書いてある数式は QCDベータ関数計算です。

彼女が数式を修正した後は β<0 になっています。これはQCDが漸近的自由性を持つ理論であることを意味しています。ちなみに部屋の左隅にある小さなホワイトボードにはQCD真空偏極による反遮蔽効果イメージ図が描かれていますこちらも漸近的自由性に関する図です。

この時代はいつなのか?

どうやらこの世界ではまだQCDの漸近的自由性が証明されていないようです。それではいったいいつ頃なのでしょうか?

何話か忘れましたが カビボ小林益川行列ホワイトボードに描かれている回がありました。時系列順に並べてみましょう:

どうやらシェルドンたちがいるのは1973年世界のようです。

史実によるともうすぐウィルチェック達が論文を出してしまうはずなのですが・・・

シェルドンは弦理論屋なのか?

公式ではシェルドンの専門はひも理論と書かれています

ひも理論一般の方向けの翻訳で、本来の訳は弦理論(げんりろん)です。 String Theory = 弦理論

ここでは混乱を避けるため単語を弦理論統一します。

さて、本題に入りましょう。シェルドンは弦理論屋なのでしょうか?

実は6話まで弦理論らしきものが出てきません。ずっと場の量子論計算しているのです。

しかもこの時代1973年です。この時代にいた弦理論屋とは何者なのでしょうか?

というのも、理論はもともとハドロン記述する模型として研究されていたものからです。現在のように弦理論が究極理論候補と考えられるようになったのは1984年第一ストリング革命以降の話です。時代背景を考えるとシェルドン南部後藤の弦でハドロン研究していると考えるとしっくりきます。彼がQCD研究する理由も、ボスハドロン8重項をホワイトボードに書いているのもこれで理解できます。彼の研究対象はハドロンなのです。

もっと直接的な証拠があります。第1話でこのような会話をしています: (https://www.youtube.com/watch?v=AF58gWwHOwY

レナード計算のつじつまをあわせるのに26次元でっちあげるような奴は・・」

シェルドンでっち上げではない!本当に26次元なんだ!」

26次元と言っています。これは面白いですね。もし現代の弦理論屋さんに「この世界は何次元ですか?」と聞くと10次元、もしくは11次元と帰ってくるのではないでしょうか。

現在の弦理論屋さんが研究しているのは超弦理論(10次元)やM理論11次元)、そしてシェルドン研究しているのは南部後藤の弦(26次元)なのです。

理解されない天才シェルドン

この時代において世界は26次元だと言い切るのはなかなかヤバい人ではないでしょうか。

先ほど書いたように弦理論が脚光をあびるようになったのは1984年以降です。

1973年は弦理論の暗黒期だったはずです。当時は弦理論は欠陥があると考えられていました。

米谷さんやシュワルツ重力子論文1974年であることを考えてもシェルドンはぶっ飛んでいるように思います

先ほど紹介したシーンでは「世界は26次元だ」と主張するシェルドンは頭がおかしいと思われているようです。一方で現代視聴者は、別に彼はおかしなことは言っていないことを知っているのです(26かはともかく)。この辺りの捻れが面白さを生んでいるように思います

南部10年早すぎた。

シェルドン10年早すぎた。

そしてシェルドンちょっとおかしかった。

シェルドン明日はどっちだ!?

頑張れシェルドン!早く論文さないとウィルチェック達に先越されちゃうぞ!

なんとも味わい深いコメディです。

2019-12-13

同僚のプログラミング

職場の人たちのプログラミング方法というか、書き方というか、意識というか、それが私と違っていてちょっとツライ。

言語Java. こんなソースを見た

public class X0001 {
    public static final String CONST_STRING_VALUE_ONE = "1";
    public static final String CONST_STRING_VALUE_TWO = "2";
    public static final String CONST_STRING_VALUE_THREE = "2";

    ...

    public static final String CONST_STRING_VALUE_ELEVEN = "11";

「XXコードは2文字入力して下さい」とかそういうメッセージを表示する時の2の部分に、使ってるんだけど、

ソースコードマジックナンバーを書くの禁止っていうルールに反しないようにするためのfinal String.

code123 というString変数の中身が、X1234.RET_CODE_NG と等しいか調べるのに、

if (X1234.RET_CODE_NG.equals(code123)) {
    ...

って書くのも気持ち悪い。code123がnullだった時の対策としてのひっくり返し記述なんだろうけどさ。

普通に、調べる対象を先に持ってきて欲しい

if ( code123 != null && code123.equals( X1234.RET_CODE_NG )) {
    ...

複雑な計算をする処理があるクラスで、メソッドフィールドも全部staticで書いてる人とか、

それマルチスレッドで動いたら計算内容がぶっ壊れる可能性ありませんか、ということで、

非staticで書き直してたけど、なぜそれがダメなのかわかってない風だった.

2019-12-04

anond:20191204173807

STRING型で統一されたプログラムのほうが美しいじゃない?

んなわけねーだろ、インターフェースというものがなぜあるか考えろ

そのような拡張性の無さに困ることがない。

代わりに想定しないパターンの値が入っていることで発生する不具合が生まれ

そのトレードオフ釣り合わない

anond:20191204173005

真偽値もそうだけどString型もっていうかデータ型が良く分かってないんじゃないその人

Stringとint混合したりはしてないのか

anond:20191204173005

BOOL型と STRING型の混在プログラムよりも、STRING型で統一されたプログラムのほうが美しいじゃない?

そもそも、BOOL型には拡張性が無い。

true or false 以外に may be true とか、not so false みたいな新たな状態を示す値を定義できない問題がある。

だが、最初から文字型で定義しておけば、そのような拡張性の無さに困ることがない。


BOOL型は省メモリだ、判定が速いだと言い出す輩もいるが、現代コンピュータでは、STRING型でも十分に代用可能

処理速度がボトルネックになった時点でリファクタリングすればいい。

わざわざ、BOOL型を導入するよりも、STRING統一しておいた方が多言語への移植簡単だろう。

・・・みたいにアタマのよい人は考えているに違いないの。

2019-10-23

anond:20191023190834

Pythonインタプリタがあるならこれだな

import random

import string

''.join(random.SystemRandom().choice(string.ascii_letters) for _ in range(8))

パスワードも許されている文字範囲を気にしつつこんな感じで作ってる。

C++17が使えるならこんな感じかなぁ...

#include <algorithm>

#include <iostream>

#include <random>

#include <string>

int main(void)

{

std::string input = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

std::random_device rnd;

std::string result;

std::sample(input.begin(),

input.end(),

std::back_inserter(result),

8,

rnd);

std::cout << result << std::endl;

return 0;

}

2019-09-25

ママに聞くんだけど

public string Hoge(bool? isPiyo)
{
    if(isPiyo.HasValue)
    {
        if(isPiyo.Value)
        {
            return “trueすこ”;
        }
        else
        }
            return “falseすこ”;
        }
    }
    else
    {
        return “nullすこ”
    }
}

こういうメソッドでNullの時が例外的な処理じゃなく、正常なパターンも想定しているやつすこじゃない

みんなはすこ?

(ママに聞け)

(ママプログラムわかるわけないだろ)

(ママに聞いたんか?)

(聞いてないんご……)

(ならママに聞け)

(はい…… ママに聞きます)

2019-09-10

C#classファイルを分ける意味

MainClass.cs

public class MainClass

{

  // Main メソッド

  public static void Main()

  {

   Person person = new Person();

   person.firstName = "山田";

   person.lastName = "太郎";

   Console.WriteLine(person.GetFullName()); // "山田 太郎" と表示される

  }

}

Person.cs

public class Person

{

  // FirstName プロパティ

  private string firstName;

  public string FirstName

  {

   get { return firstName; }

   set { firstName = value; }

  }

  // LastName プロパティ

  private string lastName;

  public string LastName

  {

   get { return lastName; }

   set { lastName = value; }

  }

  // フルネームを取得するメソッド

  public string GetFullName()

  {

   return firstName + " " + lastName;

  }

}

午前中にC#について聞いてた人がいて、ついでに聞きたい。

classファイルを分けたりする事があると思う。

   Person person = new Person();

このclass定義?なんだが、

必ず大文字文字定義するんだろうか。

new Person(); としたら、勝手に「Person.cs」の中の「Person」クラスを探してくれるんだろうか。

C#プログラム動作を1行1行確認したい。

前の増田が言っていた、Listのやつも知りたい。

paizaとかで入門動画見てれば分かるだろうか。

2019-04-30

WindowsRubyインストールしたい

さっき増田ツッコミ自演ボケようとして文字列を逆にする必要が出てきて、これRubyirbString#reverse使えば一発だなと思ったんだけど、

いまWindowsRubyインストールするにはどうするのが一番妥当なの?

何か(マジで何か。覚えてない)で使ってたchocolateyで chocolatey install ruby ってすればrbenvみたいな管理もしてくれるの?

えっpaiza.ioでやればいいって?あれ履歴残っちゃうじゃーん

2019-02-13

んもう!

またif (!String.IsNullOrEmpty(foo))に!付け忘れてた

2019-02-01

もー!まーたString.Equalsに!付け忘れたせいで本来の結果と逆になっちゃったよ!!

使いづらいんじゃ!

2019-01-09

String.IsNullOrEmptyよく使うんだけど

NullでもEmptyでもない場合trueを返す関数の方が使いやすいから変えて欲しい

2018-12-24

anond:20181224075038

ほい。ごく簡単アニメーションを付けてみた


#include "stdafx.h"
#include <string.h>

int main()
{
	char buffer[47];

	strcpy(buffer, "%0sHelloWorld\n");

	for (int i = 0; true; i++)
	{
		int c = i % 16 ;
		if (c % 8 == c) {
			buffer[1] = '0' + c;
		}
		else {
			buffer[1] = '0' + 8 - (c-8);
		}
		

		printf(buffer," ");


	}

    return 0;
}

2018-12-23

anond:20181223182722

一気に並べてみる

オーソドックスな書きかた

int i;
int space;
for (int i = 0; i < 8; i++)
{
	for (space = 0; space < i; space++)
	{
		printf(" ");
	}
	printf("Hello world\n");

}

すまん <は半角の<に置き換えてくれ(w)

バッファをつかってループを1つ削る

	int i;
	int space;
	char buffer[8];
	char buffer2[8];
	memset(buffer, 0, 8);
	memset(buffer2, 0, 8);
	for (int i = 0; i < 8; i++)
	{
		memset(buffer, 0x20, i);
		printf("%sHello world\n",buffer);

	}

memsetも削ってみる

	int i;
	int space;
	char buffer[8];
	char buffer2[8];
	memset(buffer, 0, 8);
	memset(buffer2, 0, 8);
	for (int i = 0; i < 8; i++)
	{
		buffer[i] = 0x20;
		printf("%sHello world\n",buffer);

	}

この場合特に影響はないが一般的にはmemsetを使う使わないは大きな影響になるので

memsetを削る場合は注意が必要

C++を使ってみる

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

C++を使ってみるの別回答

	std::string space_org;
	for (int i = 0; i < 8; i++) {
		std::string space = space_org + " ";
		printf("%sHello world\n", space.c_str());
		space_org = space;
	}

考察

ざつにかんがえても 書き方いろいろ 

それぞれメリット デメリットが有る

まり まぁ どれがいいというよりは

状況に応じてかき分けていく必要がある

学校の授業などだと

アルゴリズムの話で

ヒープソート マージソート クイックソート比較みたいな話があるけど

そこまで難しい話にいかなくても

ハローワールドだけ見てかつ雑に考えてもこのぐらいは

書き方がたくさんある

どれを書くか?どれがいいか? 考えると面白い

anond:20181223182447

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

 ↑ C++的 な 書き方1

	std::string space_org;
	for (int i = 0; i < 8; i++) {
		std::string space = space_org + " ";
		printf("%sHello world\n", space.c_str());
		space_org = space;
	}

こっちの書き方のほうが 無駄は多いけど 使いやす

anond:20181223162005

	std::string space;
	for (int i = 0; i < 8; i++) {
		printf("%sHello world\n", space.c_str());
		space += " ";
	}

LT;は<

例外的

効率は悪いけど こういうふうな書き方もできるC++

2018-12-15

public class masda{

int age = 40;

int morasu(){

System.out.println("morasuta");

return 0;

}

public static void main(String[] args)

{

masda unko = new masda();

unko.morasu();

}

}

2018-12-14

C#Classについて知ってる人教えてほしい

VisualStudioローカル動作するアプリを作ろうと思ってるんだけど

本当に初歩的なことかもしれないことが分からない。

class」というやつについてだ。

XXXXX.csというファイル内にそいつは居るんだが、

そいつの中には複数classさんが存在してもいいのか?SAVACLASSとLOADCLASS存在しても良いのか?

namespaceって何だよ。名前空間意味分からん


public class Person
{
    public string name { get; set; }
    public int age { get; set; }
}
public class Office
{
    public string name;
    public ObservableCollection<Person> persons;
}


private Office office;
private void init()
{
    office = new Office();
    office.name = "オフィス";
    office.persons = new ObservableCollection<Person>();
    office.persons.Add(new Person { name = "001", age = 11 });
    office.persons.Add(new Person { name = "002", age = 22 });
    office.persons.Add(new Person { name = "003", age = 33 });
}

上記って全て同じCLASSファイルに置いていいの?

OFFICEという属性にはPARSONというものが集まってて、そのPARSONの情報にはNAMEAGEがありますよ!というのは分かるんだけど

1から書けといわれたらちょっとからなくなる……

シリアライズも、デシリアライズも、「圧縮解凍」みたいなイメージしかないし

うーん。難しい。

クラスって何なんだ。VBA風に説明できる人いない?(VBAでもClassは使わずにFunctionとSUBだけ使い回してた)

ログイン ユーザー登録
ようこそ ゲスト さん