Java基础简介

Java

  1. 所有的Java程序都运行在JVM里(Java虚拟机)
  2. 堆:存放主要数据。(先进先出)

    窄:数据的引用。(先进后出)

.变量

  1. int a = 1;声明变量
  2. 数据类型分:基本数据类型,引用数据类型

基本数据类型分:数字,非数字(char,boolean)

              数字分:整数(byte,short,int,long),小数(float,double)

引用数据类型分:类(class),接口(interface),数组(array)

3.int 占用空间:4字节   取值范围:-2的31次方~2的31次方-1

4.==双等于号只能用来判断基本数据类型

5.&&逻辑与:前一个条件不成立,则后一个条件不执行(因为前一个条件不成立的话,结果一定是false)

  &按位与:无论钱一个条件成不成立,后一个条件都会执行(按部就搬的执行)

6.||逻辑或:前一个条件成立,则后一个条件不执行(因为前一个条件成立的话,最终结果一定是true)

  |按位或:无论前一个条件成不成立,后一个条件都会执行(按部就搬就行)

.if判断

  1. if(条件){

代码块

} else{

     条件不成立则执行

}

2.switch选择:

   switch(条件){

            case 1:

                   break;

            case 2:

                   break;

            defult:

                   break;

}

.循环

  1. 什么时候做什么事,因为循环不能一直不停
  2. 每个循环里都有循环变量,大多数情况,循环变量的作用是记录循环次数
  3. 可预知循环次数的循环,或基于数字递增进行循环,这种情况通常使用for循环

1.for(声明循环变量;循环条件;迭代(自增)){

被循环的代码块

}

2 .while(条件){

被循环的代码块

}

3.循环中遇到break;结束循环

                     continue;跳过本次循环

                     return;结束方法的执行

.数组

  1. 数组是存储同一组数据类型多个元素的集合,也可以看成是一种容器
  2. 看见[ ],就是数组
  3. 数组名[下标]  数组里对应位置的变量的名字
  4. array.length数组的长度

Arrays.toString展示数组的所有元素

Arrays.sort(array);升序

.方法

  1. 修饰符  返回值类型 放法名(参数类型  参数名){

代码块

方法体

代码块

return  返回值(有运行结果就写return后面,没有就不写);

}

2.调用方法:方法名  变量名 = new 方法名();

3.在编写方法时必须使用的数据,但只知道类型,又不确定或不知道是什么内容,这种数据可以定义为参数。

4.传递参数时三个规则:1.数量一样  2.顺序一样  3.类型一样

.API

  1. API的常用类:1.object  2.String  3.java.util  4.包装类
  2. object是所有类的基类,所有类都直接或者间接的继承object类.object是上帝类
  3. Str.isEmpty()  判断字符串是否为空

Str.length()  获取字符串的长度

Str.equals(str2)  判断字符串是否相等

Str.equalsIgnoreCase(str2)  不区分大小写,判断字符串是否相等

Str1.charAt(1)   获取某下标的char元素

Str.substring(2)    从开始截取到结束

Str.substring(1,4)  从开始截取到结束,包头不包尾

Str.replace(‘据’,‘好’)   替换字符串

Str2.trim()       去掉字母首位空格

  1. 方法名                   作用                   返回值类型

HashCode              获取对象chash值              int

ToString               将对象信息变为字符串返回      String

equals(Object  obj)     判断两个内存地址是否一样       boolean

GetClass()              获取类名                      object

5.string 和 StringBuffer的区别:

内存操作不同:

string是每次进行更改都会产生一个新对象

StringBuffer不会产生新的对象而是原有的对象上进行更改

注意事项:

StringBuffer是线程安全的所以对象操作会比较慢,在并发处理的时候,会有阻塞现象

6.装箱:把基本数据类型封装成包装类

  拆箱:将包装类中的包装基本数据提取出来

7.时间格式转换类:

SimpleDateFormat  s  =  new  SimpleDateFormat(“yyyy-M-d  h:mm:ss”);

8.获取系统档当前时间:

Date date = new Date();

sout(date);

9.0 - 1之间double类型的随机数:

sout(math.random());

sout(cint(Math.random() * (60-30))+30);

.集合

1.

2.user.add(3,“名字”) 增加

User.remove(3) 删除

3.com.xinzhi.text.user  包名+类名=完全限定名

4.List集合特点:集合中的元素是有序可重复的

5.set集合特点:集合中的元素是无序不可重复的(值唯一)

6.迭代器:Iterator<User(类名)>iterator = userset.iterator();

7.iterator.hasNext() 如果还存在下一个没被访问的数据,则返回true,反之返回false

8.增强型循环for-each:

for(User  u  :  userset){

        sout(u.getName());

        sout(u.getPwd());

}

9.Map集合:无序的

  1. map中key是无序,唯一的,所以keyset方法得到的时候所有key的set集合
  2. map中value是无序的,不唯一的,所以values方法得到的是所有value的Collection集合

.IO

  1. io流是一个管道,用完之后一定要关闭

