Java语言基础扫雷

一、数据类型

  Java支持两种数据类型:基本类型和引用类型。基本类型有布尔(boolean)类型和数值类型,数值类型有整数类型(byte、short、char、int、long)和浮点数类型(float、double),其中char也称为字符类型,统称八大基本数据类型。byte型整数在内存中占8位,short型整数在内存中占16位,int型整数在内存中占32位,long型整数在内存中占64位,float型数值在内存中占32位,double型数值在内存中占64位。按取值范围从小到大排列为:byte<short<char<int<long<float<double。因此byte->short(char)->int->long->float->double可以自动类型转换,而从右往左则需要强制类型转换,强制类型转换可能会引起溢出,造成数据丢失。例如:

public class Test {
  public static void main(String[] args) {
    int iVal = 250;       // 二进制为 0000 0000 0000 0000 0000 0000 1111 1010
    byte bVal = (byte)iVal;   // 强制截断前24位 1111 1010,其中最高位为符号位。计算机以补码形式保存所有整数,正数的补码与原码一样,负数的补码等于原码的反码加1,反码为原码除符号位取反。
    System.out.println(bVal);  // 该负数的原码为1000 0110,因此结果为-6
  }
}

二、基础语法注意点  

  1、一个算术表达式中包含多个基本类型的值时,整个算术表达式的数据类型会发生自动提升。byte、short、char被提升到int,整个算术表达式的类型会自动提升到表达式中最高等级的类型。

  2、单目运算--、++,如果放在左边,先把操作数加1再放入表达式中运算,如果放在右边,先把操作数放入表达式中运算再加1。

  3、<<左移运算符(空位用0补),>>右移运算符(空位用最高位补),>>>无符号右移运算符(空位用0补)。

  4、计算机以补码形式保存所有整数,正数的补码与原码一样,负数的补码等于原码的反码加1,反码为原码除符号位取反。

  5、数组初始化方式有静态初始化和动态初始化两种方式。静态初始化指定初始值,由系统决定数组长度,而动态初始化则指定数组长度,由系统分配初始值。值得注意的是引用类型动态初始化,初始值为null。

  6、包装类装箱的过程其实相当于创建一个对象,因此比较两个包装类的值是否相等("=="比较的是引用地址的值)的时候要注意。

Java语言基础扫雷

时间: 2024-10-14 09:53:42

Java语言基础扫雷的相关文章

Java学习总结(二)----Java语言基础

1.     Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,int, long ,float,double,char,boolean,void 用于定义数据类型值的关键字 true,false,null 用于定义流程控制的关键字 If,else,switch,case,default, while,do,for,break,continue,return 用于

java--学习java从这里开始:Java语言基础(1)《基础知识篇》--黑马程序员

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- Java语言基础(1) 从这篇日记开始说一些关于java的语言基础知识, 1  Java语言概述 java的创始人——詹姆斯·高斯林(James Gosling) 1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,设计IBM第7一代工作站NeWS系统,但不受重视.后来转至Sun公司,1990年,与Patrick,Na

非专业码农 JAVA学习笔记 2 java语言基础

java语言基础 (一)程序构成 略 (二)数据类型变量和常量 1.数据类型(与c#差不多) 布尔bool 8位 字节byte 8   -128-127 字符char 16 短整型Short 16 Int 32 Long 64 Float 32 Double 64 2.标识符-变量常量方法对象和类的名字标记 字母数字 还有两个特殊符号_ 和$ 字母下划线或者美元符号开头 3.常量 4.变量 (三)表达式 1.赋值和强制类型转换 Tostring()弱转换 类型=(类型)变量:a=(int)b;a

[JAVA_开课吧资源]第一周 Java语言概述、Java语言基础

主题一 Java语言概述 » JDK介绍及其基本组件 Sun公司利用Java开发工具箱(Java Development Toolkit ,JDK)发布Java的各个版本.JDK由开发和测试Java程序的独立程序集组成,它们都从命令行调用. [请点击查看更多内容 转自51CTO.com] » 使用CMD开发运行Java程序 代码文件的拓展名必须为.java,并且文件名应该与类的类名完全相同.编译一个程序是指使用编译器将源代码翻译成java字节码.下面的命令用来编译源代码文件welcome.jav

第二章 java语言基础

2.1 java语言基础组成 关键字 标识符 注释 常量和变量 运算符 语句 函数 数组 2.1.1 标识符 1. 组成:由英文字母.数字._和$ 2. 规则: 不能以数字开头 不能使用关键字 3. java的命名规范 包名:所有字母都小写.xxyyy 类名:所有单词的首字母大写.XxxYy 变量名和函数名:第一个单词首字母小写,之后的每个单词首字母都大写.xxYyyZz 常量名:所有字母都大写,多个单词用下划线连接.XXX_YY 2.1.2 常量和变量 1. 常量:不能改变的数值 分类: 整数

day04&lt;Java语言基础+&gt;

Java语言基础(循环结构概述和for语句的格式及其使用) Java语言基础(循环结构for语句的练习之获取数据) Java语言基础(循环结构for语句的练习之求和思想) Java语言基础(循环结构for语句的练习之水仙花) Java语言基础(循环结构for语句的练习之统计思想) Java语言基础(循环结构while语句的格式和基本使用) Java语言基础(循环结构while语句的练习) Java语言基础(循环结构do...while语句的格式和基本使用) Java语言基础(循环结构三种循环语句

day03&lt;Java语言基础+&gt;

Java语言基础(逻辑运算符的基本用法) Java语言基础(逻辑运算符&&和&的区别) Java语言基础(位运算符的基本用法1) Java语言基础(位异或运算符的特点及面试题) Java语言基础(位运算符的基本用法2及面试题) Java语言基础(三元运算符的基本用法) Java语言基础(三元运算符的练习) Java语言基础(键盘录入的基本格式讲解) Java语言基础(键盘录入的练习1) Java语言基础(键盘录入的练习2) Java语言基础(顺序结构语句) Java语言基础(选择结

day05&lt;Java语言基础--数组&gt;

Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java语言基础(数组的内存图解2二个数组) Java语言基础(数组的内存图解3三个引用两个数组) Java语言基础(数组的初始化静态初始化及内存图) Java语言基础(数组操作的两个常见小问题越界和空指针 Java语言基础(数组的操作1遍历) Java语言基础(数组的操作2获取最值) Java语言基础(数

Java语言基础-多线程-①线程的创建和启动

简单阐释进程和线程 对于进程最直观的感受应该就是“windows任务管理器”中的进程管理: (计算机原理课上的记忆已经快要模糊了,简单理解一下):一个进程就是一个“执行中的程序”,是程序在计算机上的一次运行活动.程序要运行,系统就在内存中为该程序分配一块独立的内存空间,载入程序代码和资源进行执行.程序运行期间该内存空间不能被其他进程直接访问.系统以进程为基本单位进行系统资源的调度和分配.何为线程?线程是进程内一次具体的执行任务.程序的执行具体是通过线程来完成的,所以一个进程中至少有一个线程.回忆