day2
编译型compile
一次性把所有内容都翻译
操作系统 c c++
解释型
一句一句解释翻译
网页(对速度没有那么高)
hello world编译
public class Hello { public static void main(String[] args) { System.out.println("Hello world"); } }
注释
单行注释
//
多行注释
/* 注释 */
文档注释
/**
*@Description HelloWorld
*@Author
*/
标识符
起名字不能用关键字
java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符
public class后面的Hello为类名
public static void 后面的main为变量名
注意
1.所有标识符都是以字母(A-Z 或者a-z),美元符($),或者下划线(_)开始
2.首字母之后可以是字母(A-Z 或者a-z),美元符($),下划线(_)或者数字的任何字符组合
3.不能使用关键字作为变量名或方法名
4.标识符是大小写敏感的
public class HelloWorld { public static void main(String[] args) { //输出一个hello world String teacher="b"; System.out.println(teacher); }}
数据类型
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定以后才能使用
java的数据类型分为两大类
1.基本类型(primitive type)
byte占1个字节范围:-128-127 | ||
---|---|---|
short占2个字节范围:-32768-32767 | ||
整数类型 | int占4个字节范围:-2147483648-2147483647 | |
long占8个字节范围:-9223372036854775808-9223372036854775807 | ||
数值类型 | 浮点类型 | float占4字节 |
double占8字节 | ||
字符类型 | char占8字节 | |
boolean类型 | 占1位,其值只有true和false两个 |
public class demo01 { public static void main(String[] args) { //八大基本数据类型 //整数 int num1=10;//最常用 byte num2=20; short num3=30; long num4=30L;//Long类型要在数字后加L //小数;浮点数 float num5=40.1F;//float类型要在数字后加F double num6=1.1322; //字符 char name='A';//字符只能有一个字 //字符串 String不是关键词,它是类 String namea="嘿嘿"; //布尔值 boolean flag=true; boolean flag2=false; }
什么是字节
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示
1B(byte,字节)=8bit(位)
字符:指计算机中使用的字母、数字、字和符号
1024B=1KB
1024KB=1M
1024M=1G
1024=1TB
2.引用类型(reference type)
类,接口,数组
变量
//数据类型 变量名=值;
public class demo01 { public static void main(String[] args) { String a="hello"; int num=10; System.out.println(a); System.out.println(num); }}
public class demo02 { public static void main(String[] args) { //整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x int i=10; int i2=010;//八进制0,逢八进1 int i3=0x10;//十六进制0x,逢16进1 0~9 A~F System.out.println(i); System.out.println(i2); System.out.println(i3); System.out.println("=============="); //============================ //浮点数拓展 银行业务怎么表示钱? //BigDecimal 数学工具类 //============================ //float 有限 离散 舍入误差 大约 接近但不等于 //double //!!!最好完全避免使用浮点数进行比较!!!!! float f=0.1f;//0.1 double d=1.0/10;//0.1 System.out.println(f==d);//false System.out.println(f); System.out.println(d); float d1=2122838384f; float d2=d1+1; System.out.println(d1==d2);//true //============================ //字符拓展 //============================ char c1='a'; char c2='中'; System.out.println(c1); System.out.println((int)c1);//强制转换类型 System.out.println(c2); System.out.println((int)c2); //所有的字符本质还是数字 //编码 Unicode 表:97=a 65=A 2字节 65536字符 Excel 2^16=65536 //U0000 UFFFF char c3='\u0061'; System.out.println(c3);//a //转义字符 // \t 制表符 // \n 换行 System.out.println("hello\tworld"); System.out.println("hello\nworld"); // String sa=new String("hello world"); String sb=new String("hello world"); System.out.println(sa==sb);//false String sc="hello world"; String sd="hello world"; System.out.println(sc==sd);//true //布尔值扩展 boolean flag=true; //if(flag==true){}//新手 //if(flag){}//老手 }