I/O(Input/Output)流在计算机编程中的作用是实现程序与外部环境(如文件系统、网络、内存等)之间的数据交换。它允许程序从外部读取数据(输入)或将数据写入外部(输出)。

以下是I/O流的主要作用:

1. **文件操作:** 通过文件I/O流,程序可以读取文件中的数据(输入流)或将数据写入文件(输出流)。这使得程序能够读写本地文件系统中的数据,实现文件的创建、修改、删除等操作。

2. **网络通信:** 通过网络I/O流,程序可以在网络上进行数据的读取和发送。这对于网络通信应用如客户端-服务器系统、Web应用等是至关重要的。

3. **键盘和屏幕交互:** 通过标准输入流(System.in),程序可以从键盘读取用户输入。通过标准输出流(System.out),程序可以将数据输出到控制台或其他输出设备。

4. **内存操作:** 通过内存I/O流,程序可以读取和写入内存中的数据。这对于处理大量数据或与其他进程共享数据很有用。

5. **数据处理:** I/O流也可用于数据处理,例如通过串行化对象将对象写入文件,以及从文件中读取对象。这对于持久性存储和数据传输很有用。

6. **图形用户界面(GUI):** 在GUI应用中,I/O流用于处理用户界面的事件和数据。例如,读取用户在文本框中输入的文本,或将数据显示在图形界面上。

7. **数据库访问:** 通过数据库I/O流,程序可以从数据库中检索数据或将数据写入数据库。这是与数据库进行交互的重要手段。

总的来说,I/O流是实现程序与外部世界数据交换的通用机制,为各种应用场景提供了一种灵活、通用的数据输入输出方法。

.数据库

  1. DML语言引导词:INSERT(增)

                   DELETE(删)

                   UPDATE(改)

   DQL语言引导词:SELECT(查)

   DCL语言引导词:GRANT(授权)

                   REVOKE(调用)

   DDL语言引导词:CREATE(创建)

                   ALTER(修改)

                   DROP(撤销)

  DDL(Data Definition Language)数据库定义语言,用来定义数据库对象:库、表、列等

  DML:数据操作语言,用来定义数据库记录(数据)

  DCL:数据控制语言,用来定义访问权限和安全级别

  DQL:数据查询语言,用来查询记录(数据)

2.SQL语句:

  1. 增加:insert into 表名 values(列值1,列值2,……)
  2. 删除:delete from 表名 where 条件
  3. 修改:update 表名 set 列名1=新值,列名2=新值...where 条件
  4. 查询:select * from 表名    //查询这个表

        Select 列名1,列名2... From 表明    //只查询列名1,列名2....

        Select * from 表名 where 列表1=“...”    //只查询列名1为“...”的

        Select * from 表名 where age>=19 and age<30  //只查age为19~30之间的

        Select * from 表名 order by 列名 asc  //正序排序

        Select * from 表名 order by 列名 desc //倒叙排序

模糊查询:

    Select * from 表名 where 列名 like ‘%名%字%’ 

分页查询:

    Select * from 表名 limit 0,3

    Select * from 表名 where sex = ‘男’ order by age limit 0,3 //以age正序排序查询三个

内连接:

    Select * from 表名1 名1 ,表名2 名2 where 名1.表名2id = 名2.id

    Select * from user u inner join job j on u.jobid = j.id

外连接:

    左外连接:

      Select * from user u left join job j on u.jobid = j.id

    右外连接:

      Select * from user u right join job j on u.jobid = j.id

聚合函数:

      Select count(1) from user   //求这个表的数量

      Select sum (age) from user  //求和

      Select avg(age) from user   //求平均值

3.第一范式的目标是确保每列的原子性,如果每列都是不可再分的最小数据

  第一范式就是拆列

  第二范式就是拆表

  第三范式就是列与列之间不存在关系

十一.JDBC

  1. DriverManager  依据数据库的不同,管理JDBC驱动
  2. Connection     负责连接数据库并担任传送数据的任务
  3. Statement      由Connection产生,负责执行SQL语句
  4. ResultSet       负责保存Statement执行后所产生的查询结果

  1. 加载或注册驱动类
  2. DriverManager通过被加载的驱动类创建数据库连接
  3. 编写SQL语句
  4. 根据连接创建发送SQL语句的对象
  5. 发送SQL语句到数据库,连接返回的结果

JDBC简介:

  1. 定义:JDBC是Java语言访问关系数据库的一种标准接口,提供了一组用于执行SQL语句、访问数据库的Java API
  2. 体系结构:
  1. JDBC API:提供了Java程序与数据库交互的标准接口
  2. JDBC Driver:实现了JDBC API,允许Java应用程序与特定数据库进行通讯

1.JDBC的概念:

  1. JDBC是一种用于执行SQL语句的JAVA API,可以为多种关系型数据库提供统一访问,他是由一组用JAVA语言编写的类和接口组成的。
  2. JDBC的作用:可以通过JAVA代码操作数据库

2.JDBC的本质:

     其实就是JAVA官方提供的一套规范(接口)。用于帮助开发人员快速实现不同关系型数据库的连接!

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值