【Java基础】【狂神说Java】Java零基础学习视频通俗易懂P21-26(Day1昨天忘记发布了)

2023-10-27

Java小技巧(idea下)

  1. psvm +tab键 补全
public static void main(String[] args) {

}
  1. sout+enter键/鼠标点击选择 可以实现补全 System.out.println();
System.out.println();
  1. /*+enter键生成多行注释符号
/*
        
 */

Java基本语法

在这里插入图片描述

1 注释、标识符、关键字

1.1 注释

在这里插入图片描述

1.1.1 单行注释(只能注释改行为文字)
//这里写注释,只能注释改行为文字
1.1.2 多行注释(可以注释一段文字)

/*+enter键

/*
第一行注释
第二行注释
第三行注释
*/
1.1.3 文档注释(JavaDoc文档注释)

/**+enter键

/**
 *
 */
public class learn_java {
    public static void main(String[] args) {
        System.out.println("Hello World");
        System.out.println("你好");
        /*

         */
        /*

         */
        /**
         * @Description learn_java
         * @Author zhangsan
         */
    }
}

1.2 标识符

在这里插入图片描述在这里插入图片描述

2 数据类型

Java是强类型语言,安全性高,速度慢
在这里插入图片描述

2.1 八大基本数据类型
//整数
        int num=10; //最常用
        byte num2=20;
        short num3=30;
        long num4=30L; //Long类型

        //小数:浮点数
        float num5=50.1F;
        double num6=3.14159;

        //布尔值
        boolean flag=true;
//        boolean flag=false;
//        Integer

最好完全避免浮点数比较

在这里插入图片描述

2.2 强制类型转换
public class learn_java {
    public static void main(String[] args) {
        char c1='A';
        char c2='中';
        System.out.println(c1);
        System.out.println(c2);
        System.out.println((int)c1);//强制类型转换
        System.out.println((int)c2);
        char c3='\u0061'
        System.out.println(c3);//a
    }
}
/*
输出:
A
中
65
20013
*/
2.3 Unicode编码

在这里插入图片描述Unicode 2 字节 0-65536(2**16)

2.4 转义字符

\n \t 等

2.5 数据类型扩展
public class learn_java {
    public static void main(String[] args) {
        String a=new String("hello world");
        String b=new String("hello world");
        String c="hello world";
        String d="hello world";
        System.out.println(a==b);//false
        System.out.println(c==d);//true
    }
}

3 类型转换

byte,short,char -->int–>long–>float–>double
低----------------------------------------------->高
在运算中,不同类型的数组先转化成同一类型,然后进行运算。

int a=128;
byte b=(byte)a;
System.out.println(a);//128
System.out.println(b);//-128

byte类型取值范围是:-128~127 给其赋值128会造成内存溢出问题。

类型转换的种类:

  1. 强制类型转换 (类型)变量名 高–>低
  2. 自动转换 低->高
    注意:
  3. 不能对布尔类型进行转换
  4. 不能把对象类型转换为不相干类型
  5. 在把高容量转换到低容量的时候,强制转换
  6. 转换的时候可能存在内存溢出,或者精度问题
  7. 操作比较大的数字的时候,注意溢出问题
    注意点5的解决方案是:
int money=10_000_000;
System.out.println(money);//10000000
int year=20;
long total1=money*year;//-xxxx 溢出
long total2=money*((long)year);//200000000

4 变量、常量

4.1 变量

在这里插入图片描述
可以在一行声明多个变量,但是不提倡这种代码风格,不利于程序的可读性。

4.2 变量的作用域
  1. 类变量:位于方法的外面,类的里面
  2. 实例变量:从属于对象
  3. 局部变量:必须声明和初始化值
    在这里插入图片描述
4.3 static修饰符

修饰符不存在先后顺序
static声明静态变量
final声明常量
static final是静态常量

4.4 常量(一般用大写字符)

