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

day01_基础

零、今日内容

1 jdk
2 idea使用
3 HelloWorld程序
4 变量
5 数据类型
6 String

一、JDK安装

JDK java开发工具包,敲代码的环境

1.1 卸载

控制面板 -> 卸载程序 ->

image-20231009095406232

选择jdk,右键卸载

image-20231009095545958

1.2 安装

注意: 现在安装的是JDK8版本,虽然最新的版本是21版本,但是工作市场中最流行的还是jdk8

image-20231009095817005

安装步骤: 无脑下一步即可 (这样会装在c盘C:\Program Files\Java文件夹下)

双击打开安装包开始安装

直接下一步

image-20231009100127359

下一步

image-20231009100210608

安装中

image-20231009100258880

安装成功

image-20231009100325296

在磁盘中可以查看安装位置(c盘),发现安装两个东西

  • jdk java开发工具包(敲代码需要用)
  • jre java运行环境 (执行代码的)

image-20231009100431946

1.3 配置环境变量

配置环境变量是为了java命令可以在任意地方执行

我的电脑右键 --> 属性 --> 高级系统设置 --> 环境变量

image-20231009100844622

image-20231009100922568 image-20231009100948729

系统变量 --> 新建 --> 输入框输入JAVA_HOME以及jdk安装路径

image-20231009101232056

新建 --> 输入框输入JRE_HOME以及jre安装路径

image-20231009101345084

找到path变量,新建刚才JRE_HOME和JAVA_HOME

image-20231009101715265

点击确定,关闭窗口

测试

win + r 打开窗口,输入cmd 打开命令行(黑窗口)

image-20231009101904686

黑窗口中输入 java -version

image-20231009102027683

恭喜配置环境成功!

二、idea安装使用

开发工具 --> 敲代码工具

  • Eclipse
  • MyEclipse
  • Idea (收费)

2.1 安装idea

解压

image-20230711144446851

双击这个安装包

image-20230711144528137

开始安装

image-20230329093001065

下一步next (点完next,可能会稍等一会儿才会到下一页)

image-20230329093146174

勾选以上4个,下一步next

image-20230329093203025

点击下方install

稍等一会儿就会安装成功~

image-20230329093441002

点击finish,完成

1.2 pojie

软件解决到桌面,点击即可

1.3 使用 【重点】

首先,建议是在磁盘创建一个工作空间文件夹:IdeaWorkSpace

打开idea写代码的步骤

  • 创建项目
    • 使用代码做的事情的一个统称
    • 例如: 某某楼盘项目
  • 创建包
    • 是项目内的代码再细化的管理
    • 例如: 1#号楼 ,2#号楼
  • 创建类
  • 类内写主方法
  • 主方法内写代码
  • 编译(idea会自动编译,我们不要管)
  • 右键点击run运行
  • 控制台查看结果

1.3.1 创建项目

image-20230920095553852

选择jdk

image-20230920095809656

image-20230920095826097

image-20230920095848148

image-20230920100146146

image-20230920100237400

取消提示

image-20230920100532701

项目创建完成

image-20230920100733662

1.3.2 创建包

选择src --> 右键 --> new --> package

image-20230920100840295

接下来输入包名,包名有规范

  • 全部小写
  • 是公司反域名 ,例如com.qf

显示不同的包结构,可以点击"齿轮" 调整

image-20230920101310726

1.3.3 创建类

选择包结构 --> 右键 --> new --> class

image-20230920101418655

image-20230920101455854

注意:

  • 类名建议全部英文
  • 首字母大写
  • 多个单词之间不要空格
  • 多个单词后面单词首字母也大写
  • 不能使用特殊符号,除了_和$
  • 数字不能放开头

Hello2World (对)、2HelloWorld(错误)

HelloWorld(对),Hello_World(对)

image-20230920101606275

1.3.4 编写代码

image-20231009114131369

注意事项:

  • java中单词大小写敏感

1.3.5 运行

运行

image-20230920102325246

或者

image-20230920102454707

1.4 配置

image-20230920105742459

编码格式,全部改为utf-8

image-20230920105845145

三、HelloWorld程序

