1、源代码的文件名必须与公共类(public)的类名一致,而且一个源代码文件中最多只能有一个公共类(public)

2、注释: 3种
  • 行注释  以双斜线  //  开始
  • 段落注释  /*  注释内容  */
  • 文档注释  /**  注释内容 */

3、数据类型  8种基本类型
  • 整型 4 种 :  byte(1byte)、 short(2 bytes)、 int (4 bytes)、 long(8 bytes)     均为signed(有符号型)
  • 浮点型 2 种:float(4 bytes)、double(8 bytes)     前者有效位6~7位,后者15位
  • char类型 :  char(2 bytes)
  • boolean(1 byte) 只有true和false两种取值,且不能与整型进行转换
     **在java编译器中default的整型数据为int类型,所以在给byte、short类型数据赋值时需要进行强制类型转换
     **long(长整型)数值有一个后缀L,十六进制前缀0x,八进制前缀0,二进制前缀0b
     **float后缀F,double后缀D(F、D大小写均可)
     **POSITIVE_INFINITY、NEGTIVE_INFINITY、NAN分别表示正无穷、负无穷和不是一个数字

4、逻辑运算符
  • && 按照"短路"方式求值 , eg : expression1 && expression2 , 若expression1为false,则不用计算expression2
  • ||    按照"短路"方式求值 , eg : expression1 || expression2 , 若expression1为true,则不用计算expression2
  • !   表示逻辑“非”
位运算符
  • &  |   ^  ~   与、或、异或、非   **&  |  不按短路方式计算
  • >>   <<   右移  左移
  • >>>   也是右移的意思,与>>的区别在于>>是用符号位填充高位,而>>>是用0填充高位
     ***无<<<运算符

5、枚举类型
     用 enum 自定义枚举类型  eg: enum Size { SMALL , MEDIUM , LARGE , EXTRA_LARGE} ;
                                                  Size size = Size.SMALL ; 表示size只能是上述4种尺码中的一种

6、String
     java没有内置的字符串类型,而是在标准的类库中提供了一个预定义类,String类为不可变字符串
  • 空串与null串的区别
空串“”是长度为0的字符串,是一个java对象,有自己的长度(0)和内容(空)
null串:表示目前没有任何对象与该变量关联
  • JDK5.0引入了StringBuilder类,其前身是StringBuffer,其效率稍有些低,但允许采用多线程的方式添加和删除字符操作。

7、从控制台读取数据
  • Scanner类   Scanner sc = new Scanner(System.in) ;
String  s1 = sc.nextLine() ;   //读入一行
String s2 = sc.next() ;          //读入一个单词,以空格区分
int i = sc.nextInt() ;               //读入一个int类型整数
  • Console类   用于读取密码,因为Scanner不适合读取密码,所以专门采用Console类
                              Console c = new Console(System.in) ;
String ss = c.readLine() ;                    //读入一行
char[]  passwd = c.readPassword() ;   //读入密码
从控制台输出( 3种格式 )
  • System.out.print("") ;
  • System.out.println("") ;
  • System.out.printf("%d,%s", age,name) ;

8、控制流程
  • 不能在嵌套的两个语句块中申明同名的变量,但是可以在两个并行(平等)的语句块中申明同名的变量
  • 选择语句  switch…case、if…else
  • 循环语句  while  、 do…while 、 for
  • 中断控制流程语句 : 加标签label ,然后 break  label ;可以跳出循环到 label 标示的位置

9、大数值:如果基本的整数和浮点数的精度都无法满足要求,那么可以使用java.math包中的两个很有用的类:BigInteger和BigDecimal。这两个类可以处理包含任意长度数字序列的数值。BigInteger实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。
     **遗憾的是不能使用我们熟悉的算术运算符(+、-、/、*、%等),而是需要用到BigInteger、BigDecimal 的add、multiply、subtract、divide、mod (BigDecimal 无此方法)运算。
     eg:BigInteger a = BigInteger.valueOf(1000) ;
  BigInteger b = BigInteger.valueOf(34567) ;
  BigInteger c = a.add(b) ;
  BigInteger d = a.multiply(c) ;

10、数组   **数组长度为0 和为null不同
  • 申明方法  2种   int[] a ;      int a[]  ;
  • String[] s = new String[10] ; 会创建一个包含10个字符串的数组,所有字符串都为null 。  **一旦创建了数组,就不能再改变其大小,但是可以改变各个元素的内容。
  • 匿名数组  new int[]  {2,14,35,47,57} ;
  • 可以用Arrays的静态方法sort()对数值型数组进行排序(优化的快速排序算法)

