2.データ型と文字列操作

整数リテラル

整数リテラルの記述(接頭辞)

  • 2進数:「0b」
  • 8進数:「0」
  • 16進数:「0x」

整数リテラルの記述(接尾辞)

  • ong型:「L」又は「l」
  • float型:「F」又は「f」
  • int型のリテラルは、byte型short型の場合は、自動型変換

アンダースコア

  • リテラルの先頭と末尾には記述できない。
  • 記号(「.」「L」「F」「0b」「0x」)の前後には記述できない。

文字リテラルと文字コード

  • 文字列リテラルとchar型リテラルは互換性がない(コンパイルエラー)
  • Unicode文字:「\u」の接頭辞の後ろに16進数4桁
  • char型リテラルには「0~65535」までの数値を代入できる(負の数はコンパイルエラー)
  • char型に「null」は代入できない

命名規則

  • 予約語は使用できない。
  • 使える記号は「_」(アンダースコア)と「$」(ドル記号)
  • 先頭に数値は使用できない

型推論 (var)

  • 変数宣言時のデータ型を推論する機能でコンパイル時に行われる
  • メソッドの戻り値の受け取り・・・型推論できるためOK
  • var変数を「null」で初期化するとコンパイルエラー
  • ラムダ式は変数の型を推論できないため、使用できない(コンパイルエラー)
  • 配列
    • 例:var a={1,2,3}; //型を特定できない(コンパイルエラー)
    • 例:var a=new int [] {1,2,3}; ・・・OK
    • 例:var a=new int [3]; ・・・OK
    • 例:var a=new int[]; ..・・・NG(コンパイルエラー)
  • ダイヤモンド演算子で型が推論できない場合はObject型がパラメータとして与えられるので使用可能
  • ローカル変数の宣言にしか使えない
    • フィールド変数・コンストラクタの引数・メソッドの引数・メソッドの戻り型には使えない

Stringクラス

メソッド名説明
char charAt(int index)引数にある文字を返す。開始は0
boolean equals(Object o)引数の文字列と同じか比較し、boolean値で返す
String intern()文字列プールの中にある一意の文字列を返す
int indexOf(int ch)引数の文字列が最初に出現する位置を返す。開始は0
int length()文字数を返す
String replace(char o,char n)第1引数の文字を第2引数で指定した文字に置換、結果の文字列を返す
String substring(int i)引数で指定した位置から最後までの部分文字列を返す。 開始は0
主要なメソッド

StringBuilderクラス

  • repleceメソッド:第1引数と第2引数で指定された範囲の文字列を第3引数の文字列に置換
  • indexOfメソッド:引数で渡された文字列のインデックスを返す(0始まり)

immutable(不変)なオブジェクト

  • すべてのフィールドをfainalかつprivateにする
  • クラスをfainalで宣言してサブクラスによるメソッドのオーバーライドを許可しない
  • setter・getterメソッドを提供しない

コメント

  1. 荒巻康彦 より:

    お久しぶりです。
    久しぶりにサイトを見せてもっらいました。お元気で、勉強に励んでいらっしゃるようで、
    エネルギッシュですね。
    私の方は、今、JavaフレームワークのSpringについて勉強しています。はじめは、簡単と思っていましたが、調査していくうちに、たくさんの内容があることが分かり、ちょっと時間がかかっています。
    早く、目途をつけ、チャンスがあれば、また、Javaの開発現場に入れないかと思っています。年齢が65になるので、難しいとは思いますが、やるだけやってみます。
    それでは、お体に気を付けてがんばってください。

  2. kazz より:

    先生、コメントありがとございます。

    今の状況は、先生のサイトでメッセージを送ってます (*^-^*)