Javaの基本構文
目次
1.キーワード、予約語、特別な値
-
キーワード:
Java言語で特別な意味を与えられている単語です。キーワードの特徴
キー文字はすべて小文字一般的なキーワード
class、public、static、void… -
予約語
Javaに登録されていますが、まだ使用されていません
goto、const
-
**特別な値:** true、false、null
2.識別子
Javaがさまざまな変数、メソッド、およびクラスに名前を付けるときに使用する文字シーケンスは、識別子と呼ばれます。
名前を付けることができる場所はすべて識別子と呼ばれます。
1.識別子の命名規則
(1)Java識別子は、大文字と小文字を26文字、0から9までの数字、アンダースコア_、ドル記号$のみを使用できます。
(2)Javaキーワード、予約語、特別な値は使用できませんが、キーワードと予約語を含めることはできます。
(3)番号を開始できない
(4)スペースを含めることはできません
(5)大文字と小文字を厳密に区別し、長さは無制限です。
2.識別子の命名規則
(1)名前を見て意味を知る
(2)クラス名、インターフェース名など:各単語の最初の文字は、XxxYyyZzzの形式で大文字になります。
例:HelloWorld、String、Systemなど。
(3)変数、メソッド名など:2番目の単語の最初の文字を大文字にし、残りの文字をxxxYyyZzzの形式で小文字にします。
例:age、name、bookName、main
(4)パッケージ名など:各単語は小文字で、単語の間にドットが使用されます。分割、形式:xxx.yyy.zzz、
例:java.lang
(5)定数名など:各単語は大文字で表記され、単語はアンダースコア_で区切られます。形式はXXX_YYY_ZZZ、
例:MAX_VALUE、PI
3.定数
定数:
プログラムの実行中に値が変化しない量。
Javaでの定数の分類:
(1):リテラル定数
(2):カスタム定数
リテラル定数の分類:
(1):二重引用符で囲まれた文字列定数 "HelloWorld"、 "Hello"
(2):整数定数すべての整数12,23
(3):10進定数すべての小数12.34,56.78
(4):一重引用符「a」、「A」、「0」で囲まれた文字定数の内容(注:一重引用符は単一の文字、単一の数字、単一の記号のみにすることができます)
(5):ブール定数はより一意であり、trueのみおよびfalse
(6):空の定数null
4.変数
変数の役割:データの保存に使用
変数の性質:メモリのストレージ領域
変数の3つの要素
-
データ型:メモリサイズと保存できる値を決定します
-
変数名:このストレージ領域にアクセスする方法
-
値:内部に保存されているデータ
変数の宣言:データ型変数名;
**変数の割り当て:**変数名=変数値;
変数の宣言と変数の割り当ては、同時にまたは別々に実行できます。ただし、変数にアクセスする前に、値が必要です。
例:データ型変数名=変数の初期値;
変数の使用:変数名を介してこのストレージ領域にアクセスします
変数の使用に注意を払う必要があります。
1.使用前に宣言する
- 宣言がない場合は、「シンボルが見つかりません」エラーが報告されます
2.使用前に初期化する必要があります
- 初期化されていない場合、「初期化されていない」エラーが報告されます
3.変数にはスコープがあります
-
範囲を超えると、「シンボルが見つかりません」エラーも報告されます
-
スコープ:{スコープ}と見なすことができます
4.同じスコープ内で同じ名前を持つことはできません
5.データ型
5.1Javaデータ型の分類
1.基本的なデータ型
8种:整型系列(byte,short,int,long)、浮点型(float,double)、单字符型(char)、布尔型(boolean)
2.参照データ型
类、接口、数组、枚举.....
5.2Javaの基本的なデータ型
1.整数級数
(1)バイト:バイトタイプ
メモリを占有:1バイト
保管範囲:-128〜127
(2)short:短整数型
メモリを占有します:2バイト
保存範囲:-32768〜32767
(3)int:整数
メモリを占有します:4バイト
保管範囲:-2〜31乗〜2〜31乗-1
(4)long:整数
メモリを占有:8バイト
保存範囲:-2の63乗から2の63乗-1
注:long型の定数を表す場合は、数値の後にLを追加する必要があります。
2.浮動小数点シリーズ(10進数)
(1)float:単精度浮動小数点
メモリを占有します:4バイト
精度:科学的記数法で小数点以下6〜7桁
注:定数がfloat型であることを示したい場合は、数値の後にFまたはfを追加する必要があります。
(2)double:倍精度浮動小数点型
メモリを占有:8バイト
精度:科学的記数法の小数点以下15〜16桁
3.単一文字タイプ
char:文字タイプ
メモリを占有します:2バイト
Javaで使用される文字セット:Unicodeコードセット
文字の3つの表現:
(1)「1文字」
例:「A」、「0」、「尚」
(2)エスケープ文字
\n:换行
\r:回车
\t:Tab键
\\:\
\":”
\':
\b:删除键Backspace
(3)\ u文字のUnicodeコード値の16進型
4.ブール型
boolean:trueまたはfalseのみを格納できます。1バイトを占有します。
5.3基本データ型の変換
1.自動型変換
Javaでは、整数はデフォルトでInt型であり、小数はデフォルトでdouble型です。
(1)格納範囲の小さい値(定数値、変数値、式計算結果値)を格納範囲の大きい変数に割り当てた場合、
バイト->ショート->整数->ロング->フロート->ダブル
char->
int a = 'A';//char自动升级为int
double d = 5;//int自动升级为double
(2)記憶範囲の小さいデータ型と記憶範囲の大きいデータ型が混在している場合は、最大の種類に従って操作を行います。
int a = 1;
byte b = 1;
double c = 1.0;
double num = a + b + c;//混合运算,升级为double
(3)byte、short、charデータ型で算術演算を実行する場合、それらはint型として処理されます。
byte b1 = 1;
byte b2 = 2;
byte b3 = (byte)(b1 + b2);//b1 + b2自动升级为int
char c1 = '0';
char c2 = 'A';
System.out.println(c1 + c2);//113
(4)ブール型は参加しません
2.強制型変換
(1)大きな保存範囲値(定数値、変数値、式計算結果値)を小さな保存範囲変数に割り当てる場合は、強制型変換が必要です。
double-> float-> long-> int-> short-> byte
->char
注:リスクがあり、精度が低下したりオーバーフローしたりする可能性があります
double d = 1.2;
int num = (int)d;//损失精度
int i = 200;
byte b = (byte)i;//溢出
(2)ブール型は参加しません
(3)値がデータ型をプロモートしたい場合は、強制を使用することもできます
int i = 1;
int j = 2;
double shang = (double)i/j;
ヒント:この状況では、強制型変換のリスクはありません。
3.一定の最適化メカニズム
複数の定数を一緒に計算する場合、最初に結果を計算し、次に計算結果がデータ型の範囲内にあるかどうかを判断します。
例:バイトb = 3 +4;エラーなしでコンパイル
5.4特別なデータ型変換
1.任意のデータ型のデータと文字列型の間で「+」操作を実行する場合、結果は文字列型である必要があります
System.out.println("" + 1 + 2);//12
2.文字列型は強制型()変換では他の型に変換できません
6.ベース
6.1ベース
コンピューターの計算とストレージはすべてバイナリ方式で実装されます。
ビット—コンピューターの最小ストレージユニット。
バイト—コンピューターの基本ストレージユニット
:1バイト= 8ビット、1KB = 1024バイト、1MB = 1024KB、1GB = 1024MB、 1T = 1024GB
整数の場合、次の4つの表現方法があります。
- バイナリ:0、1、フル2 1を入力します。0bまたは0Bで開始します(文字Bは大文字または小文字にすることができます)。
- 10進数:0〜9、10を1にフル。
- 8進数:0〜7、8を1に入力します。8進数の前に0を付けて示します。
- 16進数:0〜9およびAF、完全な16進数は
1、16進数は0X(文字Xは大文字と小文字を使用できます)で表されます(例:0x3f20(16進数)0732(8進数))。
6.2元のコード、逆コード、補完コード
すべての番号は、コンピューターの下部にバイナリ形式で存在します。コンピューター内の数値の2進表現は、この数値のマシン番号と呼ばれます。マシン番号は署名されています。コンピューターは、数値の最上位ビットを使用して符号を格納します。正の数は0、負の数は1です。
Java整数定数は、デフォルトでint型です。整数がバイナリで定義されている場合、その32番目のビットは符号ビットです。long型の場合、バイナリはデフォルトで64ビットを占め、64番目のビットは符号ビットです。
マシン番号は署名されているため、マシン番号と番号の「2進値」には依然として違いがあります。
- コンピューターはすべての整数を補数の形で保存します。
- 元のコード、1の補数、および正の数の補数はすべて同じです。
- 負の数の補数は、その補数に1を加えたものです。
元のコード、1の補数、および1の補数表現を使用する理由:
コンピューターによる「符号ビット」の識別は、コンピューターの基本的な回路設計を明らかに複雑にします。そこで、人々は符号ビットを計算に含める方法を考え出しました。アルゴリズムによれば、正の数を減算することは負の数を加算することと同じです。つまり、1-1 = 1 +(-1)= 0であるため、マシンは加算のみが可能であり、減算はできません。したがって、コンピューター操作の設計は次のようになります。よりシンプル。
7.オペレーター
1.オペランドの数による分類:
(1)単項演算子:オペランドは1つだけです
例:正の符号(+)、負の符号(-)、インクリメント(++)、デクリメント(–)、論理否定(!)、ビット単位の否定(〜)
(2)二項演算子:2つのオペランドがあります
例:加算(+)、減算(-)、乗算(*)、除算(/)、モジュラス(%)
(3)三項演算子:3つのオペランド
例:?:
2. Java基本データ型の演算子:
(1)算術演算子
(2)代入演算子
(3)比較演算子
(4)論理演算子
(5)条件付き演算子
(6)ビット演算子
7.1算術演算子
追加:+
減算:-
乗算:*
分割:/
注:整数を整数で除算する場合、整数部分のみが保持されます
モジュラス:%残りを取ります
注:モジュロ結果の符号は、モジュラスにのみ依存します
正の符号:+
負:-
インクリメント:++
デクリメント:–
原則:自己増加と自己減少
- ++ / –最初のものは最初に増加/減少し、次に値を取ります
- ++ / –後者の場合、最初に値を取得してから、増加/減少します
式全体が左から右にスキャンされます。後者が最初に計算されると、前者は一時的に「オペランドスタック」に配置されます。
7.2代入演算子
基本的な代入演算子:=
拡張代入演算子:+ =、-=、* =、/ =、%= .. ..
注:すべての代入演算子の左側は変数でなければなりません
拡張代入演算子=右側の計算結果の型が左側の型よりも大きい場合、型変換が強制されるため、結果が危険になる可能性があります。
拡張代入演算子の計算:(1)代入は最後に計算されます(2)データをロードする順序は、最初に左側の変数の値をロードし、次に右側の式を使用して計算することです。
7.3比較演算子
大なり記号:>
未満:<
以上:> =
以下:<=
等しい:==代入演算子の=を区別するように注意してください
等しくない:!=
注:比較式の演算結果は、true / falseのみである必要があります。
比較式は、(1)条件(2)論理演算子のオペランドとして使用できます。