常量初始化后,不能再改变其值!始终不变的值。
所谓常量可以理解成特殊的变量,它的值被设定后,在程序运行过程中,不允许改变。

final 常量名=;
final double PI=3.14;
4.5 变量的命名规范
  1. 变量、方法、类名:见名知意
  2. 类成员变量、局部变量:首字母小写和驼峰原则:monthSalary
  3. 常量:大写字母和下划线:MAX_VALUE
  4. 类名:首字母大写和驼峰原则:Man,GoodMan
  5. 方法名:首字母小写和驼峰原则:run()、runRun()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Java基础】【狂神说Java】Java零基础学习视频通俗易懂P21-26(Day1昨天忘记发布了) 的相关文章

  • 50个java编程程序之四

    程序 31 题目 将一个数组逆序输出 import java util public class lianxi31 public static void main String args Scanner s new Scanner Syst
  • Java学习笔记 五(面向对象)

    一 面向对象的概念 1 面向对象是把解决的问题按照一定的规则划分为多个独立的对象 然后通过调用对象的方法来解决问题 面向对象的主要特点为封装性 继承性和多态性 2 封装性 封装是面向对象的核心思想 将对象的属性和行为封装起来 不需要让外界知
  • java学习笔记——springmvc 之 @RequestMapping映射与RESTful、请求数据传入 与 响应数据传出、@ModelAttribute 与 视图解析

    一 SpringMVC 概述 1 SpringMVC 概述 Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架 是目前最主流的 MVC 框架之一 Spring3 0 后全面超越 Struts2 成为最优秀的 MVC 框
  • Java概述

    文章目录 一 Java简介 1 1 Java版本 1 2 Java特点 二 Java运行机制 2 1 Java运行过程 2 2 JDK JRE JVM 三 Java开发环境 3 1 下载 安装JDK 3 2 配置环境变量 四 Java开发规
  • java定时任务实现的几种方式

    摘要 在开发测试工具的应用后台 经常听到同事说要做个定时任务把做日志处理 或者数据清理 包括做些复杂的业务计算逻辑 在选择定时任务的时候 怎么能够快速实现 并且选择一种更适合自己的方式呢 我这里把定时任务的实现收集整理了一些方法 希望可以帮
  • JAVA-jdk8的API文件下载

    API文件 1 在线API 2 离线API 1 在线API 在线中文API文档 https www matools com api java8 2 离线API API下载地址 https www oracle com java techno
  • Docker启动过程中常见错误解决

    错误 Cannot connect to the Docker daemon at unix var run docker sock Is the docker daemon running 如果在Centos7上执行 systemctl
  • mybatis原理(含图)

    上面中流程就是MyBatis内部核心流程 每一步流程的详细说明如下文所述 1 读取MyBatis的配置文件 mybatis config xml为MyBatis的全局配置文件 用于配置数据库连接信息 2 加载映射文件 映射文件即SQL映射文
  • OSS服务端签名后直传

    OSS服务端签名后直传 1 阿里云OSS启动器快速上手 1 引入oss starter 1 引入oss starter
  • 使用mysqldump命令导出指定数据库的数据+Java实现数据库的一键导出备份

    由于项目中需要用到在页面添加一个一键数据备份的功能 所以选择使用mysqldump命令的方法 用java的运行时类Java lang Runtime来使用后台窗口 记录下整个实现的过程 1 首先mysqldump命令需要在mysql的bin
  • 利用DateFormat、Date、Calendar等类 对含有时间的字符串进行提取和计算

    在时间提取方面我用了三种方法 最开始使用的是正则表达式 很简洁 之后使用的是Date类中的方法 但这种方法都已过时 最后使用的是Calendar类的方法 我推荐使用正则表达式 简洁实用 package cn hanfeng example1
  • 在idea中集成redis

    https www cnblogs com yiMro p 13529150 html SpringBoot Redis 基本配置及使用 Test public void TestRedis Jedis jedis new Jedis 19
  • 【Git】Git复习

    常用的Linux命令 1 cd 改变目录 2 cd 回退到上一个目录 直接cd进入默认目录 3 pwd 显示当前所在的目录路径 4 ls ll 都是列出当前目录中的所有文件 只不过ll 两个ll 列出的内容更为详细 5 touch 新建一个
  • java中类什么时候被加载

    创建对象实例时 new public class codeblock public static void main String args 创建对象实例时 new 类被加载 AA aa new AA 运行结果 AA的静态代码块被执行 cl
  • 微服务swagger公共模块(SpringBoot 2.7.7 Swagger 3.0.0)

    一 SpringBoot和Swagger版本 SpringBoot
  • 安利一个实用项目--物美智能

    安利一个实用项目 可用于二次开发 官网 项目介绍 项目地址 演示地址
  • Tomcat启动报错Port 8080 required by Tomcat v9.0 Server at localhost is already in use. The server may al

    Port 8080 required by Tomcat v9 0 Server at localhost is already in use The server may already be running in another pro
  • Java学习笔记:Servlet

    JavaWeb三大组件 Servlet Filter 过滤器 Listener 监听器 Servlet生命周期 1 初始化阶段 调用init 方法 2 响应客户请求阶段 调用service 方法 3 终止阶段 调用destroy 方法 生命
  • Java入门实例(九九乘法表)

    乘法口诀 也叫 九九歌 在我国很早就已产生 远在春秋战国时代 九九歌就已经广泛地被人们利用着 在当时的许多著作中 已经引用部分乘法口诀 最初的九九歌是以 九九八十一 起到 二二如四 止 共36句口诀 发掘出的汉朝 竹木简 以及敦煌发现的古
  • 简单对比一下Cookie和Session的主要区别

    一句话总结 Cookie是检查用户身上的 通行证 来确认用户的身份 Session就是通过检查服务器上的 客户明细表 来确认用户的身份的 Session相当于在服务器中建立了一份 客户明细表 注释 300 20 4kb

