Javaの研究ノート(a)のデータ型

基本データ型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]

コメント:

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; //必須変換
    *ブール非常に特別な
       缶は、実質的に他のタイプの変換できない
       
   参照型の間に従います...

公開された30元の記事 ウォンの賞賛0 ビュー6664

おすすめ

転載: blog.csdn.net/qq_37710756/article/details/103113770