Day02_JAVA语言基础第二天
1、常量(理解)
1、概念
在程序运行过程中,其值不会发生改变的量
2、分类(掌握)
A 、字面值常量
整数常量:1,2,-3
小数常量:2.3,-232.3
字符常量:‘A’
字符串常量:”Hello World”
布尔常量: true false
空常量 null
B 、自定义常量
类、接口、数组
2、进制(了解)
1、概念
X进制就是逢X进1
2、 JAVA中的进制
二进制:0b开头,JDK1.7以后才后的
八进制: 0开头
十六进制:0x开头
十进制:默认就是,什么都不用写
3、其他进制转十进制
公式:所有系数 * 基础 ^ 权相加的和
系数:每一位上的数
基础:X进制基数就是X
权:从右往左,从0位置开始编号,每一位对应的编号就是权
4、十进制转其他进制
除基取余,直到商为0,余数反转
5、进制的快速转换
8 4 2 1码
二进制--八进制(3位组合)
二进制--十六进制(4位组合)
6、有符号数的表现形式
计算机中的数据都是以二进制的补码形式存在的(掌握)
原码:不说了
反码:符号位不变,数值为取反
补码:反码+1
3、变量的概述(掌握!!)
1、概念
在程序运行过程中,其值在指定范围内可以改变的量
2、命名规范
如果变量由一个单词组成,首字母小写,如果有多个单词组成,第一个首字母小写,其他的首字母大写,要做到见名之意
3、格式
格式1:数据类型变量名= 初始化值;
格式2:数据类型变量名;
变量名= 初始化值;
格式3:数据类型变量名1 = 初始化值,变量名2 = 初始化值,..;
格式4:数据类型变量名1,变量名2;
变量名1 = 初始化值;
变量名2 = 初始化值;
4、 注意事项
在一个{}内,不能存在重名的变量;
变量要先初始化再使用(在使用之前初始化即可)
为某一个变量赋值的时候尽量不要超过其能表示的范围
变量名称的定义要见名之意,不要写一写容易混淆的
定义long类型或者单精度浮点型变量的时候,一定要在数据的后面+l或者+f
5、为什么要定义变量(理解)
用来不断的存放同一类型的常亮,并可以重复使用
6、什么时候定义变量
需要的时候定义变量,切记,不要在写代码刚开始就定义一堆不知道将来要做什么的变量
4、数据类型(掌握)
1、分类
(四类八种)
整数型
byte (-128~127) 1字节
short (-2^15 ~2^15-1) 2字节
int (-2^31 ~2^31-1) 4字节
long (-2^63 ~2^63-1) 8字节
浮点型
float 4字节
double 8字节
字符型
char \u0000-\uFFFF(0-65535)
布尔型
boolean
需要记住byte 的范围:-128 — -127 byte 1, short 2, int 4, long, 8, float 4, double 8
2、注意
整数默认是int,所以long类型后面加L或l
浮点数默认是double类型,所以float类型需要加f或F
3、数据类型转换
1、隐式转换:直接赋值
byte与byte(或short,char)进行运算的时候会提升为int,两个int类型相加也是int类型
进行混合运算的时候,byte,short,char不会相互转换,都会自动提升为int类型
btye short char ->int - >long -> float ->double
2、强制转换
(数据类型) 数据或变量名
4、面试题
byte b1 = 1;
byte b2 = 1;
byte b3 = b1 + b2;//(byte)(b1 + b2);
byte b4 = 1+1;
第四行报错还是第三行报错,为什么
b1和b2是byte类型,运算是自动提升为int,所以结果是int,赋值给b3,b3是byte类型,int付给byte会报错
5、 ASCII表(了解)
char和short没关系
char 能表数的数的范围是0 – 65535,转化为16进制是0000-FFFF
6、算数运算符(掌握)
1、分类
+, - , * , /, %,++,--
2、补充说明
+: 加法运算,字符串连接,如果做字符串连接符,会按照从左往右按照运算符的规则计算 直到遇到字符串就变成字符串连接符了
/: 如果想要结果为负数,那么/中至少有一个是负数
%: 如果想要结果为负数,那么左边必须是负数
++:
int num = 1;
前自加: ++num;
前自加的值是加之后的值
后自加:num++
后自加的值是加之前的值
System.out.println(num++ == ++ num);
num++;只有这种情况才是里存在的
案例1:
int x = 1;
int y = x++;
解析:
第一步:
建立临时变量temp,存储x的值,此时temp=1,x=1
int temp = x;
第二步:
x加1
x = x+1,此时temp=1,x=2
第三步:
由于是后加加(++在变量后被称为后++),所以拿temp的值运算也就是1进行运算,y=1;
案例2:
int x = 1;
int y = ++x;
解析:
第一步:
建立临时变量temp,存储x的值,此时temp=1,x=1
int temp = x;
第二步:
x加1
x = x+1,此时temp=1,x=2
第三步:
由于是前加加(++在变量前被称为前++),所以拿x的值运算也就是2进行运算,y=2;
案例3:
int x = 1;
x = ++x;
解析:
第一步:
建立临时变量temp,存储x的值,此时temp=1,x=1
int temp = x;
第二步:
x加1
x = x+1,此时temp=1,x=2
第三步:
由于是前加加(++在变量前被称为前++),所以拿第二步x的值运算也就是2进行运算,x=2;
案例4:
int x = 1;
x = x++;
解析:
第一步:
建立临时变量temp,存储x的值,此时temp=1,x=1
int temp = x;
第二步:
x加1
x = x+1,此时temp=1,x=2
第三步:
由于是后加加(++在变量后被称为后++),所以拿temp的值运算也就是1进行运算,x=1;
7、 赋值运算符(掌握)
1、分类
=,+= ,-=,%=,*=,/=
2、重点
+=: 内含强制转换
比如(面试题):
short s = 2;
s += 3;
等价于 s = (short)(s+3);
8、比较运算符或关系运算符(掌握)
1、分类
==,!=,>=,>,<=,<
2、特点
1、关系运算符的结果必须是boolean型
3、注意
别把== 写成 =
9、表达式(掌握)
表达式由一个或多个变量或常量 通过 操作符 组合而成, 最简单的表达式仅包含一个字面值常量或变量
10、今天必须掌握的内容。以及常见的笔试题和面试题(学完这个就可以放心学习后面的知识了)
Day02_JAVA语言基础第二天的更多相关文章
- C语言基础第二次作业
PTA第一次作业 题目7-1 统计学生成绩 1.实验代码 #include<stdio.h> int main(void){ ,B=,C=,D=,E=,f; scanf("%d ...
- java语言基础第二讲 课程作业02 总结
一.编程的好习惯 1.注释习惯.单行注释://, 多行注释:/* */ . 2.程序中添加适当的空白:4个空格. 3.文件名必须与公有类名一致,即public class 类名. 4.java中 ...
- 第二十四节:Java语言基础-讲解数组的综合应用
数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...
- 第二章(java程序设计)第三章(语言基础)
第二章 2.1 对象 对象的概念是由现实世界引入问题模型: 对象包含有:状态和行为.具体地来说是: 数据封装:对象的方法的作用就是:将内部变量封装起来,提供给外界交互的窗口.(实现对数据的隐藏) 继承 ...
- 第二十六节:复习Java语言基础-Java的概述,匿名对象,封装,构造函数
Java基础 Java语言概述 Java语言 语言 描述 javaee 企业版 javase 标准版 javame 小型版 JDK JDK(Java开发工具包) Java语言 语言 Java语言 Ja ...
- 第二十五节:Java语言基础-面向对象基础
面向对象 面向过程的代表主要是C语言,面向对象是相对面向过程而言,Java是面向对象的编程语言,面向过程是通过函数体现,面向过程主要是功能行为. 而对于面向对象而言,将功能封装到对象,所以面向对象是基 ...
- 第二十三节:Java语言基础-详细讲解函数与数组
函数 函数在Java中称为方法,在其他语言中可能称为函数,函数,方法就是定义在类中具有特定功能的程序.函数,在Java中可称为方法. 函数的格式: 修饰符 返回值类型 函数名(参数类型 参数1, 参数 ...
- 第二十二节:Java语言基础-详细讲解位运算符与流程控制语句
位运算符(二进制位运算) 运算符 运算 例子 << 左移 3 << 2 = 12 --> 3 * 2 * 2 =12 >> 右移 3 >> 1 = ...
- 第二十一节:Java语言基础-关键字,标识符,注释,常量和变量,运算符
Java语言基础-关键字,标识符,注解,常量和变量,运算符 class Demo { public static void main(String[] args){ System.out.printl ...
随机推荐
- Java中的String与常量池[转帖]
string是java中的字符串.String类是不可变的,对String类的任何改变,都是返回一个新的String类对象.下面介绍java中的String与常量池. 1. 首先String不属于8种 ...
- for update造成的Oracle锁表与解锁
我遇到的情况: 当使用select语句查询表时,后面跟着for update , select * from table for update 当修改表中数据,但是没有commit就关掉PL/SQL, ...
- [转载]Android View.onMeasure方法的理解
2013-12-18 10:56:28 转载自http://blog.sina.com.cn/s/blog_61fbf8d10100zzoy.html View在屏幕上显示出来要先经过measure( ...
- wpf custom control
最近在做WPF,记录一下自定义控件的制作过程,源码请点击:源码. 1.目标 实现一个如图所示的可增减的数字框: 2.先画Template 可以在Generic.xaml中画,也可以用MergedDic ...
- ssl和https协议详解
转自:https://cuiyongxiu.com/201102/24157.html ssl协议的起源和历史我就不再多说了,就是那个Netscape 网景公司开发的,它的作用主要是提供了一种安全传输 ...
- 有关嵌入式linux的注意点总结
知识收集和个人学习过程遇到的问题. 仅供参考. 1.sudo apt-get update 一直无法更新 一,查看网络是否连接上 有几种网络连接方式.常用的两种有网桥网络(Bridged)和网络地址翻 ...
- AbstractMap学习记录
package java.util;import java.util.Map.Entry; /** * This class provides a skeletal implementation of ...
- https需要的类
import java.io.IOException; import java.net.InetAddress; import java.net.InetSocketAddress; import j ...
- 经典线程同步 事件Event
阅读本篇之前推荐阅读以下姊妹篇: <秒杀多线程第四篇 一个经典的多线程同步问题> <秒杀多线程第五篇 经典线程同步关键段CS> 上一篇中使用关键段来解决经典的多线程同步互斥问题 ...
- putty基本操作
1,进入全屏 标题栏右键,菜单中就有full screen选项. 2,退出全屏 鼠标移到左上角,单击鼠标左键,就会跳出菜单,full screen勾去掉. 3,从putty中复制内容到剪切板 鼠标左键 ...