Java数据类型与运算符知识点整理

一.编码规范
(1)书写格式
1.层级之间必须缩进(Tab:一个制表位)
每进入一代码块时为一级({})
2.一行只写一句代码
(2)代码注释
1.单行注释://……
2.多行注释:/…………/(多行注释不能嵌套多行注释,可以嵌套单行注释)
3.javadoc:/**…………*/
可以将代码中的注释提取出来形成ARI文件(javadoc -d . Hello)
可以出现在类的前面、属性或者函数的前面,不能出现在函数中或者函数后
4.注释量必须大于等于注释量(必须写注释)
(3)标识符命名
1.语法规定:
a. 可以由:字母(可以使用汉字,但容易出现乱码)、数字、_、$组成,但不能数字开头
b. 不能使用关键字、保留字命名(关键字大约50多个:eg:Public,保留字:goto 、const是C语言的关键字,true、false、null是某个固定的值,不能用来命名)
c.区分大小写
d.没有长度限制
约定俗成:
望文生义,见名知意
类名由一个或多个单词组成,每个单词首字母大写
函数名、变量名由一个或多个单词组成,首单词首字母小写,拼接词搜字母大写
包名全小写,只可以使用特殊字符“.”,并不以.开头或结尾
常量全大写,多个单词用_连接
二.变量:计算机内存中一块存储空间,是存储数据的基本单元
(地址按照4个字节存储)
(1)变量使用的流程
1.数据类型 变量名;
int money;//开辟整数变量空间
2.赋值:变量名 = 值;
(java是一个强类型的语言,java变量的类型和变量中存储数据的类型必须一致。)
(2)声明变量的3种方式
1.先声明,再赋值:
数据名 变量名;
变量名 = 值;
2.声明并赋值:数据类型 变量名 = 值;
3.多个类型的变量声明与赋值:
数据类型 变量1,变量2,变量3 =值,变量4,变量5 = 值;
int a,b,c=10//数值10只是给变量c赋值
int a = 1,b = 2,c = 3;//同时给多个变量赋值
反例:

public class Test1{
	public static void main(String[] args){
//声明变量
		int a;
//给变量赋值
		a=10;
		System.out.println("a");//直接输出 a
	}
}

变量未赋值不能使用//报错:编译错误,可能尚未初始化变量
三.数据类型
java中变量具有严格的数据类型区分(强类型语言)
在java语言中,任何一个值,都有其对应类型的变量
java的数据类型:
(1)基本数据类型:整数:byte(1字节-8位)-27~27-1
short(2字节)-215~215-1
int(4字节)-231~231-1
long(8字节)-263~263-1
(int为整数的默认类型,如需为long类型赋值,需要在值得后面追加“L”)
小数:float(4字节)
double(8字节)
(double为浮点数的默认类型,如需为float类型赋值,需要在后面加“F”)
字符:char(2字节)所有语言 范围:0-65535
(字符赋值:char c1 = ‘A’;//输出A
整数赋值:char c2 = 65 ; [ASCII赋值:a=97,A=65,0=48]//输出A
进制赋值:char c3 = ‘\u0041’;[通过16进制数41在字符集中所对应的字符赋值])
转义字符:\n(换行符)
\t(缩进(制表位))
\反斜线
'单引号
"双引号
布尔:true/false
引用数据类型:字符串String任何“”之间的字面值
String类型的字面取值:
String str1 = “你好”;
String str1 = “Hello”;
数组
对象
四.类型转换
(1)自动类型转换:
1.条件:两种类型相互兼容
目标类型大于源文件

package demo;
public class TestForceConvert{
	public static void main(String[] args){
		short s = 123;(源类型)
		int b = s;(目标类型)
	}
}

(2)强制类转换:
1.条件:两种类型相互兼容
目标类型小于源类型

package demo;
public class TestForceConvert{
	public static void main(String[] args){
		short s = 123;(源类型)
		int c = 564;
		short b =short(s+c);(目标类型)
	}
}

2.强制类型转化规则:
整数长度足够,数据完整
整数长度不够,数据截断
例:int i =10000;byte b = (byte)i; //b=16(符号位变化,可能变成负数)
小数强转整数,数据截断(小数位舍掉,不存在进位)
字符整数互转,数据完整
例:char c = 65;int i = c; //i=65
boolean的取值为true/false,不可与其他类型转化
3.自动类型提升:
进行算数运算时:boolean不参与数值运算
计算时是以字节较高的作为计算结果(操作数中纪委为short/byte计算结果仍为int)
在字符串中“+”是用作连接,而非用过运算。如果是string+int,先将int转化为字符串,在进行连接。
五.运算符
(1)算数运算符(两个操作数进行计算)
+;-;*
/:除、求商(整数/整数≠小数,4/5=0;4.0/5.0=0.8)
%:模、求于
(2)算数运算符(只有一个操作数)
++:递增,变量值+1→a++/a+=1/a=a+1/++a
–:递减,变量值-1→a–/a-=1/a=a-1/–a
a++与++a的区别:a++是先取值在+1,++a是先+1再取值
byte a=10;
a=a+b;(错)注释:a是byte,则a+2应该是int
byte a = 10;
a+=b;(a不会发生类型提升)以此类推:a-=2,a*=2
(3)关系运算符:
<:小于

:大于
==:等于
!=:不等于
=:大于等于
<=:小于 等于
(4)逻辑运算符
&&:与,并且(条件全满足)
||:或(只满足其中一个)
!:非,取反(不是,真是假,假是真)
(5)三元运算符
?: 布尔表达式?结果1:结果2→当表达式结果为真,获得结果1,当表达式结果为假是,获得结果2
(6)运算符了(不常用)
a>20 && b<30 短路(假如a为false,则不对b进行判断)
a>20 & b<30 非短路
a>20 || b<30 短路
a>20 | b<30 非短路(二进制按位或)
a^b二进制按位求异或(同为0,异为1)
~a按位求反
a=a>>1(数值整体向右移动一位eg:00011010→0001101右移一位,末尾0被挤掉,前面符号位不变,二进制右移一位就是数值除以二)
a=a>>>1(如果a=20, a=a>>1,a=a>>>1,a都等于10;如果a=-20, a1=a>>1,a2=a>>>1,a1=-10,a2=正数)
导包:
Scanner(类);扫描仪 键盘输入
包:java.util
import java.util.Scnner;
public class Test7{
public static void main(String[] args){
//获取键盘输入的工具
System.out.println(“请输入一个整数:”);
Scanner sc=new Scanner(System.in);
int num=sc.nextInt()//键盘接收整数
double d=sc.nextDouble();//接收小数
char c=sc.next().charAt(0);//接收字符
String s=sc.next();//接收字符串 sc.nextLin();
}
}
局部变量:在类方法体中定义的变量
特点:局部变量声明在方法、构造方法或者语句块中;
局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
访问修饰符不能用于局部变量;
局部变量只在声明它的方法、构造方法或者语句块中可见;
局部变量是在栈上分配的。
局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值