データの種類
1.浮動小数点
float単精度[4バイト]
倍精度倍精度[8バイト、より高い精度]
Java言語では、すべての浮動小数点リテラル[3.0]はデフォルトでdouble型として処理されます。
リテラル値を浮動小数点型として処理するには、リテラル値の後にF / fを追加する必要があります
注:
doubleとfloatは、コンピューターの内部バイナリストレージに保存されている場合の概算値です。
現実の世界では、次のような無限ループの数値があります。3.3333333...
コンピュータリソースは限られており、限られたリソースで無制限のデータを保存するには、概算値しか保存できません。
2.ブール値
ブールデータ型について:boolean
Java言語では、ブール型にはtrue、falseの2つの値しかなく、他の値はありません。
C言語とは異なり、0と1はfalseとtrueを表すことができます。
最下位のストレージでは、ブール型が1バイトを占めます。これは、実際に格納されているときは偽の最下位レイヤーが0であり、真の最下位レイヤーが1であるためです。
ブール型は実際の開発で非常に必要であり、論理演算や条件付き制御ステートメントでよく使用されます。
3.型変換
基本データ型間の相互変換について:
変換規則:
1 8つの基本データ型のうち、ブール型を除く残りの7つの型はすべて相互に変換できます。
2小容量から大容量への変換は自動型変換と呼ばれ、容量は小から大にソートされ
ます。byte<short、char <int <long <float <double
注:浮動小数点数がいくつ占有されていてもポイントタイプは、整数タイプの大容量よりも優れています。
charとshortは同じ数の型を表すことができますが、charはより大きな正の整数を取ることができます。
3大容量から小容量への変換を強制型変換といいます。プログラムをコンパイルして渡す前に型変換記号を強化する必要がありますが、実行時に精度が低下する場合がありますのでご注意ください。
4整数の額面値がbyte、short、およびcharの値の範囲を超えない場合、byte、short、およびchar型の変数に直接割り当てることができます。
5 byte、short、charが混在している場合は、演算前にint型に変換されます。
6複数のデータタイプの混合操作。操作を実行する前に、まず容量が最大のタイプに変換します。
オペレーター
4.算術演算子
Javaプログラミングの演算子について:算術演算子
+ | 和 |
---|---|
- | 減算 |
* | 製品 |
/ | 商 |
% | 残りを取る【モジュロ】 |
++ | 1を追加 |
--- | デクリメント1 |
概要:++演算子は、変数の前または後に表示できます。++操作が終了する限り、変数の値は、変数の前でも後でも、確実に1ずつ増加します。
++ a:操作で最初に1ずつインクリメントします。
a ++:最初に計算してから、1ずつインクリメントします。
5.関係演算子
>> | 以上 |
---|---|
> = | 以上以上 |
< | 未満 |
<= | 以下 |
== | 等しい |
!= | 等しくない |
=代入演算子です;
==関係演算子です;関係演算子
の結果はブール型でなければなりません。
public class OperatorTest
{
public static void main(String[] args){
int a=10;
int b=10;
System.out.println(a>b); //false
System.out.println(a>=b); //ture
System.out.println(a<b); //false
System.out.println(a<=b); //true
System.out.println(a==b); //true
System.out.println(a!=b); //false
}
}
6.論理演算子
論理演算子 | 説明 |
---|---|
& | 論理積(両側の演算子が真、結果が真) |
! | 論理否定(否定、!falseはtrue、!trueはfalse、これは単項演算子です) |
^ | 論理XOR(両側の演算子が異なる限り、結果は真です) |
&& | ANDの短絡(最初の式の実行結果はfalseであり、ANDの短絡が発生します) |
|論理OR(両側の演算子の1つが真である限り、結果は真です)
||短絡OR(最初の式の実行結果が真である場合、短絡ORが発生します)
1論理演算子では、両側の演算子がブール型である必要があり、論理演算子の最終的な演算結果もブール型である必要があります。
2短絡と合計のロジックは、短絡現象があることを除いて、最終的な動作結果と同じです。
3短絡ORと論理ORの最終的な動作結果は同じですが、短絡または短絡現象が存在します。
** 逻辑与和短路与的区别**
public class Test01
{
public static void main(String[] args){
int x=10;
int y=8;
System.out.println(x < y& ++x < y); //进行了++x的操作
System.out.println(x); //x=11
}
}
public class Test02
{
public static void main(String[] args){
int x=10;
int y=8
System.out.println(x < y& ++x < y); //因为x<y是false,直接短路,后面的操作就不在执行
System.out.println(x); //x=10
}
}
特定の観点から、短絡とよりスマート。以下の式は実行できない場合がありますので、実行効率が高くなります。この方法は、実際の開発でより多く使用されます。短絡ANDは、論理ANDよりも多く使用されます。短絡がより一般的に使用されます。
ただし、一部の特殊論理サービスでは、演算子の両側のすべての演算子を実行する必要があります。この場合、短絡ANDの代わりに論理ANDを使用する必要があります。短絡ANDを使用すると、右側の式が実行されません。