`

java读书笔记1(基本类型和运算符)

    博客分类:
  • java
 
阅读更多

java读书笔记1(基本类型和运算符)

一.程序启动:

1.java虚拟机默认是以指定类的main方法开始执行(eg:执行命令,java MyApp,这是虚拟机就从MyApp类的main方法开始执行).

2.main方法的规范:public static void main(string[] args){};(为什么必须是这样呢????)

二.java中的注释:多行注释不能嵌套的.

1.单行:

//我是注释

2.多行:

/*

 我是注释.

  我还是注释.

 */

3.能够被javadoc识别生成文档的注释(里面还可以包含一些标记):

/**

 我最牛逼.

 你行吗.

 */

三.  基本数据类型:没有无符号的,各种系统上都是一样的大小和范围.

1.整型:


  • byte:  1个字节  -128~127   (用于特定的场合,文件流和节约空间大小)
  • short:  2个字节  -32768~32767    (用于特定的场合,文件流和节约空间大小)
  • int:      4个字节  -2147483648~ 2147483647(20多亿) (直接常量的默认值,最常用的 如:45 其类型就int)
  • long:    8个字节 非常大  (直接常量加L后缀就是用这个long类型存储)


2.浮点型:不适合出现在禁止舍入误差的金融计算中.该用类库中的BigDecimal类


  • float:  4个字节  有效位6~7位. 1.4E-45~3.4028235E38 (直接常量 后缀f用这种类型存储)
  • double: 8个字节 有效位15位.  4.9E-324~1.7976931348623157E308(直接常量的默认存储类型)


3.字符型: 尽量少用,除非要操作代码单元.可以直接赋值字符也可以赋值代码点范围内的整数,可以参与运算,可以看成整数.


  •   char:2个字节.用UTF-16编码描述一个代码单元.(复杂) 表示的代码点的范围:0~65535  可以无损转换为int
  • 常见的转义字符:
  1. \\: 反斜杠
  2. \": 双引号
  3. \': 单引号
  4. \n:换行
  5. \r:回车

4.布尔型:不能和整形相互转换.用于逻辑判断.


  • boolean: 1个字节 false和true 

四.变量:包含三个概念(类型,名字,值) 可以理解变量是一个框子,框子的名称就是变量名,框子的大小和格式就类型,框子中装的就是值.


  • 类型:决定变量需要占的内存大小.(eg:int类型: 4个字节空间,引用类型: 存放堆地址的大小空间)
  • 名字:分配的内存的首地址(不知道这样理解对不对)
  • 值:内存中实际存储的内容.



  1. 1.变量名:大小写敏感,以字母 $ _开头,后面可是数字 字母 $ _的组合.不能是java中关键字.
  2. 2.变量的声明:int i;
  3. 3.变量的初始化:i=3;
  4. 4.一步到位:int i=3;


注意:java不区分变量的声明和定义.不像c/c++.


五.常量:不能改变其值.final表示只能被赋值一次,一旦赋值以后不能改变.


  1. 直接常量:3,"susu",3.45,'a';(呵呵呵,这个是如何也改变不了的)
  2. 对象常量:final int FLAG=3;final String NAME="rock";(每个对象有一个)
  3. 类常量:static final int FLAG=3;(只有一个)


六.运算符:


1.算数运算符:+ - * / %


  • 当/用于两个整数时表示整数的除法,否则表示浮点数除法.
  • 整数除0得到异常.浮点数除0得到无穷大或者NAN
  • 赋值运算符和算数运算符结合使用:+= -+ /= %= eg:i+=3;表示i=i+3;


2.自增自减运算符: ++   -- 只能用于整型 浮点型 字符型变量


  • n++,n--:执行完后将变量值加/减1
  • ++n,--n:执行之前将变量值加/减1


3.关系运算符:< > == != <= >= ;运算的结果是true或者false.


4.逻辑运算符:&& || !;二元运算符,参与运算的是boolean类型.其结果也是boolean类型.


  • 按照短路的方式运算.


5.三元运算符: boolean类型的表达式或者变量或者直接常量 ? true是执行的语句 : false是执行的语句;


6.位运算符: 对一个整数或者字符的位进行操作(运用屏蔽技术,以后研究).对于byte short char类型先提升为int再一位

                所以对于byte short char int的移位运算,右边的移位位数先要和32取模,long类型的移位右边的位数要

                先和64取模.所以int i=4;i<<1和i<<33是一样的结果.


  • 不按短路的方式  
  • &:与位运算 全1为1
  • |:全0为0
  • ^:相同为1
  • ~:0则1,1则0
  • 有点小复杂,以后研究.
  • <<:左移,
  • >>:右移 ,
  • >>>:


n>>3:n除以2的三次方.n>>3:就n乘以2的三次方.

注:整数编码方式:整数的编码(原码 反码 补码)和在内存中的存储方式.


七.类型转换:

1.自动转换:




 

 

  • 实线为安全的转换,虚线表示可能会有精度损失.
  • 自动的转换按如下的方式进行.
  • 如果有double类型,有则转换为double类型.
  • 否则判断是否有float类型,有则转换为float类型
  • 否则判断是否有long类型,有则转换为long
  • 否则转换成int类型.

 

2.强制类型转换(可能不安全)

如:int i=1234;

    byte j=(byte)i;

 

  • 但把浮点数强制转换为整数时会截断小数点后面的部分.如果相对浮点数进行舍入运算得到接近的整数可以用:int i=(int)Math.round(2.35);

 


八.数组:用来存储同一类型的集合.一旦创建了数组的大小就不能改变.

1.声明和定义:int[] a=new int[10];生命整形数组变量a,并且分配了10个int的存储空间.

2.初始化:

       先定义在初始化.

 

  • for(int i=0;i<a.length;i++){
  • a[i]=i+1;
  • }

 

    定义和初始化一起:int[] a={2,4,5,6,7};

注意:

 

  1. 匿名数组: new int[]{3,4,5,6};
  2. 数组操作相关的工具类:Arrays
  3. java中二维数组实际上是数组中存放的数组

 

 

 


















 

  • 大小: 10.3 KB
分享到:
评论

相关推荐

    Java读书笔记.pdf

    Java读书笔记.pdf Java读书笔记.pdf是关于Java编程语言的读书...Java读书笔记.pdf涵盖了Java编程语言的基础知识、语法、编程技术和应用场景等多方面的内容,对于Java初学者和开发者来说是一个非常有价值的学习资源。

    Thinking in Java读书笔记

    ### Thinking in Java 读书笔记知识点总结 #### 一、万事万物皆对象 1. **对象存储位置** - **寄存器**:程序无法直接控制。 - **栈(Stack)**:存储基本类型数据和对象引用,但对象本身不在此处。 - **堆(Heap)...

    java学习笔记

    #### 第二章:Java基本类型变量 ##### 变量定义 - **变量**:用来存储数据的容器。 - **声明与初始化**: - 必须声明变量类型和名称。 - 可以在声明时初始化变量,也可以之后进行初始化,但必须在使用前完成。 ...

    Java学习笔记(必看经典)

    1. **Java基础**:包括Java的安装配置,基本语法如变量、数据类型、运算符、控制结构(if语句、for循环、while循环)、方法定义和调用等。 2. **类与对象**:Java的核心是面向对象编程,笔记可能会深入讲解类的创建...

    Java编程思想读书笔记

    《Java编程思想读书笔记》 Java是一门面向对象的编程语言,它的核心理念是“万事万物皆对象”。在Java中,所有的对象都是通过类(Class)来定义的,并且必须由程序员显式创建。理解对象的存储位置是理解Java内存...

    Java编程思想读书笔记.doc

    ### Java编程思想读书笔记知识点梳理 #### 第1、2章:万事万物皆对象 ##### 一、所有对象都必须由你建立 - **存储位置**: - **寄存器**:程序中不可控。 - **栈 (Stack)**:存放基本类型数据和对象引用,对象...

    java读书笔记

    Java读书笔记是对Java编程语言深入理解的重要资源,尤其对于初学者而言,它们提供了一个系统性的学习路径。以下是一些从“谢耳朵JAVASE笔记”中可以提炼的关键知识点: 1. **Java基础知识**:Java是一种面向对象的...

    Java经典入门+笔记

    2. **基本语法**:介绍Java的数据类型(如整型、浮点型、字符型、布尔型)、变量、常量,以及运算符的使用。 3. **控制结构**:包括条件语句(if-else、switch-case)和循环语句(for、while、do-while),用于实现...

    java编程思想读书笔记.rar

    1. **Java语言基础**:Java是一种面向对象的语言,它的基本数据类型包括整型、浮点型、字符型和布尔型。书中详细讲解了变量、常量、运算符以及流程控制语句(如if、switch、for、while)的用法。 2. **类与对象**:...

    prictical java 中文版及其笔记

    1. **Java基础**:讲解了Java的基本语法,如变量、数据类型、运算符、控制结构(如if语句和循环)、方法定义以及类和对象的概念。这些是理解Java编程的基础。 2. **面向对象编程**:深入探讨了Java的面向对象特性,...

    java技术从入门到精通(孙鑫)学习笔记

    在Java的入门阶段,你需要了解其基本语法,包括数据类型(如整型、浮点型、字符型、布尔型)、变量的声明与使用、运算符以及流程控制语句(如if、for、while)。此外,还要学习面向对象的基本概念,如类、对象、封装...

    谭浩强C程序设计和读书笔记以及PPT

    【标题】"谭浩强C程序设计和读书笔记以及PPT"所涵盖的知识点主要集中在C语言编程领域,这是由著名计算机教育家谭浩强教授编写的经典教材,旨在帮助初学者理解和掌握C语言的基本概念、语法和编程技巧。C语言是一种...

    HeaderFirst读书笔记代码.zip

    这里的"HeaderFirst读书笔记代码.zip"是一个包含作者阅读此书时所编写的源码和笔记的压缩文件,可以帮助读者更直观地理解和学习书中内容。 根据提供的压缩包文件名,我们可以推测这是一系列按照章节顺序排列的HTML...

    《数据结构和问题求解(Java语言版)(第四版)》源码

    《数据结构和问题求解(Java语言版)(第四版)》是一本经典的计算机科学教材,主要探讨了如何使用Java语言来实现和理解各种数据结构以及算法。这本书的源码提供了丰富的实例,帮助读者深入理解数据结构和算法的实际应用...

    java程序员必读基础篇

    在Java中,理解基本的数据类型、变量和运算符是基础。包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。了解它们的存储方式、范围和使用场景,对于编写有效代码至...

Global site tag (gtag.js) - Google Analytics