2020-01-01から1年間の記事一覧

学習雑記 JAVA24

Calendarクラスを使ってみた。 返されるフィールド値の値などが最初は混乱するが、何故0から始まるかなどは単純な計算に都合が良いことだけは理解した。 使いこなすべく、もう少しこれらで遊びたい。 値 説明 AM_PM HOUR が正午より前であるか後であるか。A…

学習雑記JAVA23

問題集を解きながら出てきた表現を見て、文字列を分割するsplitメソッドで知らなかったことをまとめた。 - 引数に正規表現を設定できる str.split("[ , : ]");のようにカンマとコロンで区切る指示を出せる - 分割する上限を指定できる 第二引数に戻り値の配…

JAVA22

回文判定 早時問題なので、考え方としては簡単なのだが、自分が作成したものはやけに(早時も問題の割りに)冗長だったので、解いたあと少し調べるといろいろなやり方があって頭を柔らかくしなければな〜と感じている。 問題自体は、scannerで入力された文字…

復習

朝に直面したエラー問題点 ifの条件式で、startIndex<0 && stopIndex>=0 である必要があった。 桁数が4で小分けにできない場合の処理を作成しておいたが、桁数が4で小分けにできる時、startIndex = 負の数、stopIndex=0の状態になるため、s.substring(0, 0…

朝活 アウトプット

入力される1~最大1000桁の数字の文字列を計算する問題で何も考えずにint や longを使って、エラーになった話。 型の範囲を超える計算なんて想定していなかったが、教科書なんかではこうした型の範囲に関して初期段階から出てくる。 int (4byte) -2147483648 …

学習雑記 JAVA21

ラムダ式と関数型インターフェース ラムダ式 : メソッド定義を式として扱える機能で、主に関数型インターフェースを実装する時に使う。下記構文のように引数と処理式をアロー演算子( -> )で結ぶ 構文 Interface名 Object名 = (argument1, argument2, ...) ->…

学習雑記JAVA20

複数の言語を交互に学習しているとビルトインメソッドが「あれっ何故動かない??」ということがおき、しかも気づけないことがある。 名前も似ていて、エラー表示には、「メソッドが無い」と出るよりは「型が違う」かまたは「型に互換性が無い」と表示されるこ…

学習雑記 JAVA 19

復習を兼ねて、JAVA SE SILVERの問題を解いてみたが正答率59%、、、 間違えたところをポイントで見直していく。 ■意外と頭に入っていなかった「継承」のまとめ 1. 継承というか、interfaceなんだよね Interfaceの要点 - 継承が前提(インスタンス化できない) …

学習雑記 java 18

HashMap 使ってみると奥が深いので改めて勉強したことをまとめてみる。Hashは肉の薄切りを混ぜ合わせた料理などに形容する言葉で、細片の集まりという意味合いがあります。hash = chopped meat mixed with something Mapの方は、よく言われるkey-value-chain…

学習雑記 JAVA17

Heap Soat ヒープ構造: 2分木の各節点にデータを保持し、親のデータが2つの子のデータよりも小さくなるように作られたデータ構造のこと。すべてのデータの中で、木の根のデータがもっとも小さい(または大きい)ことが保障される。 これだけだと正直??で、…

学習雑記 JAVA16

ソートのアルゴリズム、今回はmerge sort。 merge sortは2つのステップからなる。 1. divide : 読んで字の如く配列の要素を半分に分割した2つの配列を作成する。 2. conquer: 配列の要素を並び替えて結合する。 流れ自体はそれほど難しくも何ともないが、…

学習雑記15 JAVA

前回の内容から、ソーティングアルゴリズムを1つずつ実行してまとめていこうと思う。wikiなどで調べると本当に様々なアルゴリズムで勉強になります。https://en.wikipedia.org/wiki/Sorting_algorithm ひとまずは基本のシンプルなソートをJAVAで作成してみ…

学習雑記6 JAVA14

配列のsort考え方 ArraysとCollectionsを利用すれば一瞬で終わります。 Arrays.sort(配列); // 小-->大 Arrays.sort(配列, Collections.reverseOrder()); // 大-->小 入力する複数(必ず偶数)の任意の1桁の数値を2つ並べて、2桁の整数とし、それらの和の総…

学習雑記 JAVA13

抽象化プログラミング interfaceのポイント - 型を規定するだけで実装がない。 - 実装を持たない抽象メソッドを定義する。 - interfaceを実現するクラスは定義された抽象メソッドをオーバーライドする必要がある(強制) - interface自身はインスタンス化で…

学習雑記12 JAVA

NullPointerExceptionという例外 メソッドを呼び出すインスタンスの構文に問題が無くても、インスタンスの値がnullの場合に発生する。 nullは、どこにも参照していないことを表すリテラル。 例) public class Test { public void hello() { System.out.prin…

学習雑記11 JAVA

パッケージのまとめ カレントディレクトリでクラスを実行する時にコンパイルはできるのにロードできないなんてことがある。ソースファイルを読むからコンパイルはできるけど、クラスは完全修飾クラス名でないと扱われない、実行時のカレントディレクトリなど…

学習雑記帳10 JAVA

JSPの知識もあった方がいいよってさらっと言われて、 JAVA SERVER PAGESではなく、JACKSON STRUCTURED PROGRAMMING(=Jackson structured design)と思い込んで、コンテンツを探して読み解いた本日1日。 読み終わって、これ普通にプログラミングの勉強していけ…

学習雑記帳9 Python

週末に受講したCouseraのコース内容まとめ Collection: 1つの変数が複数の値を持っている状態(配列やハッシュなど)で代表としてListsとDictionariesがある。 ListsとDictionariesの違い、値に対するエントリーが異なる。Dictionaryは値を加える際に順番通…

学習雑記8 JAVA

インスタンスの扱い方4 クラス変数とクラスメソッド - ヒープ領域にの一部にクラスファイルを保管しておき、そこからインスタンスを生成する流れ - クラスファイルを保管しておく領域は「パーマネント領域」 - static修飾子のついたメソッドやフィールドは…

学習雑記7 JAVA

インスタンスの扱い方3 メソッドのオーバーロード:メソッドと引数のセットをsignatureと呼び、signatureが異なれば異なるメソッドとしてコンパイラやJVMに識別される仕組みをオーバーロード(多重定義)という。コンストラクタもオーバーロード可能。 publi…

学習雑記6 JAVA

インスタンスの扱い方2 コンストラクタメソッド:インスタンスの準備をするためのメソッド。インスタンス生成時と同時に自動的に実行。コンストラクタの定義には「クラス名と同じ名前」「戻り値を記述しない」「インスタンス生成時のみ呼び出し可能」の3つ…

学習雑記5 JAVA

インスタンスの扱い方 オブジェクト型変数:インスタンス生成時、インスタンスはヒープ領域に作られる。変数はインスタンスそのものではなく、インスタンスへの参照情報(スタック領域でコピーの際にメモリを多く消費してしまうから)。参照が入る変数のこと…

学習雑記 4

JAVAの本を読んで、概念、流れ、計算式など内容は頭に入っているがポイントとなる単語が頭にしっかり入っていないことが多い。その度に読み返すこともあり、整理が必要。一度見返せば十分かもしれないが念のためのまとめ。 mainメソッド: エントリーポイント…

学習雑記帳3 JAVA

学習内容のまとめ 1. ショートサーキット演算子 論理演算子を2つ重ねる。左辺がfalseを戻す場合、右辺の演算を省略できる。 2. if文における波括弧の省略 条件に合致した処理が1つしかない時、ブロックを表す波括弧を省略することができる。見にくいので、…

学習雑記帳2 JAVA

本日学習した内容でのポイント 1. 文字列連結 @左から順に連結される @intとstring型を連結するとき、intはstringに変換される a = "yen", d = 10 + 10 + a のとき、int同士が先に計算され、その後、stringに変換されて連結されるため、d = "20yen" a = "$…

学習雑記帳1javascript

CANVAS:描画する可能領域を定義するcanvas要素 0. getContext('2d')で2次元グラフィクスを扱える描画コンテキストを取得する 1. oncontextmenuで右クリックを向こうする 右クリックされた時のイベントはoncontextmenuで取得する。このイベントリスナーでfa…

Tech Camp 転職コースを終えて

Tech Campの短期転職コースを修了しましたので、真面目なレビューをいたします。 結論としては、webアプリケーションを作成するためのミニマムな技能が凝縮されていて受けてとても良かった。 履修上、問題だったなと思ったのは、カリキュラム教材(学習教材…

本日のエラーや振り返り

金曜日から体調が悪くて、学習ペースが落ちていましたが、今日からは完全復活。 ただ、なかなか思うように行かなかった。今はRailsでdeviseを使う練習をしていますが、単純なミスも気付けずにターミナルのエラー表示とにらめっこ。 1. モデルに設定するREGEX…

今日の学習

RailsでWebアプリケーションを作成するという課題に取り組んでいる。 勉強を続けてきて、プログラミング学習はエラーにどれだけ直面し、解決事例を積み重ねていくことなのだなと、できることが徐々にではあるが増えてきたこの頃は思う。 自分が思うままに作…

プログラミング学習の継続のために

最初は毎日少しずつ本を読むということを積み重ねてきた。 自主学習の限界を感じて、仕事を辞めて、プログラミングの勉強を始めるということを決断してスクールに今通っています。決断するまで1週間だったのですけどね。 コロナの影響もあり、仕事を辞める…