JAVA基础知识总结:二
一、数据类型
1.常量
在程序运行的过程中,值不会发生改变的标识符
常量的分类:整数常量、小数常量、布尔值常量、字符常量、字符串常量、null常量
2.变量
表示的值可以发生改变
定义一个变量,需要在内存【运算区域】中开辟一个空间,将不确定的数据存储到这个空间中
语法:数据类型 标识符 = 数值
特点:a.变量的值是可以变动的
b.需要在内存中开辟空间
c.命名规范:小驼峰命名。例如:gradeNum
3.数据类型
Java语言是强类型语言,每一种数据都定义了明确的数据类型,在内存中分配了不同大小的内存空间,来进行数据的存储
分类:基本数据类型和引用数据类型
基本数据类型:数值型(byte\short\int\long)、字符型(char)、浮点型(float\double)、布尔型(boolean)
引用数据类型:类、数组、接口
基本数据类型和取值范围
类型名 关键字 占用的字节数 取值范围
字节整型 byte 1 -2^7~2^7-1(-128~127)
短整型 short 2 -2^15~2^15-1
整型 int 4 -2^31~2^31-1
长整型 long 8 -2^63~2^63-1
单精度 float 4 -2^128~2^127
双精度 double 8 -2^1024~2^1023
字符型 char 2 0~65535
布尔型 boolean 1 true\false
特殊情况:String(类)
浮点数在计算机底层是以科学计数法进行存储的
4.类型转换
不同数据类型之间是没有办法直接进行计算的,我们需要将他们转换为同一类型才可以参与运算
1>自动类型转换
相兼容的数据类型,将取值范围较小的数值或者变量赋值给取值范围较大的类型对应的变量
注意:a.整型的默认类型为int,浮点型的默认类型为double
b.byte.short,char类型的变量在进行运算时,首先会将类型提升为int型,然后参与运算
c.整型核浮点型进行计算时,会将整型提升为浮点型,然后参与运算
2>强制类型转换
相兼容的数据类型,将取值范围较大的数值或者变量赋值给取值范围较小的类型对应的变量
二、运算符
1.算术运算符
+ - * / %(求余),++(自增) --(自减)
2.赋值运算符
= += -= *= /= %=(复合赋值运算符)-----给变量进行赋值
3.关系运算符
< > <= >= ==(恒等于) != (不等于)
用于两个变量之间比较大小,如果成立则结果为true,如果不成立则结果为false
4.逻辑运算符
用于链接布尔型的表达式
int x = 4;
数学中:3 < x < 5---->true
代码中:
与(&,&&(短路与))、或(|、||)、异或(^)、非(!)
5.位运算符【0为false,1为true】
& | ^ ~(取反) <<(左移) >>(右移) >>>(无符号右移)
注意:除了无符号右移之外,其余的运算均包含符号
6.三目运算符
//格式:条件表达式?表达式1:表达式2;
//表示的意思是:判断条件表达式是否成了,如果成立,则结果为表达式1,如果不成立,则结果为表达式2
//计算完成之后必定会返回一个结果
7.转义运算符
通过\来改变后面字母或者符号的含义
JAVA基础知识总结:二的更多相关文章
- java基础知识(二)-----多态和构造函数
一:前言 最近由于面试了新浪公司,面试官问我的问题我都不知道,觉得自己好菜,所以最近决定再把java基础给搞一遍,真的觉得自己好菜.每天看一点,那个家伙说<java编程思想>最少要看三遍, ...
- Java基础知识(二)
一.基本概念 1. Java程序初始化的顺序是怎么样的 2. Java和C++的区别 3. 反射 先看一个知乎回答 什么是反射 主要用途 获得Class对象 4. 注解 什么是注解 为什么要用注解 基 ...
- Java 基础知识总结 (二、基本数据类型)
二.基本数据类型 java基本数据类型只能先声明后使用 boolean true/false char 16-bit unicode character byte 8-bit integer sho ...
- Java基础知识陷阱(二)
本文发表于本人博客. 上次说了一些关于字符串的知识,都是比较基础的,那这次也说下关于对象地址问题,比如传参.先看下面代码: public void changeInt(int a){ a = ; } ...
- Java测试开发--Java基础知识(二)
一.java中8大基本类型 数值类型:byte.short.int .float.double .long 字符类型:char 布尔类型:boolean 二. 封装:将属性私有化,不允许外部数据直接访 ...
- java基础知识(二)字符串处理
字符串是程序开发中使用最为频繁,因此为了工作的高效和作为一名想进阶的程序员,了解并掌握字符串的处理显得尤为重要.java为我们提供了String.StringBuffer.StringBuilde三个 ...
- java基础知识拾遗(二)
1.finally public static int func (){ try{ return 1; }catch (Exception e){ return 2; }finally { retur ...
- java基础知识总结二
1. synchronized和reentrantlock异同 相同点 都实现了多线程同步和内存可见性语义 都是可重入锁 不同点 实现机制不同 synchronized通过java对象头锁标记和Mon ...
- java基础知识总结(二)
+=隐含了强制类型转换. x+=y;等价与:x = (x的数据类型)(x + y); 函数重载? 函数名同样.參数列表不同.跟返回值不关,就是函数重载 封装是什么? 隐藏对象的属性和详细的实现细节,仅 ...
- Scanner、String(java基础知识十二)
1.Scanner的概述和方法介绍 * A:Scanner的概述 * 是一个从键盘输入的类,有final修饰,不能被子类继承 * Scanner sc = new Scanner(System.in) ...
随机推荐
- java:数组操作工具类 java.util.Arrays包 主要方法详解
Arrays类位于Java.util包下,是一个对数组操作的工具类,现将Arrays类中的方法做一个总结(JDK版本:1.6.0_34).Arrays类中的方法可以分为八类: sort(对数组排序) ...
- linux下iconv()函数的用法(转载并修改)
linux shell 配置文件中默认的字符集编码为UTF-8 .UTF-8是unicode的一种表达方式,gb2312是和unicode都是字符的编码方式,所以说gb2312跟utf-8的概念应该不 ...
- Java I/O 从0到1 - 第Ⅰ滴血 File
前言 File 类的介绍主要会依据<Java 编程思想>以及官网API .相信大家在日常工作中,肯定会遇到文件流的读取等操作,但是在搜索过程中,并没有找到一个介绍的很简洁明了的文章.因此, ...
- python之socket--粘包补充
struct补充 import struct import json header_dic={'total_size':123123, 'filename':None, 'md5':None} hea ...
- SpringMVC第三篇【收集参数、字符串转日期、结果重定向、返回JSON】
业务方法收集参数 我们在Struts2中收集web端带过来的参数是在控制器中定义成员变量,该成员变量的名字与web端带过来的名称是要一致的-并且,给出该成员变量的set方法,那么Struts2的拦截器 ...
- JSON的基本结构和数据交换原理
0.补充的写在前面的话 2017.03.29 补充内容 最近看到这篇博客的阅读量,想来应该是有部分网友来过想要了解JSON的基本概念,这篇博文写得可能不是那么好,所以现在再补充贴一位老师的文章,希望能 ...
- Ansible系列(五):playbook应用和roles自动化批量安装示例
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- CSS3 box-sizing属性的应用
在一个文档中,每个元素都被表示为一个矩形的盒子.盒子模型具有4个属性['外边距(margin)','边框(border)','内边距(padding)','内容(content)']. 我们要设置某个 ...
- BackTrack 5无线网卡混杂模式设置
用ifconfig查看网络设备 主机无线网卡名称一般为wlan0,USB网卡一般为wlan1 虚拟机中USB网卡一般无法自动识别,可以用ifconfig wlan1 up启用 用ifconfig wl ...
- Web 开发模式演变历史和趋势
前不久徐飞写了一篇很好的文章:Web 应用的组件化开发.本文尝试从历史发展角度,说说各种研发模式的优劣. 一.简单明快的早期时代 可称之为 Web 1.0 时代,非常适合创业型小项目,不分前后端,经常 ...