/*** 多行注释*/
// 单行注释
/*** public 公共的,在此处是固定的,即每一个类都有* class   类,在此处是固定的,即每一个类都有* HelloWorld 类名,见名知意* {} 类体,*    左括号左边不换行,右边换行 *    右括号左右两边都换号,即右括号单独占一行* public static void main(String[] args){} 固定格式,*   是主方法,是程序唯一入口* 在{}内写代码时,需要缩进4个空格* ----------------------------------* 主方法快捷键: psvm 回车* 输出语句快捷键: sout 回车*/
public class HelloWorld {public static void main(String[] args){System.out.println("java 666");}
}

四、变量

变量: 就是变化的数据

比如: 年龄,身高


为什么需要变量?

java是用来写程序,程序就是需要通过计算各种数据得到一个结果,此时就需要使用变量来存储数据


变量的作用

  • 存储数据
  • 实现数据复用

如何定义变量?

  • 数据类型 变量名;

变量赋值

  • 变量名 = 值;
public class Demo1 {public static void main(String[] args) {/*** int 是数据类型,整型,即整数* age 是变量名* double 是数据类型,浮点型,即小数* ----------------* 数据类型作用定义变量的类型* ----------------* 变量名可以随便定义,见名知意即可*/int age; // 声明变量age,代表年龄age = 18;// 给age变量赋值,代码从右向左看System.out.println(age);// 将变量输出18age = 20; // 变量是可以变化的,即可以被重新赋值System.out.println(age);// 20// 一般可以连写(声明 + 赋值)double wight = 65.3; // 体重System.out.println(wight);// double wight = 80.0; // 错误,变量不能重复定义(声明)wight = 80.0; // 对,变量定义完可以重复使用wight = 90.0; // 对,变量定义完可以重复使用wight = 100.0; // 对,变量定义完可以重复使用System.out.println(wight ); // 100.0/*** 变量相对于是容器,用来装东西 ,例如 空心有底圆柱体,杯子* 数据类型相对于是限制, 装汽油的杯子*/}
}

总结

  • 变量定义: 数据类型 变量名;
  • 变量不能重复定义,但是可以重复使用
  • 变量值可以被重新赋值,赋值是将以前的值覆盖

五、基本数据类型

数据类型就是变量类型的,一旦定义类型就会限制一些特性

java的数据类型

