Java是什么:
Java是一门非常优秀的计算机编程语言
Java 英文翻译为印尼爪哇岛,地名,因盛产咖啡而闻名,漫漫长夜、
唯有咖啡陪伴程序员。
1991年诞生,最初叫 Oak (橡树),1995年改名为 Java ,2000年前
后,成为世界上最流行的编程语言,过去二十多年中首屈一指语言,人与人交流沟通的表达方式
计算机语言,人与计算机之间进行信息交流沟通的特殊语言
变量定义:
public class Test02 {
public static void main(String[] args) {
// 定义一个变量 标识符以字母数字下划线英文$组成
/*
通常使用驼峰命名法
变量名和方法名首字母不大写 findName()
类名首字母大写 Test
getStudentNameAndAddress --> getStuNameAndAdd
变量:
小写: name age id salary
大写: Math.PI Math.E (常量)(不变)
下划线: Integer.MAX_VALUE (常量多个字母使用下划线连接)
*/
int a1_$ = 1;
System.out.println();
}
}
关键字解释和常量
package com.briup.day02;
/**
* @author 谭梦寻
* @version 1.0
* 这是一个关键字解释和常量
*/
public class Test03 {
public static void main(String[] args) {
/*
有特殊含义的单词 不能被使用作为标识符
如:class static void public String等
注意:const goto是保留字 暂时没有实际作用,但也是关键字
true 和 false 不是关键字 但也不能作为标识符使用 它是一个值
*/
// 整数型
System.out.println(1);//默认是整型 int
// 浮点型
System.out.println(1.0);// double
// 字符串 字母
System.out.println("as");//String
// 单字符 符号 注意 :单引号只能放单字符
System.out.println('!'); // char
// boolean 类型
System.out.println(true); //boolean
// 注意:除了空常量外 其他常量都可以正常通过输出语句输出
// System.out.println(null);//报错
// 8种基本数据类型:
// byte short int long char boolean float double
}
}
变量的使用:
package com.briup.day02;
/**
* @author 谭梦寻
* @version 1.0
* 这是一个关键字解释和常量
*/
public class Test03 {
public static void main(String[] args) {
/*
有特殊含义的单词 不能被使用作为标识符
如:class static void public String等
注意:const goto是保留字 暂时没有实际作用,但也是关键字
true 和 false 不是关键字 但也不能作为标识符使用 它是一个值
*/
// 整数型
System.out.println(1);//默认是整型 int
// 浮点型
System.out.println(1.0);// double
// 字符串 字母
System.out.println("as");//String
// 单字符 符号 注意 :单引号只能放单字符
System.out.println('!'); // char
// boolean 类型
System.out.println(true); //boolean
// 注意:除了空常量外 其他常量都可以正常通过输出语句输出
// System.out.println(null);//报错
// 8种基本数据类型:
// byte short int long char boolean float double
}
}
字符类型的比较:
package com.briup.day02;
/**
* @author 谭梦寻
* @version 1.1
* 字符类型的比较
*/
public class Test05 {
public static void main(String[] args) {
// 定义整型
byte a= 1;//1个字节
short b = 1;//2个字节
int c = 1;//4个字节
long d = 1L;//大写的L 表示long类型 8个字节
// 相同:基本数据类型变量是否相同
System.out.println(a == b);
System.out.println(c == b);
System.out.println(c == d);
System.out.println(a == d);
// 以上输出均为 true 代表数值大小均相同
// 但是存储数据的内存大小均不相同
/*
浮点型
float double
*/
System.out.println(1.0);//默认double
float a2 = 1.0f;//32位 4字节
double a3 = 1.0;//64位 8字节
System.out.println(a2 == a3);//true
float a4 = 3.1415f;
double a5 = 3.1415;
System.out.println(a4 == a5);
/*
false 计算机表示浮点数 本身非精确,
需要转化为二进制比较
*/
boolean b1 = true;//1字节
boolean b2 = false;//1字节
float d1 = 3.5f;
double d2 = 3.5;
System.out.println(d1 == d2);//true 转化成的二进制都相同
// 字符:通过键盘输入
char c1 = 'A';//2字节 16位
char c2 = '1';//12报错 这里都必须是单字符
char c3 = '!';//没有空字符
char c5 = '谭';
// 使用String类型标识字符串类型信息:(引用数据类型)
String s = "123as";//注意用双引号
String s1 = "";//字符串可以为空 有内存信息
String s3 = null; //null表示没有任何信息 s3不指向任何内存信息
}
}
进制 和字符类
package com.briup.day02;
/**
* @author 郭枫
* @version 1.1
* 进制 和字符类
*/
public class Test06 {
public static void main(String[] args) {
// 进制
// 整型表示不同进制表示20
int a = 20;//10进制
int a2 = 0b00010100;//0b或0B开头 表示二进制 也可以写成0b0001_0100
int a3 = 024;//八进制 以0开头
int a4 = 0x14;//十六进制 以0x开头
System.out.println(a == a2);
System.out.println(a2 == a3);
System.out.println(a3 == a4);
// 字符 2字节 取值为0-65535
/*
java使用的是Unicode(万国码) 字符集(映射关系)
我们使用的是 utf-8编码格式 Unicode 实现
GBk 编码格式
ASCII :美国码 英文字母 数字 符号
*/
int c1 = 65;
char c2 = 65;
char c3 = 'A';//A相当于十进制的65 可以查看ASCII编码
System.out.println(c1 == c2);//true
System.out.println(c2 == c3);
char c6 = '\u0041';//A
char b = '0';//ASCII 表中值为48
char b2 = 0;
char b3 = '\u0000';//十六进制数:0000 0000
char b4 = ' '; // \u0020 表示SP字符 空格
System.out.println(b == b2);//false
System.out.println(b2 == b3);//true
System.out.println(b3 == b4);//false
System.out.println(b == b4);//false
// 转义字符 以反斜杠开头 \
System.out.println("as\tdf"); //制表符 \t 类似空格
System.out.println("asd\ndfs"); // \r 换行
System.out.println("a231\ras32"); //移动光标到行首
System.out.println("/'");//输出 '
}
}
类型的取值范围 :
package com.briup.day02;
/**
* @author 谭梦寻
* @version 1.1
* 取值范围 原码 反码 补码 移码
*/
public class Test07 {
public static void main(String[] args) {
// byte 取值范围 -128~127
byte a = -128;
byte b = 127;
/*
计算机存储二进制使用补码方式192+8 -> 0000 1100 1000(补码) -> 1011 1000
方便用加法代替减法运算 以及负数问题
具体看书籍 -- 计算机组成原理
大的转小的 截取低位
小的转大的 正数前面补0 负数前面补1
*/
byte b2 = (byte) 200;
System.out.println(b2);
System.out.println((byte)100); // 100 没有超出范围 直接100
}
}