【Java Silver対策】
はじめに Javaの勉強を始めたばかりの頃、誰もが一度は引っかかるであろう「あるある」なエラーが、 if文の中の「=」と「==」の使い間違い だと思います。 今回は、この違いについて例え話を交えながら解説したいと思います。 まずは問題のコードを見てみ…
はじめに Javaの学習をしていると、条件式で「または(OR)」を表すときに || をよく使うと思いますが、 | のように1本線で書くこともできます。 実はこの2つ、プログラムの動き方が全く違うため、思わぬバグの原因になることがあります。 今回は、この2つ…
はじめに Javaの勉強をしていると、「あれ?なんでこれエラーになるの?」と首を傾げたくなる場面があると思います。 特にJava Silverなどの資格試験では、「文法チェックではじかれるエラー(コンパイルエラー)」と、「動かした後に爆発するエラー(実行…
はじめに Javaの学習を進めていると、誰もが一度は「あれ?なんでこの比較、falseになるの?」と疑問に思う瞬間があると思います。 今回は、Java Silverの試験でもよく狙われると言われている「String と StringBuilder の equals() メソッドの違い」につい…
はじめに Javaの勉強中、またはJava Silverの試験対策中に、こんなコードに出会ったことはありませんか? 一見すると普通の計算に見えますが、実はコンパイルエラーになってしまう「ひっかけ」が潜んでいます。 今日は、なぜエラーになるのかを「カメレオン…
はじめに Javaの勉強を進めていると、「あれ?このデータは小数(doubleなど)だけど、今用意している箱は整数(int)専用だぞ…?」と困ってしまう場面に出くわすことがあると思います。 今回は、そんな時に使える「キャスト」の使い方と、初心者が絶対に覚…
はじめに Javaを勉強していると、整数(int)と小数(double)が混ざった計算式に出会うことがあります。 一見すると「どっちの型になるの?」と迷ってしまいますよね。 今回は、この計算のルールを「RPGのダメージ計算」に例えて、初心者向けに分かりやす…
はじめに Javaの勉強をしていると、必ずぶち当たるのが「データ型(変数の種類)」の壁ではないでしょうか? intやdouble、longなど色々な型が出てきて、「どれがどれに代入できるの!?コンパイルエラーになる条件が分からない!」 そんな風に悩んだときは…
はじめに 今回は、Javaの少し新しい書き方である「switch式(Expression)」について解説します。 従来のJavaにあった「switch文」は、条件分岐を行うためのものでしたが、うっかり break; を書き忘れて別の処理まで進んでしまう(フォールスルー)という危…
はじめに Javaのプログラミングを勉強していて、「switch文のbreak;を書き忘れて、意図しない処理まで実行されちゃった…」という経験はありませんか? 実は、最近のJava(Java 14以降)では、「アロー構文(->)」という新しい書き方が登場し、安全でスッキ…
はじめに Javaのプログラミングを学んでいると、必ず出会うのが条件分岐の switch 文だと思います。 一見シンプルに見えますが、実は初心者が引っかかりやすい「3つの罠」が隠されています。 今回は、Java Silverの試験対策としても重要だと言われているこ…
はじめに Javaの勉強をしていると、if文のほかにswitch文という条件分岐に出会いますよね。 今回は、このswitch文で使える便利な「複数条件のまとめ方」と、初心者がうっかりハマりやすい「フォールスルーの罠」について、RPGゲームに例えて解説します。 …
はじめに 今回は、Java Silverの学習中に引っかかりやすい罠、「String(文字列)の比較」について解説します! 実は、文字列を比べる時に == を使ってしまうと、思わぬバグを引き起こす原因になります。 RPGのゲームに例えながら、なぜダメなのか、どうす…
はじめに Javaの勉強、お疲れ様です! Java Silverの勉強をしていると、引っかかりやすい「罠」があります。 それは…… 「配列の長さを測る時は length なのに、文字列の長さを測る時は length() になる問題」 です! 「えっ、どっちにカッコ () がつくんだ…
はじめに Javaの学習をしていると、文法的には間違っていないのに「思っていた動きと違う!」というバグに遭遇することがあります。 今回は、Java Silverの試験によく出ると言われている「波括弧 { } を省略した if 文の罠」について、RPGの勇者の冒険に例…
はじめに Javaの学習をしていると、「ラッパークラス」や「メソッド」といった聞き慣れない言葉がたくさん出てきますよね。 今回は、Java Silverの試験対策としても重要だと言われている「オートボクシング(データ型の変換)」と、文字列を操作する「charA…
はじめに 今回は、私がJavaを学習中に「えっ、なんでここでエラーになるの!?」と疑問に思った「数値の計算時に起きる型のトラップ」について解説します。 例えば、小さな数値を入れる short 型同士を足し算すると、どうなると思いますか? 実はこれ、その…
はじめに Javaの学習を進めていると、必ず出会うのが「型変換(キャスト)」です。 「暗黙の型変換?」「キャスト式?」と、最初は頭が混乱してしまうかもしれません。 Javaのデータ型を「色々なサイズの箱」に例えれば、シンプルに理解できると思います。 …
はじめに Javaの勉強をしていると、「あれ?同じ文字を入れたはずなのに、どうして結果が false(違う)になるの!?」と疑問に思ったこと、ありませんか? 実はこれ、Java初心者が必ず一度は引っかかる 「StringBuilderの落とし穴」 だと言われています。 …
はじめに Javaを学習していると、文字列の比較で == と equals() の違いにぶつかりますよね。 その中でひっそりと登場する intern() というメソッド。 「これ、一体何をしているの…?」と疑問に思ったことはありませんか? 今回は、Javaの文字列管理の仕組…
はじめに 今回は、Javaを学び始めた方が必ず一度はハマる「==(等価演算子)の罠」について解説します。 例えば、数字の 5 同士を比べると同じになりますが、文字列の "Java" 同士を比べると「違う!」と判定されてしまうことがあります。 なぜそんなことが…
はじめに Javaを勉強していると、条件によって結果を変えたい時、必ずと言っていいほどお世話になるのが if〜else 文だと思います。 でも、「もっとスッキリ短く書きたい!」と思ったことはありませんか? 実はJavaには、「三項演算子(さんこうえんざんし…
はじめに Javaの学習を進めていると、条件式で「&(シングル)」と「&&(ダブル)」という2つの記号をよく見かけませんか? 「どっちも『かつ(AND)』って意味でしょ?何が違うの?」と疑問に思う方も多いのではないでしょうか? 実はこの2つ、「条件を満…
はじめに Javaの学習を始めて、四則演算(足し算・引き算・掛け算・割り算)のプログラムを書いているとき、こんな疑問を持ったことはありませんか? 「あれ? 10 ÷ 3 を計算したのに、結果が 3.333... じゃなくて 3 になってる…バグかな?」 実はこれ、バ…
はじめに Java Silverを勉強していると、「変数を使って足し算をしたのに、ある時は計算されて、ある時は文字がくっつく。その仕組みがいまいち分からない…」こんな経験はありませんか? 今日は、「文字と数字の足し算トラップ」について分かりやすく解説し…
はじめに Java Silverの勉強をしていると、必ずと言っていいほど出会うのが StringBuilder クラスの問題だと思います。 今回は、初心者が「えっ、なんで!?」とつまずきやすい 「substringメソッドの引っかけ」 について、「ノート」 に例えて分かりやすく…
はじめに Javaの学習を始めたばかりの時、public static void main(String[] args) の args って一体何だろう?と疑問に思ったことはありませんか? 今回は、プログラム実行時に渡す「コマンドライン引数」の仕組みと、ちょっと引っかけになりやすい「スペ…
はじめに Javaの学習(特にJava Silverの試験対策)をしていると、多次元配列(2次元配列)の宣言で「あれ?これってどういう意味だっけ?」と手が止まった経験はありませんか? 今回は、初心者の方が迷いやすい以下のコードについて、「マンションの建築」…
はじめに Javaの学習を進めていると必ず出会う「配列」。 同じ種類のデータをまとめて管理できる便利な機能ですが、新しく配列を作るときに「絶対に守らなければならないルール」が1つあります。 今回は、初心者がうっかりハマりがちな「配列作成時のコンパ…
はじめに Javaの学習をしていると、変数(データを入れる箱)の前に final(ファイナル) というキーワードがついているのを見かけることはありませんか? 「普通の変数と何が違うの?」 「つけるとどんな良いことがあるの?」 今回は、そんなJavaの final …