当前位置: 首页 > article >正文

10. java基础知识(下)

文章目录

  • 一、一带而过
  • 二、字符串类型String
    • 1. 简单了解
    • 2. 关于结束符'\0'
    • 3. 自动类型转换与强制类型转换
  • 三、API文档与import导包
    • 1. API文档
    • 2. import导包
  • 四、java中的数组
    • 1. 创建
    • 2. 遍历
    • 3. 补充
    • 4. Arrays类
      • ① 简单介绍
      • ② 练习
  • 五、方法的重载
  • 六、规范约束
  • 七、内容出处

一、一带而过

① java中没有指针的概念,引用类型可以简单理解为其替代品
② java中常量定义为final;c语言的c11标准中,用const定义常量
java菜鸟教程
正则表达式需要自己去谷歌上了解一下–很重要 不过在公司开发时一般会让我们直接用别人的,很少让自己写。

二、字符串类型String

1. 简单了解

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

练习方式:
① 菜鸟教程
② 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


http://www.kler.cn/a/386965.html

相关文章:

  • 苍穹外卖 数据可视化
  • Vue 3 中,computed 和 watch的区别
  • 移门缓冲支架的作用与优势
  • 【信号处理】基于联合图像表示的深度学习卷积神经网络
  • 基于TI AM62A+FPGA实现FPDLINK III车载摄像头解决方案
  • SpringCloud框架学习(第二部分:Consul、LoadBalancer和openFeign)
  • mac上如何安装指定版本的python
  • 【手撕面试题】React(高频知识点二)
  • 数据科学与大数据技术专业学生的考研方向与适合专业探索
  • 【Linux-进程间通信】了解信号量 + 共享内存 + 消息队列的应用
  • MatrixOne 助力西安天能替换MySQL+MongoDB+ES打造一体化物联网平台
  • express项目中使用MySQL
  • 汽车共享服务管理:SpringBoot专业解决方案
  • SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”
  • linux rocky 9.4部署和管理docker harbor私有源
  • ctfshow-web入门-反序列化(web265-web270)
  • windows C#-标识符命名规则和约定
  • Linux的目录结构 | 命令的认识 | 相对路径 | 绝对路径 | 常用命令(一)
  • 健身业务自动化:SpringBoot管理系统指南
  • 【基于轻量型架构的WEB开发】课程 12.5 数据回写 Java EE企业级应用开发教程 Spring+SpringMVC+MyBatis
  • 数据结构基
  • C++(函数重载,引用,nullptr)
  • Elmo驱动器上位机软件的详细配置
  • 7天用Go从零实现分布式缓存GeeCache(学习)
  • Oracle OCP认证考试考点详解082系列11
  • 数据分析:16s差异分析DESeq2 | Corncob | MaAsLin2 | ALDEx2