データの種類
基本データ型8
タイプ | 数量 | データの種類 | アンドリュー・ラブバイト |
プラスチック | 4 | バイト | 8ビット |
ショート | 16ビット | ||
int型 | 32ビット | ||
長いです | 64ビット | ||
フロート | 2 | 浮く | 32ビット |
ダブル | 64ビット | ||
文字 | 1 | CHAR | 16ビット2バイトのUnicodeエンコーディング0-65535 |
ブーリアン | 1 | ブーリアン | 1ビット真偽 |
1.整数
1.byte
バイト------> 8ビットのビット単位敏感
1バイト== 8ビット組み合わせで0 0000000 256
記録シンボルに第1のビット位置0 1正、負
-2 7の値の範囲2乗に7番目-1
-128〜127
2.short
2バイト種== 16ビット65526 32767 -32768
3.int
。4バイト、32ビット-2147483648 2147483647 ==
4.long
。8バイト== 64ビット
2.浮動小数点
1.float
。4バイト、32ビット==
0 000000000 00000000000000000000
2.Double
文字char
文字?「A」「+」「I」「5」
の数字と整数の数値文字の競合
各単一引用符でフロントと各文字の前後の区別示すために
英語や記号や数字がバイトしているのはなぜ
中国人は2である理由をバイト?
ASCII情報交換用米国標準コード
A 97 ------- ------- 00000000
A 00000000 ------ 97 ------
A ------ 00000000 --- --- 97個の
英数字
26 * 2 + 10 +組み合わせ100 256バイトの種類
ブールboolen
参照データ型
配列[]カテゴリークラス(抽象クラス抽象クラス)列挙列挙注釈インターフェースインターフェース@inte
定数
定数は、プログラムの値を再び変更することはできません実行している表し
###アクション定数*
1.定数値は、古代の頻繁に使用されるの計算値表す
計算プログラムに変異体を
円周3.1415926 ...の比
2を意味表現するために用いられる
四方表す> 1 2 3 4 == UP
### どのような値を???考え定数
1は、固定定数値をカウント
1 3.14「」真の
固定された一定の全ての基本的なタイプの値であるとみなす
2.特別な定数
「ABC」 - >文字
列が基準データでありますその値は、単に特別な定数とみなされ、入力し
、彼は変更できないようにアップされた固定値作成しています。3.ストレージスペース
= 1をint型FINAを。
変数
変数は、プログラムの実行のプロセスを指す変更することができる
変数は、メモリ空間(小容器)である
可変領域を作成(文)の空間内の変数のデータ・タイプの名前を指定する必要がある場合
にのみコンテンツ(基準値)を格納することができる空間変数
あなたは、変数空間の内容を変更することができます
あなたは問題という名前の変数を作成することに注意してください
命名規則
文字(大文字と小文字を区別センス)数字(0〜9始まりは許可されていません)、シンボル(記号$ _英語)中国語(推奨されません)
名前付き規程
クラス名は、もし二つ以上の単語すべて大文字の大文字
SuperPersonの
最初の文字が最初の文字が二つ以上の単語が後に大文字小文字場合は、変数名を
superPerson
命名規則のラクダに続く
すべての名前が正義の名を知って見る必要がある
プログラムを強化するために、可読性
変数/文を作成する方法
データ型変数名;
int型A;
文字列B;
注:
Aの変数は、唯一の内容格納するためのスペースを作成することはできませんスペースで
空のデフォルトのコンテンツを作成するための変数のスペースをされていない
空の変数空間のコンパイルエラーを使用するために使用することはできません
; //は、変数名を宣言されたX宇宙空間スペースバイトのxを必要なストレージタイプ内バイトの整数である
X = 1; //アサイン話すように格納するための1つのxの空間内の
基盤となるコンピュータが何を
どのような1.xのですか?どこ変数のスペースが存在?
2.1それは何ですか?定数がある場合に1がありますか?
3.何=はい?=割り当てが何をしましたか?
コンピュータのハードウェアコンポーネントは、
サウンドカードグラフィックカードCPUパワーマザーボード
メモリドライブを
Test.java 1.ハード・ディスク上のファイルを作成するには
、ファイルの内容は、(コンピュータが指示を送ると)私たちは、ソースコードを記述している2。
public class Test{
public static void main(String[] args) {
byte x;
x=1;
}
}
3. Test.javaソースファイル- >コンパイルする----> Test.class
我々はバイトコードを理解していないものは、コンピュータを残し認識し
4の---->メモリ実装実行
ハードディスクTest.class上のコンテンツをメモリにロード
5.私たちの書かれた命令の実行メモリ空間の割り当て変更...
コメント:
1.单行注释
//
2.多行注释
/*
/
3.文档注释 类和方法上
/*
*/
==================================================
float e=3.4F;
从double转化到float会有损失
1 3.4 常量值
存储在常量缓冲区中的
常量值的存储形式肯定不是十进制 是以二进制形式存储
1----> 32bit(int)
3.4 ----> 64bit(double)
byte a = 1;
1---->32bit
00000000 00000000 00000000 00000001
a---->8bit
00000001
=赋值的时候做了一个自动的决定 自动类型转化 即a的值在范围内-128 至127
long d = 2147483648L;
-2147483648 2147483647 是int类型的取值范围
如果创建的常量值超过以上范围
程序编译检测的时候会认为 数字太大
如果我们真的需要那么大的数字 必须在后面加L告知
字符 字符串
char String
基本 引用
‘a’ “a” “abc” null
public class Test2{
public static void main(String[] strs){
byte a=1; //
short b=2;
int c=3; //-2147483648 2147483647
long d=2147483648L; //超过int取值范围 加L 告诉编译器超过了int取值范围 为超过可不加
float e=3.4F;
double f=4.5;
char g ='a' ;
boolean h = true;
}
}
数据类型之间的转化问题
整型
byte short int long
浮点
float double
字符
char
布尔型
boolen
byte a=1; //8bit -128 ~ 127
int b=a; //32bit
食堂吃饭
一碗米饭 2两碗 1两米饭
4两碗
int a=1;
byte b=(byte)a; //127 (byte) 强制类型转换
a----> 4两碗 1两米饭/3两空气 空气强制砍掉一部分
b----> 2两碗 1两米饭/1两空气
00000000 00000000 00000000 00000001
00000001----只保留最后的8个bit位
int a=1000; //编译—运行
byte b=(byte)a; //127 (byte) 强制类型转换
a----> 4两碗 3两米饭/1两空气 空气强制砍掉一部分
b----> 2两碗 1两米饭/1两空气 -24
00000000 00000000 00000011 11101000 — 十进制—>二进制 除以2取余数 余数倒叙排列
int a = 1; //32bit
float b = a; //32bit 可以 b = 1.0; 精确程度
long a = 1; //64bit
float b = a; //32bit
char—字符----‘a’----0001010101—97----int
char x = ‘a’;
int y = x; //??? y—>97
类型之间的转换问题
1.同种数据类型之间是可以直接进行赋值操作
int a=1; int b=a; || float x=3.4; float y=x;
2.数据类型不同的空间 之间的赋值 ---->转换的问题
同种大数据类型之间才能发生转换
基本类型<---->基本类型之间 可以直接转换(自动 强制)
引用类型<---->引用类型之间 可以直接转换(自动 强制—上转型 下转型)
基本类型<---->引用类型之间 不可以直接转换(间接—包装类/封装类)
3.保证大数据类型一致的前提下
基本类型----基本类型
小数据类型相同
都是整型 都是浮点
大空间变量可以直接存储小空间的数据
小空间变量不可以直接存储大空间的数据(需要强制类型转换)
转换过程写法都好用 如果转换的过程中数值的范围超过边界 可能会有损失
byte a = 1; int b = a; //自动直接转化就可以
int a = 1; byte b =(byte)a; //需要强制类型转换
float x=3.4F; double y = x; //自动直接转化
double x=3.4; float y = (float)x; //强制转换
如果发现强制转换之前的数值比较大 强制转换这件事情是可以做
INT A = 1000、バイトB = (バイト); // Bコンパイラが実行有用値格納された変化が起こらなければならない
小さなデータの異なるタイプの
フロート整数----
精度のフロート2つの正確度逆に、より高い整数が(整数のみ残して強制的に除去小数点以下部分)キャスト直接格納する必要が
任意のフロートが整数値上に直接配置することができる
FLOADのB =; = 1 INT ; // 自動的にダイレクト変換
フロートA = 1.0F; INT B = (INT); // キャスト
積分文字----
97からそれぞれのUnicode文字コードに相当
チャー= ''; Y = INT X; //自動的に変換-97 Yの
INT X = 97、Y = CHAR(文字)は、X; //必須変換
*ブール非常に特別な
缶は、実質的に他のタイプの変換できない
参照型の間に従います...