Java基础整理(1)的更多相关文章

  1. JAVA基础整理-集合篇(一)

    集合作为JAVA的基础知识,本来感觉自己理解的很清楚了,但是在最近的一次面试中还是答得不尽如人意!再次做一下整理,以便加深理解以及随时查阅. 首先,java.util包中三个重要的接口及特点:List ...

  2. Java基础整理

    一.Java中的遍历 1.在java开发中会碰到遍历List删除其中多个元素的情况,如果使用一般的for循环以及增强的for循环,代码会抛出异常ConcurrentModificationExcept ...

  3. java基础整理1

    1.匿名对象:new persion().tell();这样的,它只开辟栈内存,没有栈引用的关系 2.构造方法的名称必须与类名称一致,构造方法的声明处不能有任何返回值类型的声明,不能在构造方法中使用r ...

  4. Java基础整理之字节、数组、字符串、面向对象

    一.字节(8个)8bit = 1B或1byte1024B = 1Kb 二.强制类型转换顺序及其大小顺序遵循向上转换的规则byte,short,char -> int -> long -&g ...

  5. java基础整理总结篇(1)

    >>java数据区域,大致分以下几种 寄存器:位于cpu内部,寄存器的数量有限,所以寄存器根据需求分配.不能直接控制它. 堆栈:位于通用RAM(随机访问存储器)中,通过堆栈指针可以从处理器 ...

  6. 6 Java基础整理 第六-八章

    1.封装 封装的目的是简化编程和增强安全性. 简化编程是指,封装可以让使用者不必了解具体类的内部实现细节,而只是要通过提供给外部访问的方法来访问类中的属性和方法 增强安全性是指,封装可以使某个属性只能 ...

  7. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  8. Java基础进阶整理

    Java学习笔记整理 本文档是我个人整理的,首先是想通过完成本文档更加扎实自己的基础加强对java语言的理解,然后就是想给入了门的同志们做下贡献. 当然,本文档主要是对java语言基础(当然还有很多基 ...

  9. 转载:[Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    原文:http://www.cnblogs.com/wang-meng/p/5898837.html 一:继承.抽象类与接口区别.访问控制(private, public, protected,默认) ...

随机推荐

  1. 【Linux】之系统工具top

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是一个动态显示过程,即可以通过用户按键来不断刷新 ...

  2. PLSQL_性能优化工具系列09_SQL Plan Management

    2014-09-24 Created By BaoXinjian

  3. curl 同时发送多个请求

    // 创建一对cURL资源 $ch1 = curl_init(); $ch2 = curl_init(); // 设置URL和相应的选项 curl_setopt($ch1, CURLOPT_URL, ...

  4. 解析wamp的php.ini设置不生效的原因

    你是否有过这样的经历,当你打开wamp的php.ini,并进行参数修改之后.再回到命令去运行你的php脚本,却发现你的设置居然不生效? 如果有这样的情况,那你得先了解php的两种运行运行环境,一个在命 ...

  5. label 行距

    NSMutableAttributedString * attributedString1 = [[NSMutableAttributedString alloc] initWithString:te ...

  6. window和nodejs作用域区别(待续)

    //这是在浏览器环境下,chrome下 var n =2 ; var obj={ n:4, fn1:(function(){ console.log("fn1->this =" ...

  7. Sql Server Text 类型列 查询和更新

    Text(ntext.image)类型为大数据字段,因为存储方式不同,也决定了其查询和更新不同于一般方法. 1.表定义: 2.查询: Like查询是可用的: select * from dbo.nod ...

  8. Linux备份入门:3种克隆方法详解_Clonezilla

    摘自:http://os.51cto.com/art/201006/206871.htm 给你的系统磁盘制作一个镜像拷贝是创建备份的好办法.由于便携式U盘总是有比较低廉的价格,你可以维护数个拷贝以便循 ...

  9. [ActionScript 3.0] 跨域策略文件crossdomain.xml配置详解

    1.简介 flash在跨域时唯一的限制策略就是crossdomain.xml文件,该文件限制了flash是否可以跨域读写数据以及允许从什么地方跨域读写数据. 位于www.a.com域中的SWF文件要访 ...

  10. bootstrap 中是通过写less文件来生成css文件,用什么工具来编写呢?

    bootstrap 中是通过写less文件来生成css文件,用什么工具来编写呢? 如果用sublime的话如何实现代码保存后浏览器刷新成最新的代码样式? 或者有什么其他好用的工具? 从网上找了很多方法 ...