20190301 java数据类型划分(阿里云大学)

1. 若要打开的.class文件在D:\mydemo,但是命令行此时指向E:\,则应该在命令行中做E:\SET CLASSPATH=d:\mydemo指令操作,再做E:>java hello
得出结论,当时用java命令时,先从CLASSPATH中取得.class文件的位置,再进行类的加载操作。
CLASSPATH是一个很重要的属性,在复杂的工程中经常用到,需要着重考虑。
2. 程序注释
在这里插入图片描述
例如
在这里插入图片描述
3. 标志符和关键字
在这里插入图片描述
java中基本用不到的关键字:goto、const
java中特殊含义的单词:null、true、false
在这里插入图片描述

4. java数据类型划分
在java中数据类型一共分为两大类:
1.基本数据类型:
数值型:表示整数或小数;
整型:byte、short、int、long ———— 默认值0
浮点型:float、double ———— 默认值0.0

字符型:char; ———— 默认值‘\u0000’
布尔型:boolean ———— 默认值fulse

**2.引用数据类型:数组、类、接口;    ————  默认值null**

在这里插入图片描述
个人建议:
表示整型都用int,小数用double
long一般描述日期时间、内存或文件大小(字节);
byte一般用在需要编码转换或进行二进制转换的地方
char一般在描述中文使用(基本都会忽略)
boolean在描述程序逻辑时使用。
5. 数据溢出
但数据超出数据类型的极限,数据会出现偏差,例如
若某数据类型最小值为-7,-7的二进制为1111,负数在系统中以补码形式存储,即为1001。当执行-7-1计算时,正确值为-8,但在java中得到结果为8。原因为计算机中,1001-1=1000,取原码(取反加一,补码的原码为补码的补码)为10000=8(十进制)。
任何的整数其默认类型都是int,当数据超过极限时,需要将该数表示为long型,作如下操作数据强制转换

第一种
long num = 2147483648L;
第二种
int num = 10;
byte data = (byte)num;

没事干不做数据强制转换。
除法计算注意用float或double型。
6. 字符型
在这里插入图片描述
大小写之间差32.。java使用Unicode编码,而不使用ASCII码,但具有ASCII码的部分内容。Unicode码可以保存任何文字信息,包括中文。
范例:保存中文字符:在这里插入图片描述
神奇的java:在这里插入图片描述
7. 布尔型
一般布尔型表示逻辑结果。
在这里插入图片描述
java中没有0(错)、1(对)的概念,只能使用true、false。
8. 初见字符串
char可以描述的那个字符,string来描述一串字符。
但string不是基本数据类型,是一个引用数据类型。但是可以按照基本使用模式进行套用。两个string之间可以使用“+”,表示连接,而非加法。
在这里插入图片描述
当“+”在数学计算和连接两个功能间混淆时:在这里插入图片描述
所有数据类型,只要与string类型的变量做“+”操作,则所有类型都变为string。这时若仍需得到正确的计算结果,则需要用“()”解决问题。在这里插入图片描述
9. 基础数学运算符
在这里插入图片描述
10. 三目运算
在这里插入图片描述
11. 关系运算符
在这里插入图片描述
返回结果都是boolean类型。
在这里插入图片描述
12. 逻辑运算

!、&、 |、&&、||
其中,Java中&&和&都是表示与的逻辑运算符,都表示逻辑运输符and,当两边的表达式都为true的时候,整个运算结果才为true,否则为false。

&&的短路功能,当第一个表达式的值为false的时候,则不再计算第二个表达式;&则两个表达式都执行。

&可以用作位运算符,当&两边的表达式不是Boolean类型的时候,&表示按位操作。

   &&第一个表达式为false
        int i = 0;
        if(i == 3  && ++i > 0 )
        {
        }
        System.out.println("i = " + i);
     console:i = 0 ==>第二个表达式没有执行

  
  &第一个表达式为false
        int i = 0;
        if(i == 3  & ++i > 0 )
        {
        }
        System.out.println("i = " + i);
        console:i = 1 ==>第二个表达式执行了

另有“||”: 如果左边计算后的操作数为true,右边则不再执行,返回true;

“|”:前后两个操作数都会进行计算。也就是说:“|”不存在短路。

13.位运算
&、|、<<、>>
14.程序三种形式:顺序结构、分支结构、循环结构
分支结构:
if。。。。else
switch+case+break

循环结构:
while(){

};

do{

}while();

和for循环在这里插入图片描述

15.循环控制
continue:遇执行此语句之后循环体后面的代码不执行,直接跳到下一次循环在这里插入图片描述
break。

16.方法
指的是被重复调用的代码块。定义形式:
在这里插入图片描述
无参数无返回值定义无参数无返回值定义
有参数无返回值有参数无返回值
有参数有返回值
在这里插入图片描述
当void,即无返回值时,return的用法在这里插入图片描述
17.方法重载
方法名称相同,参数的类型或个数不同。
范例:实现方法重载,将根据参数的类型和个数的不同执行不同的方法体
在这里插入图片描述
在进行方法重载时,要求返回值类型一定要相同。
在这里插入图片描述
上图证明System.out.printfln是一个被重载的方法

18.方法的递归调用

范例:求1~100累加
在这里插入图片描述
范例:60!
在这里插入图片描述
使用递归主要是一个方法可以执行的操作很多,而且结构要好。递归是数据结构的第一步。

题外话:
1.我想的永远比我做的那个要好,所以没有什么成就感。
VS
你远比你想的更强大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值