10. java基础知识(下)

文章目录

一、一带而过

① java中没有指针的概念,引用类型可以简单理解为其替代品

② java中常量定义为final;c语言的c11标准中,用const定义常量
java菜鸟教程

③ 正则表达式需要自己去谷歌上了解一下--很重要 不过在公司开发时一般会让我们直接用别人的,很少让自己写。

二、字符串类型String

1. 简单了解

c语言中是没有这个数据类型的
c语言中的字符串怎么保存
练习方式:

菜鸟教程

java官方文档 -- 内容比较新

中文版

java 复制代码
package com.practice.demo;

public class Main {
    public static void main(String args[]){
        String str1 = "Hello";
        String Str2 = " Word";
        System.out.println("str1 = " + str1);
        System.out.println("Str2.length() = " + Str2.length());

        System.out.println(str1 + Str2);
        System.out.println(str1.concat(Str2));
        
        char[] chars = str1.toCharArray();
        System.out.println("chars = " + chars);
        for(int i = 0; i < str1.length(); ++i){
            System.out.println("chars = " + chars[i]);
        }

        System.out.println("str1.toUpperCase() = " + str1.toUpperCase());
    }
}

2. 关于结束符'\0'

c语言:字符串是字符数组,需要通过'\0'标记字符串结尾。在定义字符数组时也需要给'\0'预留出位置,否则就会出现不可预料的后果。'\0'也可以防止内存访问越界。


java语言:虽然Java的String类也是基于字符数组的方式实现的(这里说的是String这个数据类型的内部实现方式),但是java里没有'\0'这回事。因为java是面向对象语言,所以java中的String类不仅是一个字符数组,它是一个封装了字符数组的不可变对象,它内部通过字符数组和其它元数据(如:length)来管理字符串。length属性直接存储字符串的长度,可以直接根据这个长度判断字符串的结束位置。我们遍历字符串时,可以通过length判断字符串长度,从而避免越界访问

3. 自动类型转换与强制类型转换

使用时都需要注意,用不好就容易出错:
自动类型转换:从低到高
强制类型转换:从低到高
小品:主角与配角

可以结合这个小品理解:

前半段 -- int(朱时茂) 与 char(陈佩斯) 上个世纪char也曾辉煌过,但是现在实际开发过程中,除了开发底层的一些东西时会用到char,其余时候几乎不常用

后半段 -- String(朱时茂) 与 char(陈佩斯) 实际开发过程中,明明有写好的函数,非得自己写

三、API文档与import导包

1. API文档

jar包:创建java项目时通常会让我们导入jar包,这里面存放我们开发需要的一些库函数之类的东西

API文档:jar包中内容的说明文档

2. import导包

等同于c语言中#include<>的作用。假设我在demo包里开发,现在我想用tool包里的东西,此时就需要使用import导包。jar包里的东西默认所有包都可以直接用,因此不需要另外用import导包

例如:

我在Main.java中使用Student.java里的内容不需要用import导包,因为Main.java和Student.java同属于demo包。

但是我要在Main.java里使用Teachar.java里的内容就需要用import导包,因为Main.java在demo包里,而Teacher.java在tool包里,它俩不属于同一个包。

我们都知道.length()方法在java.lang包里,但是在Main.java里用它时不需要用import导包。这是因为java.lang已经包含在我们创建项目时导入的jar包里了,这个jar包里所有的东西默认是可以直接用的。
不同的目录下可以有同名的java类,导包时注意不要导错。

例如:

四、java中的数组

1. 创建

① 声明:

② 初始化:

2. 遍历

3. 补充

上述java数组其实不是特别常用,因为它属于静态数组。

4. Arrays类

① 简单介绍

Arrays是java自带的一个库,它里面提供了一些查询、排序等方法,帮助我们进行开发工作。

位置:



② 练习


五、方法的重载

方法:其实就是c里面的函数,只不过在java里换了个名字而已
方法的重载:一是方法名相同,二是参数个数或者参数类型不同。跟函数的返回值无关。

java的底层源码也用到了重载:

好处:只需要定义一个方法名就可以应对不同的输入情况,用起来更方便。

六、规范约束

该部分具体内容可以参看阿里java开发手册

补充:驼峰命名法起源于:Perl语言(脚本语言中的瑞士军刀)

七、内容出处

java

相关推荐
浮游本尊10 小时前
Java学习第22天 - 云原生与容器化
java
渣哥12 小时前
原来 Java 里线程安全集合有这么多种
java
间彧12 小时前
Spring Boot集成Spring Security完整指南
java
间彧12 小时前
Spring Secutiy基本原理及工作流程
java
Java水解13 小时前
JAVA经典面试题附答案(持续更新版)
java·后端·面试
洛小豆15 小时前
在Java中,Integer.parseInt和Integer.valueOf有什么区别
java·后端·面试
前端小张同学16 小时前
服务器上如何搭建jenkins 服务CI/CD😎😎
java·后端
ytadpole16 小时前
Spring Cloud Gateway:一次不规范 URL 引发的路由转发404问题排查
java·后端
华仔啊16 小时前
基于 RuoYi-Vue 轻松实现单用户登录功能,亲测有效
java·vue.js·后端