1.java概述
1991 年Sun公司开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;
1994年将Oak语言更名为Java;
2.Java的三种技术架构:
JAVAEE:开发企业环境下的应用程序,主要针对web程序开发;
JAVASE:完成桌面应用程序的开发,是其它两者的基础;
JAVAME:开发电子消费产品和嵌入式设备,如手机中的程序;
JDK:java的开发和运行环境,java的开发工具和jre。
JRE:java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。
3.数据类型:byte,char,short(这三个平级)–>int–>float–>long–>double
引用数据类型: 数组、类、接口。
String是对象
4.条件语句
do-while循环
/**
* do-while循环语句的执行过程如下:
*
* 首先执行do后面的循环体语句;
* 然后对while后面小括号中的布尔表达式的值进行判断,如果为true,再次执行do后面的循环体语句,并再次对布尔表达式的值进行判断;否则,结束循环语句;
* 重复执行上述两步。
*/
/**
* @Description
* @ClassName ifStatement
* @Author yangff
* @date 2021.10.13 21:29
*/
public class dowhileStatement {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入, 直到输入q退出系统");
String name = "";
do {
name = in.nextLine();
}
while (!name.equals("q"));
System.out.println("退出系统");
}
}
or循环
/**
* for循环语句的执行过程如下:
*
* 执行初始化表达式;
* 对中间的条件表达式的值进行判断,如果为true,执行后面的循环体语句;
* 执行迭代表达式,改变循环变量的值;
* 重复执行上述两步,开始下一次循环,直到某次中间的条件表达式的值为false,结束整个循环语句。
*/
/**
* @Description
* @ClassName ifStatement
* @Author yangff
* @date 2021.10.13 21:29
*/
public class forStatement {
public static void main(String[] args) {
for (int i=0;i<10;i++){
System.out.println(i);
}
}
}
if语句
/**
* @Description
* @ClassName ifStatement
* @Author yangff
* @date 2021.10.13 21:29
*/
public class ifStatement {
public static void main(String[] args) {
boolean temp=true;
if(temp){
System.out.println("true");
}else {
System.out.println("fail");
}
}
}
switch循环
/**
* break是可以省略的,如果省略了就一直执行到遇到break为止;
* switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;
* default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现
*/
/**
* @Description
* @ClassName ifStatement
* @Author yangff
* @date 2021.10.13 21:29
*/
public class switchStatement {
public static void main(String[] args) {
int week = 1 ;
switch(week){
case 1:
System.out.println();
System.out.println("今天是星期一");
break;
case 2:
System.out.println("今天是星期二");
break;
case 3:
System.out.println("今天是星期三");
break;
case 4:
System.out.println("今天是星期四");
break;
case 5:
System.out.println("今天是星期五");
break;
case 6:
System.out.println("今天是星期六");
break;
case 7:
System.out.println("今天是星期日");
break;
default:
System.out.println("没有此星期");
}
}
}
while循环
/**
* while循环语句的执行过程如下:
*
* 首先判断while后面小括号中*表达式的值,如果为true,就从后面紧跟的左大括号开始,按顺序执行大括号里的语句, 这称为“执行循环体”;
* 循环体执行结束,再次返回对while后面小括号中的表达式的值进行判断,重复执行上一步,直到表达式的值为false;
* 此时结束执行while语句,while循环结束。
*/
/**
* @Description
* @ClassName ifStatement
* @Author yangff
* @date 2021.10.13 21:29
*/
public class whileStatement {
public static void main(String[] args) {
int i=0;
while(i<10){
System.out.println(i);
i++;
}
}
}
当循环次数不明确且`不需要先执行一次代码的时候,可以使用 while 语句。
当循环次数不明确且无论如何都要先执行一次代码的时候,可以使用 do … while 语句。
而当循环次数明确时,不妨采用 for 语句,更加简洁明了。
5.数组
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import java.util.*;
/**
* @Description
* @ClassName arrayDemo
* @Author yangff
* @date 2021.10.13 21:42
*/
public class arrayDemo {
public static void main(String[] args) {
String[] aArray = new String[5];
String[] bArray = {"a","b","c", "d", "e"};
String[] cArray = new String[]{"a","b","c","d","e"};
//打印Java数组中的元素
ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(bArray));
System.out.println(arrayList);
//检查数组中是否包含某一个值
boolean b = Arrays.asList(bArray).contains("a");
System.out.println(b);
//连接两个数组
String[] strings = ArrayUtils.addAll(bArray, cArray);
System.out.println(new ArrayList<String>(Arrays.asList(strings)));
//将数组中的元素以字符串的形式输出
String j = StringUtils.join(new String[] { "a", "b", "c" }, ", ");
System.out.println(j);
Set<String> set = new HashSet<String>(Arrays.asList(bArray));
System.out.println(set);
//数组翻转
ArrayUtils.reverse(bArray);
System.out.println(Arrays.toString(bArray));
}
}
6.java分为5片内存:寄存器,本地方法区,方法区,栈,堆。
栈:存储的都是局部变量 ( 函数中定义的变量,函数上的参数,语句中的变量 );只要数据运算完成所在的区域结束,该数据就会被释放。
堆:用于存储数组和对象,也就是实体。啥是实体啊?就是用于封装多个数据的。
1:每一个实体都有内存首地址值。
2:堆内存中的变量都有默认初始化值。因为数据类型不同,值也不一样。
3:垃圾回收机制。