随机推荐

  • 基于ROS实现A*算法的C++代码示例

    以下是基于ROS实现A 算法的C 代码示例 include
  • 【问题解决】无法定位程序输入点~于动态链接库上(The procedure entry point ~ could not be located)

    重新着手使用自己笔记本上配的工作环境 在实习中 需要对Qt程序进行打包 在Qt creator 中 修改为 release 编译 进入release 生成的项目目录 新建一个目录 把可执行文件复制进去 进入新建的目录 在命令行下 执行 wi
  • 树莓派——交叉编译(二)WiringPi软链接、硬链接

    树莓派 交叉编译 二 WiringPi软链接 参考大佬文章 Linux软硬链接命令解析 https www cnblogs com zhangna1998517 p 11347364 html 一 软链接 1 概念 2 生成软链接 ln s
  • lumen初学教程

    文档传送 lumen文档 laravel文档 laravel命令速查表 安装 Lumen composer global require laravel lumen installer 创建新的项目 通过终端进入所需创建目录的文件夹 lum
  • 如何查看自己的cuda环境,以及其对应版本

    第一步 cmd打开命令窗口 输入conda env list 查看有几个conda环境 第二步 选择一个环境进入conda 输入conda activate pytorch 第三步 进入python环境 输入python 第四部 在Pyth
  • 前端如何在H5页面调起微信支付

    在微信服务号开发的时候经常会遇到微信支付的功能实现 通过实际经验自己总结了一下 前端在H5页面调起微信支付有两种办法 一是利用内置对象 二是通过引用微信的js sdk 亲测都能支付成功 从写法上来看用内置对象方法比较简单 这里讲的只是前端要
  • Python读取和写入yaml文件

    yaml是专门用来写配置文件的语言 简洁强大 远比JSON格式方便 yaml在python语言中有PyYAML安装包 我这边应用场景是用来做接口自动化时 接口返回的值写入到yaml文件 然后需要用的时候直接引用即可 不如登录接口 我需获取接
  • java基础之内部类

    1 简介 内部类 inner class 是定义在另一个类中的类 使用内部类的原因 有以下三点 内部类方法可以访问可以访问该类定义所在的作用域中的数据 包括私有的数据 内部类可以对同一个包中的其他类隐藏起来 当想要定义一个回调函数时且不想编
  • 符合功能安全要求的动态测试工具-TESSY

    Tessy是一个专门针对嵌入式软件的C C 代码进行单元 集成测试的工具 它可以自动化地执行测试 评估测试结果并生成测试报告 Tessy的目标就是 通过自动化整个测试周期 支持针对C语言的单元测试 集成测试 同时 Tessy也同样关注测试组
  • SpringBoot利用cancl监听mysql的binlog日志通过kafja实时同步数据到es

    canal官网 https github com alibaba canal wiki gitlab https github com alibaba canal wiki QuickStart 下载地址 https github com
  • 关于GPT的20个知识,你都知道吗?

    1 GPT全称是什么 GPT全称是Generative Pre trained Transformer 2 GPT是由谁研发的 GPT是由OpenAI的研究人员研发的 3 GPT的目的是什么 GPT的目的是通过无监督的预训练 obtain
  • 离线安装/断网安装python第三方库

    由于team服务器在另一个校区 为了安全 校网络技术中心建议我们不要让服务器连外网 所以在复现代码的时候遇到一些python第三方库没法使用 就只能离线安装了 说起来都是泪 在这里 谢谢他们 参考链接 1 呕心沥血整理 python离线安装
  • 深度学习入门之Pytorch——Momentum

    动量法 动量法是梯度下降法的变式 在随机梯度下降的同时 增加动量 这是来自于物理中的概念 可以想象损失函数是一个山谷 一个球从山谷滑下来 在一个平坦的地势 球的滑动速度就会慢下来 可能陷入一些鞍点或者局部极小值点 如图 这个时候给它增加动量
  • Vue中自定义指令是什么?有哪些应用场景?

    一 什么是指令 开始之前先学习一下指令系统这个词 指令系统是计算机硬件的语言系统 也叫机器语言 它是系统程序员看到的计算机的主要属性 因此指令系统表征了计算机的基本功能决定了机器所要求的能力 在vue中提供了一套为数据驱动视图更为方便的操作
  • 终于解决了Invalid from address

    以太坊存证 ipfs 运行环境是ganache cli自动生成十个账户 import Web3 from web3 let getWeb3 new Promise function resolve reject Wait for loadi
  • Webpack详细教程

    webpack教程 第 1 章 webpack 简介 1 1 webpack 是什么 1 2 webpack 五个核心概念 1 2 1 Entry 入口 Entry 1 2 2 Output 输出 Output 1 2 3 Loader 1
  • 实战wxPython:045 - 一些扩展按钮控件

    本文介绍几个扩展按钮 它们不数属于wxPython核心库中的控件 但是它们可以提供一些特殊的效果 一 PlateButton PlateButton是一个通用按钮控件 它是一个自定义的平面按钮 它在许多方面模拟Safari浏览器书签栏中的按
  • linux安装git步骤;基于yum、dnf、源码安装【非常详细】

    这里写目录标题 一 dnf安装 二 yum安装 三 源码安装 1 基于 RPM 的发行版 Fedora RHEL RHEL衍生版 2 基于 Debian 的发行版 Debian Ubuntu Ubuntu derivatives 3 yum
  • 一文看懂npm、yarn、pnpm之间的区别

    原文 Understanding differences between npm yarn and pnpm 作者 Alex Kras 翻译 雁惊寒 本文作者对比了当前主流的包管理工具npm yarn pnpm之间的区别 并提出了合适的使用
  • 【Java基础】【狂神说Java】Java零基础学习视频通俗易懂P21-26(Day1昨天忘记发布了)

    Java小技巧 idea下 psvm tab键 补全 public static void main String args sout enter键 鼠标点击选择 可以实现补全 System out println System out p