@ 基础知识
1. java基础知识
1.1 java历史
java之父 詹姆斯,高斯林 最早做Green项目,使用c++来制作,使用c++制作起来比较麻烦,推出了Oak语言,已经被抢注了,改名java,sun公司2009年以74亿美元卖给Oracle
1.2 J2SE(Java 2 Platform Standard Edition)标准版
是为开发普通桌面和商务应用程序提供的解决方案,该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
1.3 J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案,该技术体系中包含的技术如 Servlet、Jsp等,主要针对于Web应用程序开发
1.4 J2ME(Java 2 Platform Micro Edition)小型版
是为开发移动设备和嵌入式设备(电器、机器人、机顶盒…)提供的解决方案。
1.5 java基本操作
1.5.1 main方法
public static void main(String[] args) {
}
成为main方法时我们程序执行的入口 一个java程序只能有一个入口
1.5.2 转义字符
\n表示换行,"表示一个双引号,\表示一个
转义字符表示一个字符
public static void main(String[] args) {
System.out.println("窗前明月光\n疑是地上霜");
System.out.println("邓小平说:\"计算机从娃娃抓起\"");
System.out.println("D:\\chapter5");
}
提示:
书写的java代码的文件后缀是.java
运行时先编译成.class文件,然后在被jvm执行
1.5.3 注释
//单行注释
/多行注释/
/**
*文档注释
*/
double a=2.3;
float b=3.5f;//float类型后跟字母f
byte c=23;
short k=1000;
long d=500l;//long类型后跟字母l
int e=10000;
char g='a';//字符类型只能使用单引号
char h='\n';
boolean j=true;
1.5.4.加,减,乘,除,求余数(求模)
1.加,减,乘,除,求余数(求模)
当不同范围类型的数据运算时,结果是范围最大的那个
public static void main(String[] args) {
int a=3;
double b=4;
System.out.println(a+b);
int c=10;
int d=3;
System.out.println(c/d);
}
2.自增自减
如果变量在后先自增再赋值,反之亦然
int e=3;
int f=e++;
int g=++e;
System.out.println("e="+e);//4
System.out.println("f="+f);//3
System.out.println("g="+g);//5
3.比较运算符
public static void main(String[] args) {
int a=23;
int b=15;
int c=38;
System.out.println(a>b);//true
System.out.println(a<=c);//true
System.out.println((a+b)>=c);//ture
System.out.println(a<=b);//false
boolean a=true;
boolean b=false;
4.判断
&&只要有一个是假就为假
||只要一个为真就为真
System.out.println(a&&b);
System.out.println(a||b);
5.!表示取反
System.out.println(!a);
6.三元运算符
语法:(条件)?值1:值2
运行流程如果条件为真,返回值1,否则返回值2
int a=(5>10)?88:66;
System.out.println("a="+a);
7.数据类型转换(重点)
public static void main(String[] args) {
byte,short,int,long,float,double 范围从小到大排序
byte a=3;
int b=10;
// =称为赋值运算符,把等号右边值赋值给左边
// 范围小的可直接赋值给范围大的
b=a;
// 范围大的不能直接赋值给范围小的
a=(byte)b;//报错
如果非要把范围大的赋值给范围小的需要强制类型转换
long c=10l;
float d=1.3f;
c=(int)d;
d=c;
当字符串和非字符串拼接时
自动把非字符串转换成字符串
1.6 面试题:i++和i=i+1的区别
如果i是int类型没有区别
如果是byte类型,使用i++时会自动类型转换
1.7 基本流程语句
if语句,switch语句,if else if
int score = 75;
if(score>=60){
System.out.println("及格");
if (score < 60) {
System.out.println("不及格");
} if(score>=60){
System.out.println("及格");
}else{
System.out.println("不及格");
int score=95;
if(score>=85){
System.out.println("优秀");
}else if(score<=85&&score>=60){
System.out.println("及格");
}else if(score<60){
System.out.println("不及格");
}
System.out.println("优秀");
}else if(score<=85&&score>=60){
System.out.println("及格");
}else {
System.out.println("不及格");
}
System.out.println("优秀");
}else if(score>=60){
System.out.println("及格");
}else {
System.out.println("不及格");
}