  • 基本类型: 整数(byte short int long) 浮点(float double) 字符(char) 布尔(boolean)
  • 引用类型

5.1 整型

整型代表整数,又细分为 byte,short ,int ,long,主要区别在于表示范围不同

数据类型表示范围位数
byte-2^7 ~2^7-1(-128 ~ 127)8位 (8bit)
short-2^15 ~ 2^15-1(-32768 - 32767)16位
int-2^31 ~ 2^31-1(正负21亿左右)32位
long-2^63 ~ 2^63-164位
    public static void main(String[] args) {// 变量定义: 数据类型 变量名// byte 范围-2^7 ~2^7-1(-128 ~ 127)byte b = 127;System.out.println(b );// short 范围-2^15 ~ 2^15-1(-32768 - 32767)short s = -32768;// int 范围(正负21亿左右)int i = 2100000000;// long 范围 -2^63 ~ 2^63-1// 特殊的: long型数据需要在后面加上L或l以示区分long l = 22000000000L;}

注意:

虽然学了4个整型,但是平常只要没有特殊说明,所有整型默认都用int

5.2 浮点型

浮点型,就是平时使用的小数,细分成两类 float,double,区别在于表示范围不同

数据类型表示范围位数
float有效范围8位数字32位
double有效范围17位数字64位
        // float// 特别注意: float需要在后面加上f/F以示区分float f = 112345.67890F;System.out.println(f );// 112345.68// double后面可以加也可以不加D/ddouble d = 112345.678901234567890;System.out.println(d );// 112345.67890123457 

注意: 只有没有特殊说明,小数定义就用double

4.3 字符型

字符型 char, 是指单个字或者符号使用单引号包裹 --> 基本类型

字符串型 String, 是指多个字符号使用双引号包裹 --> 这不是基本类型,是引用类型

		/*** char 代表字符型数据,即字或者符号* 赋值必须使用单引号,* 且内部有且只有一个字符*/char c1 = '中';char c2 = 'A';char c3 = '?';char c4 = ' ';// char c5 = '';  // 不写内容报错// char c6 = 'AB';// 写多个也报错

4.4 布尔型

布尔型,只有一个类型 boolean,主要用来做判断的,代表对错

即只有两个值: true,false

        // 主要用来做判断的,代表对错boolean bo = true;boolean bo2 = false;

4.5 数据类型的使用总结

基本数据类型有8种: byte short int long float double boolean char

  • 什么时候使用整型数据? 当表示整数时用int,比如库存量,商品数量,评论量,总条数
  • 什么时候使用小数数据? 小数就用double,比如价钱,比率,分数等
  • 什么时候用char字符? 目前阶段基本不用
  • 什么时候用boolean布尔? 后续在if或者for做判断语句时候使用

当写代码时,只要分析出来需要数据的,就要先定义变量,再变量赋值,后使用变量

六、String

String是引用数据类型,但它不是基本数据类型

代表字符串,多个字和符号连成串,写法是需要双引号

public class Demo3 {public static void main(String[] args) {// 数据类型 变量名;int i = 1;double d = 1.1;// 字符串数据类型// 特别注意: 首字母大写!// 赋值使用双引号String s1 = "我爱Java666~";System.out.println(s1 );// 字符串一般有一个应用场景: 用来做拼接// 为什么要拼接? 对输出的内容做解释System.out.println("aaa" + "bbb" );// aaabbbString s2 = "字符串";System.out.println(s2 + "666" ); // 字符串666System.out.println(s2 + 1 ); // 字符串1// -----------int a = 1;System.out.println("int a = " + a );byte b = 1;System.out.println("byte b = " + b );short s = 1;System.out.println("short s = " + s );long l = 1;System.out.println("long l = " + l );}
}

总结

jdk安装以及环境变量了解即可,只要不换电脑,基本不会动
但是需要知道jdk安装到哪里
-----------------------------------------
idea的使用
掌握 如何建项目,建包,建类
类中写什么东西
如何输出, 代码又如何执行
---------------------------
变量是干什么的?
如何写一个变量?有什么注意事项?
-------------------------
有哪些基本数据类型?
每个类型有哪些特点?
常用的类型有哪些? int 和double
------------------------------
String ,代表字符串数据类型,使用双引号
常用类做输出语句中拼接字符串, 对输出结果的解释

单词

work 工作

space 空间

new 新建/创建

project 项目

src source(资源) 存放源代码的地方

package 包

file 文件

settings 设置 (set)

相关文章:

day01_基础

零、今日内容 1 jdk 2 idea使用 3 HelloWorld程序 4 变量 5 数据类型 6 String 一、JDK安装 JDK java开发工具包,敲代码的环境 1.1 卸载 控制面板 -> 卸载程序 -> 选择jdk,右键卸载 1.2 安装 注意: 现在安装的是JDK8版本,虽然最新的版本是21版本,但是工作市场中最流行的…...

RabbitMQ开启消息发送确认和消费手动确认

开启RabbitMQ的生产者发送消息到RabbitMQ服务端的接收确认(ACK)和消费者通过手动确认或者丢弃消费的消息。 通过配置 publisher-confirm-type: correlated 和publisher-returns: true开启生产者确认消息。 server:port: 8014spring:rabbitmq:username: …...

嵌入式系统开发【深入浅出】 GPIO 类设备的驱动程序

目录 GPIO管脚的输出功能相当于控制、输入相当于检测 使用GPIO基本流程 对于某一个管脚来说最多有几种功能? 拓展 【定时器与系统定时器】 决定定时长短的因素: 普通定时器 系统定时器 STM32F103RBT6的时钟源有哪五种 sysclk 的时钟频率由哪个时钟源提供基…...

项目管理必备的22个公式

大家好,我是老原。 趁着国庆时间比较空闲,给你们整理了一些项目管理必备的计算公式,一共22个。 每一个公式都给你们标注了适用情况和使用方法,为了方便你们理解,也加了一些例子,保准你看了就会。 觉得不…...

ccache加速编译速度

ccache https://gitee.com/lixiaoxmm/ccache.git 依赖hiredis、zstd(zstd的cmakelists.txt在build/cmake目录下) 下载mingw,https://www.mingw-w64.org/downloads/#w64devkit hiredis、zstd使用mingw编译 cmake -G “MinGW Makefiles” cmakecache.txt手动修改去掉网络下载,…...

Apache POI使用

1.导入坐标 <!-- poi --><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>${poi}</version></dependency><dependency><groupId>org.apache.poi</groupId><a…...

UNIQUE VISION Programming Contest 2023 Autumn(AtCoder Beginner Contest 323)

A - Weak Beats 链接 : A - Weak Beats 思路 : 模拟即可,如果在偶数位上出现了非0得元素&#xff0c;直接输出"No"后返回即可&#xff0c;循环顺利结束的话&#xff0c;就直接输出"Yes"; 代码 : #include<bits/stdc.h> #define IOS ios::sy…...

Docker 网络管理

Docker 网络实现原理 Docker使用Linux桥接&#xff0c;在宿主机虚拟一个Docker容器网桥(docker0)&#xff0c;Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址&#xff0c;称为Container-IP&#xff0c;同时Docker网桥是每个容器的默认网关。因为在同一宿主机…...

网络安全国家队-安防思考与实践

按照工信部“三同步”安全建设的统一要求&#xff0c;本项目的实施应具备符合等级保护要求的安全防护措施&#xff08;主要为传输控制、防火墙隔离、入侵检测、安全审计等网络安全措施&#xff1b;操作系统安全、数据库安全、防病毒管理、安全审计等基础系统安全措施&#xff0…...

epoll 定时器

参考&#xff1a; Linux下使用epoll监听定时器-CSDN博客 但是这个用的是gettimeofday。 本人使用的是 #include <stdlib.h> #include<stdio.h> #include <sys/timerfd.h> #include <sys/epoll.h> #include <unistd.h> #include <sys/time.…...

BUUCTF Java逆向解密 1

Class文件是Java编译后的二进制字节码文件。 我这里使用的是jadx-gui&#xff0c;直接将class文件拖进去即可 package defpackage;import java.util.ArrayList; import java.util.Scanner;/* renamed from: Reverse reason: default package */ /* loaded from: Reverse.clas…...

BUUCTF [MRCTF2020]Ez_bypass1

这道题全程我都是用bp做的 拿到题目 我们查看页面源代码得到 代码审计 我们要用get传入id和gg两个参数&#xff0c;id和gg的值要求不能相等&#xff0c;但是id和gg的md5强比较必须相等 if(isset($_GET[gg])&&isset($_GET[id])) {$id$_GET[id];$gg$_GET[gg];if (md5($…...

深入理解强化学习——强化学习和有监督学习

分类目录&#xff1a;《深入理解强化学习》总目录 通过前文的介绍&#xff0c;我们现在应该已经对强化学习的基本数学概念有了一定的了解。这里我们回过头来再看看一般的有监督学习和强化学习的区别。以图片分类为例&#xff0c;有监督学习&#xff08;Supervised Learning&…...

设计模式 - 结构型模式考点篇:装饰者模式(概念 | 案例实现 | 优缺点 | 使用场景)

目录 一、结构型模式 1.1、装饰者模式 1.1.1、概念 1.1.2、案例实现 1.1.3、优缺点 1.1.4、使用场景 一、结构型模式 1.1、装饰者模式 1.1.1、概念 装饰者模式就是指在不改变现有对象结构的情况下&#xff0c;动态的给该对象增加一些职责&#xff08;增加额外功能&#…...

计算机竞赛 题目:基于深度学习的手势识别实现

文章目录 1 前言2 项目背景3 任务描述4 环境搭配5 项目实现5.1 准备数据5.2 构建网络5.3 开始训练5.4 模型评估 6 识别效果7 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习的手势识别实现 该项目较为新颖&#xff0c;适合作为竞赛课题…...

手撕各种排序

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大一&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;掌握每种排序的方法&#xff0c;理解每种排序利弊…...

视频号的链接在哪,视频号视频链接地址获取办法!

不少人问视频号的链接在哪里可以获取&#xff0c;本质的在腾讯微信中目前视频号的链接是无法获取的&#xff0c;但好事多磨今天就分享一个第三方的视频号视频链接地址获取办法&#xff0c;希望对你有所帮助&#xff01; 1&#xff1a;在微信客户端中&#xff0c;我们可以通过搜…...

深度学习笔记之优化算法(六)RMSprop算法的简单认识

深度学习笔记之优化算法——RMSProp算法的简单认识 引言回顾&#xff1a;AdaGrad算法AdaGrad算法与动量法的优化方式区别AdaGrad算法的缺陷 RMProp算法关于AdaGrad问题的优化方式RMSProp的算法过程描述 RMSProp示例代码 引言 上一节对 AdaGrad \text{AdaGrad} AdaGrad算法进行…...

10架构管理之公司整体技术架构

一句话导读 公司的整体技术架构一般是公司的架构组、架构管理部、技术委员会等部门负责&#xff0c;需要对公司整体的技术架构进行把控和管理&#xff0c;确保信息系统的稳定性和可靠性&#xff0c;避免因技术架构不合理而导致的系统崩溃和数据丢失等问题&#xff0c;为公司的业…...

联邦学习综述

《Advances and Open Problems in Federated Learning》 选题&#xff1a;Published 10 December 2019-Computer Science-Found. Trends Mach. Learn. 联邦学习定义 联邦学习是一种机器学习设置&#xff0c;其中多个客户端在中央服务器或服务提供商的协调下协作解决机器学习…...

几行cmd命令,轻松将java文件打包成jar文件

1. 在任意目录下建立一个.java文件 2. 在当前目录下使用cmd命令&#xff1a; javac filename编译 如果报错则使用此命令javac -encoding UTF-8 filename 3.此时已成功生成.class文件 4. 可以手动添加MANIFEST.MF文件 Manifest-Version: 1.0 Main-Class: fileName 5.直接一…...

BuyVM 卢森堡 VPS 测评

description: 发布于 2023-07-05 BuyVM 卢森堡 VPS 测评 产品链接&#xff1a;https://my.frantech.ca/cart.php?gid39 1G口不限流量&#xff0c;续约3个月后升级为10G口突发。抗DMCA版权投诉。抗一般投诉。 大陆连通性还可以&#xff0c;延迟略高&#xff0c;不绕美。 CP…...

JavaScript 编写一个 数值转换函数 万以后简化 例如1000000 展示为 100万 万以下原来数值返回

很多时候 我们看一些系统 能够比较只能的展示过大的数值 例如 到万了 他就能展示出 多少 多少万 看着很奇妙 但实现确实非常的基础 我们只需要一个这样的函数 //数值转换函数 convertNumberToString(num) {//如果传入的数值 不是数字 且也无法转为数字 直接扔0回去if (!parse…...

PyG两个data Datsaset v.s. InMemoryDataset

可以看到InMemoryDataset 对CPU更加友好 https://pytorch-geometric.readthedocs.io/en/latest/modules/data.html#pytorch-lightning-wrappers...

ArcGIS Engine:视图菜单的创建和鹰眼图的实现

目录 01 创建项目 1.1 通过ArcGIS-ExtendingArcObjects创建窗体应用 1.2 通过C#-Windows窗体应用创建窗体应用 1.2.1 创建基础项目 1.2.2 搭建界面 02 创建视图菜单 03 鹰眼图的实现 3.1 OnMapReplaced事件的触发 3.2 OnExtentUpdated事件的触发 04 稍作演示 01 创建项目…...

POI 和 EasyExcel 操作 Excel

一、概述 目前操作 Excel 比较流行的就是 Apache POI 和阿里巴巴的 easyExcel。 1.1 POI 简介 Apache POI 是用 Java 编写的免费开源的跨平台的 Java API&#xff0c;Apache POI 提供 API 给 Java 程序对 Microsoft Office 格式文档读和写的常用功能。POI 为 “Poor Obfuscati…...

pytorch算力与有效性分析

pytorch Windows中安装深度学习环境参考文档机器环境说明3080机器 Windows11qt_env 满足遥感CS软件分割、目标检测、变化检测的需要gtrs 主要是为了满足遥感监测管理平台&#xff08;BS&#xff09;系统使用的&#xff0c;无深度学习环境内容swin_env 与 qt_env 基本一致od 用于…...

Sublime text启用vim模式

官方教程&#xff1a;https://www.sublimetext.com/docs/vintage.html vintage的github&#xff1a;https://github.com/sublimehq/Vintage...

爬虫进阶-反爬破解6(Nodejs+Puppeteer实现登陆官网+实现滑动验证码全自动识别)

一、NodejsPuppeteer实现登陆官网 1.环境说明 Nodejs——直接从官网下载最新版本&#xff0c;并安装 使用npm安装puppeteer:npm install puppeteer npm install xxx -registry https://registry.npm.taobao.org Chromium会自动下载&#xff0c;前提是网络通畅 2.实践操作…...

【Unity】RenderFeature笔记

【Unity】RenderFeature笔记 RenderFeature是在urp中添加的额外渲染pass&#xff0c;并可以将这个pass插入到渲染列队中的任意位置。内置渲染管线中Graphics 的功能需要在RenderFeature里实现,常见的如DrawMesh和Blit ​ 可以实现的效果包括但不限于 后处理&#xff0c;可以编写…...