java-3月xly笔记

news2024/9/27 21:31:03

时间安排:

朱祥祥

会议号:417 523 3263

服务器:doc.canglaoshi.org

jdk下载:https://repo.huaweicloud.com/java/jdk/

jdk配置环境变量

检测命令:
(1)win+r,输入cmd,回车
(2)java
(3)javac
需要配置:win+s,输入环境变量
配置JAVA_HOME(系统变量)
在这里插入图片描述
配置Path,新建,%JAVA_HOME%\bin
在这里插入图片描述

(4)java -version 查看jdk版本

一、数据类型

1、基本数据类型

(1)整型:默认是int
byte,存储范围:-128~127
short,存储范围:-32768~32767
int,存储范围:-2147483648~2147483647
long,超过int的存储范围,需要加后缀L(l)

(2)浮点型:默认是double
float,需要加后缀F(l)
double

(3)布尔型:只能是true或者是false
boolean

(4)字符型:只能存储一个汉字或者一个英文字母或者是一个数字
char

package cn.com;

/**
 * 数据类型-基本数据类型
 *
 */
public class Test2 {
    public static void main(String[] args) {
        //测试byte存储范围(-128~127)
        //定义变量格式:变量的类型 变量的名字 = 变量的值;
        byte a = -113;

        //变量名在方法里不能重复
        short s1 = 32767;
        System.out.println("s1修改之前的值" + s1);
        s1 = -32767;
        System.out.println("s1修改之后的值" + s1);

        //测试long
        long L1 = 2147483647;
        System.out.println(L1);
        L1 = 2147483648L;
        System.out.println(L1);

        //测试float和double
        float f1 = 3.0F;
        System.out.println(f1);
        double d1 = 4.0;
        System.out.println(d1);

        //测试boolean
        boolean b1 = true;
        System.out.println(b1);
        b1 = false;
        System.out.println(b1);

        //测试char
        char c1 = '达';
        System.out.println(c1);
        //c1 = '达内';    //只能存储一个中文汉字
        c1 = 'A';
        System.out.println(c1);
        c1 = 32768;//ascii码表   A65 B66 A97 b98
        System.out.println(c1);

    }
}

类型从大到小排序:
double > float > long > int > short > byte

类型转换规则:
大给小:需要强制转换(显式转换),强制转换可能会出现精度丢失问题

小给大:自动类型转换(隐式转换)

package cn.com;

/**
 * 基本数据类型转换
 * double > float > long > int > short > byte
 */
public class Test3 {
    public static void main(String[] args) {
        //大给小,需要强转转换
        byte b1 = 10;
        short s1 = 20;
        //byte = (强转的类型)short
        //强转的类型必须要和左边的的类型相等或者比左边的类型小
        b1 = (byte)s1;

        int i1 = 500;//小
        long L1 = 200;//大
        i1 = (short)L1;


        //小给大
        double d1 = 20.5;
        float f1 = -18.5F;
        d1 = f1;//大 = 小


        //测试
        short s2 = (short)50025;//小 = 大
        System.out.println(s2);
    }
}

2、引用类型(除了基本数据类型以外的)

二、运算符

1、算术运算符:+、-、、/、%(取模)、++、–
+、-、
、/ 运算符进行运算时,可能会出现精度丢失的问题

package cn.com;

/**
 * 运算符-算术运算符
 */
public class Test4 {
    public static void main(String[] args) {
        //1、+
        float f1 = 3.0F;
        double d1 = 4.0;
        System.out.println(f1+d1);

        short s1 = 80;
        System.out.println("小明这次的周考成绩是:"+s1+"分");

        //2、-
        double d2 = 15.0;
        double d3 = 8.3;
        System.out.println(d2-d3);

        //3、%(取模:求余数)
        byte b1 = 5;
        byte b2 = 3;
        //大取小,求余数
        System.out.println(b1%b2);

        //小取大,直接得到最小的那个数
        System.out.println(3%5);

        //4、++
        //(1)++前
        int i1 = 10;
        //++i1;//<=>  i1=i1+1
        System.out.println(++i1);//先运算,再赋值  //11
        System.out.println(i1);//11
        //(2)后++
        int i2 = 10;
        //i2++;//<=> i2=i2+1
        System.out.println(i2++);//先赋值,再运算  //10
        System.out.println(i2);//11

        //5、--
        int i5 = 0;
        int i6 = 0;

        int i3 = 20;
        //先运算,再赋值
        //--i3; //<=> i3=i3-1;    --i3=i3-1;
        i5 = --i3;
        System.out.println(i5);//19
        System.out.println(i3);//19

        int i4 = 20;
        //先赋值,再运算
        //i4--; //<=> i4=i4-1;    i4--=i4;    i4=i4-1
        i6 = i4--;
        System.out.println(i6);//20
        System.out.println(i4);//19
    }
}

2、赋值运算符:=、+=、-=、*=、/=、%=

package cn.com;

/**
 *  运算符-赋值运算符
 *  =、+=、-=、*=、/=、%=
 */
public class Test5 {
    public static void main(String[] args) {
        byte b1 = 10;
        byte b2 = 20;
        b1+=b2;//<=>b1=b1+b2;
        System.out.println(b1);//30
        b1-=b2;//<=>b1=b1-b2;
        System.out.println(b1);//10

        b2%=b1;//<=>b2=b2%b1;
        System.out.println(b2);//0
    }
}

3、关系运算符:>、<、>=、<=、==、!=

package cn.com;

/**
 * 运算符-关系运算符
 * >、<、>=、<=、==、!=
 */
public class Test6 {
    public static void main(String[] args) {
        int i1,i2,i3,i4,i5,i6;
        i1 = 10;
        i2 = 20;
        i3 = 35;
        i4 = 40;
        i5 = 55;
        i6 = 70;
        System.out.println(i3>i1);//true
        System.out.println(i4<=i6);//true
        System.out.println(i2==i5);//false
        i1+=10;
        System.out.println(i1!=i2);//false
    }
}

4、逻辑运算符:&&(与)、||(或)、!(非)

package cn.com;

/**
 * 运算符-逻辑运算符
 * &&(与)、||(或)、!(非)
 * &&   两边都为true,结果才为true,如果有一个为false,结果则为false
 *
 * ||   两边只要有一个为true,则为true,如果都是false,结果才是false
 *
 * !    取反
 */
public class Test7 {
    public static void main(String[] args) {
        int i1,i2,i3,i4;
        boolean b1,b2;
        i1 = 15;
        i2 = 25;
        i3 = -18;
        i4 = 99;
        //true && false
        b1 = (i1>i3) && (i1>i4);//false
        //false && true
        b2 = (i2>i4) || (i2>i1);//true
        System.out.println(b1);
        System.out.println(b2);
        System.out.println(!b1);//true
        b2=!b1;
        System.out.println(b2);//true
    }
}

5、条件运算符(三元或者三目):
A?a:b;
如果A为true,则走a,如果A为false,则走b

package cn.com;

/**
 * 运算符-三元运算符
 */
public class Test8 {
    public static void main(String[] args) {
        int b2,b3;
        b2 = 10;
        b3 = 20;
        
        //A>B?a:b;
        String s1 = b2>b3?"b2的值大":"b3的值大";
        System.out.println(s1);
    }
}

作业:
一、交换两个变量的值
编写步骤:

  1. 定义类Homework6
  2. 定义 main方法
  3. 定义两个整数变量a,b并赋值
  4. 控制台输出变量a,b互换前的值
  5. 定义一个第三方变量temp
  6. 利用第三方变量temp使a,b的值互换
  7. 控制台输出变量a,b互换后的值

二、
编写步骤:

  1. 定义类 Homework7
  2. 定义 main方法
  3. 定义2个int类型变量x、y,x赋值为100,y赋值为200
  4. 定义新变量add,保存变量x,y的和并打印到控制台
  5. 定义新变量sub,保存变量x,y的差并打印到控制台
  6. 定义新变量mul,保存变量x,y的积并打印到控制台
  7. 定义新变量div,保存变量x,y的商并打印到控制台

三、
编写步骤:

  1. 定义类 Homework8
  2. 定义 main方法
  3. 定义2个double类型变量x、y,x赋值为100.8,y赋值为20.6
  4. 定义新变量add,保存变量x,y的和并打印到控制台
  5. 定义新变量sub,保存变量x,y的差并打印到控制台
  6. 定义新变量mul,保存变量x,y的积并打印到控制台
  7. 定义新变量div,保存变量x,y的商并打印到控制台

四、 强制类型转换练习
(1)先声明两个byte类型的变量b1,b2,并分别赋值为10和20,求b1和b2变量的和,并将结果保存在byte类型的变量b3中,最后输出b3变量的值

(2)先声明两个short类型的变量s1,s2,并分别赋值为1000和2000,求s1和s2变量的和,并将结果保存在short类型的变量s3中,最后输出s3变量的值

(3)先声明1个char类型的变量c1赋值为’a’,再声明一个int类型的变量num赋值为5,求c1和num变量的和,并将结果将结果保存在char类型的变量letter中,最后输出letter变量的值。

(4)先声明两个int类型的变量i1,i2,并分别赋值5和2,求i1和i2的商,并将结果保存在double类型的变量result中,最后输出result变量的值。如何得到结果2.5呢?

五、

  1. 定义两个int类型变量a1和a2,分别赋值10,11,判断变量是否为偶数,拼接输出结果
  2. 定义两个int类型变量a3和a4,分别赋值12,13,判断变量是否为奇数,拼接输出结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/399374.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ActiveMQ反序列化漏洞原理+复现

ActiveMQ反序列化漏洞 ActiveMQ ActiveMQ是开源消息总线&#xff0c;消息中间件 工作原理 通过使用消息队列&#xff0c;实现服务的异步处理&#xff0c;主要目的是减少请求响应时间和解耦合。 消息队列&#xff0c;服务器A将客户发起的请求放入服务器B的消息队列中&#…

裸辞两个月还能不能找到工作?亲身经历告诉你结果·····

这是我在某论坛看到的一名网友的吐槽&#xff1a; 软件测试四年&#xff0c;主要是手动测试&#xff08;部分自动化测试和性能测试&#xff0c;但是用的是公司内部自动化工具&#xff0c;而且我自动化方面是弱项。&#xff09;现在裸辞两个月了&#xff0c;面试机会少而且面试…

树与二叉树(二叉树的表示,性质,遍历,还原)

基本术语&#xff1a;A&#xff08;或B&#xff09;是I的祖先&#xff0c;I是A&#xff08;或B&#xff09;的子孙&#xff1b;D是I的双亲&#xff0c;I是D的孩子&#xff1b;节点的孩子个数称为节点的度&#xff1b;树中节点的最大度数称为树的度&#xff1b;度大于0的节点称为…

Git 命令行5步解决冲突方法(亲测有效)

总体步骤如下&#xff1a; git pull --rebase 解决冲突文件 file1.c。git add file1.cgit commit -m "*****" git pushgit rebase --continue &#xff0c;此时冲突消失强推&#xff0c;git push origin xxxx -f 本人解决的例子如下&#xff1a; 第一步、拉取…

SSH框架 (一) SpringMVC

1.SpringMVC 1.1 概述 Spring MVC 是 Spring 提供的一个基于 MVC 设计模式 的轻量级 Web 开发框架&#xff0c;本质上相当于 Servlet相当于对其的进一步封装 核心组件 DispatcherServlet。 Spring MVC框架 内部采用松耦合、可插拔的组件结构&#xff0c; 具有高度可配置性&am…

1/4车、1/2车、整车悬架H2/H∞控制仿真合集

目录 前言 1. 1/4悬架系统 1.1数学模型 1.2 H2/H∞求解反馈阵阵 1.3仿真分析 2. 1/2悬架系统 2.1数学模型 2.2 H2/H∞求解反馈阵阵 2.3仿真分析 3. 整车悬架系统 3.1数学模型 整车7自由度主动悬架数学模型 3.2 H2/H∞求解反馈阵阵 3.3仿真分析 4.总结 参考文献 …

Java-Web之s2-001与CommonsCollections

本文源自我个人入坑Java-Web安全的一点小经验&#xff0c;献给那些看得懂java代码但不知道从哪里入手代审的师傅们&#xff1a;&#xff09; Struts2之s2-001 环境配置 说说环境配置的问题&#xff0c;大多数人对漏洞复现的恐惧感还是来自于环境的配置&#xff0c;也许配了大…

在 Ubuntu 下编写 C++

在 Ubuntu 下编写 C 在 Ubuntu 上面编写 C&#xff0c;本章节内容主要介绍在 Ubuntu 在终端窗口下使用 vi/vim 编辑一 个 C源文件。通过编写最简单的示例“Hello,World&#xff01;”。带领大家学习如何在 Ubuntu 终端下编 辑和编译 C。这里要求大家会在 Ubuntu 上使用 vi/vim…

图片动画化应用中的动作分解方法

作者 | FesianXu 前言 最近基于AI的换脸应用非常的火爆&#xff0c;同时也引起了新一轮的网络伦理大讨论。如果光从技术的角度看&#xff0c;对于视频中的人体动作信息&#xff0c;通常可以通过泰勒展开分解成零阶运动信息与一阶运动信息&#xff0c;如文献[1,2]中提到的&…

Multisim 14.3 安装教程

1、首先解压Multisim 安装包。 2、解压完成后&#xff0c;双击点进去&#xff0c;找到setup这个文件&#xff0c;点进去。 3、找到setup文件里面的install.exe文件&#xff0c;并鼠标右键 “找到以管理员身份运行”。 4、选择“我接受上述许可协议”&#xff0c;点击下一步。 …

InceptionTime 复现

下载数据集&#xff1a; https://www.cs.ucr.edu/~eamonn/time_series_data/ 挂梯子&#xff0c;开全局模式即可 配置环境 虚拟环境基于python3.9&#xff0c; tensorflow下载&#xff1a;pip install tensorflow&#xff0c;不需要tensorflow-gpu&#xff08;高版本python&…

电脑怎么既录屏又录人脸?分享2个宝藏方法,轻松学会

在如今的数字时代&#xff0c;视频已成为人们表达和传递信息的最佳方式。无论是用于工作、教育、演示还是娱乐&#xff0c;录制高质量的视频已成为不可或缺的需求。然而&#xff0c;有些场景需要同时录制屏幕和人脸&#xff0c;电脑怎么既录屏又录人脸&#xff1f;本文将分享两…

Unity入门精要03---透明效果

本节知识架构 1.渲染顺序与渲染队列 如果采用了透明度混合即要是实现半透明效果&#xff0c;那么就要关闭深度写入&#xff0c;那么此时渲染顺序就会变得非常非常重要&#xff0c;不然会出现不正确的遮挡效果。具体的分析可见书中解释 一句话概括就是因为没有写入深度&#xf…

【3.9】RedisAOF日志、字符串、操作系统进程管理

4. 进程管理 进程、线程基础知识 什么是进程 我们编写的代码只是一个存储在硬盘的静态文件&#xff0c;通过编译后就会生成二进制可执行文件&#xff0c;当我们运行这个可执行文件后&#xff0c;它会被装载到内存中&#xff0c;接着 CPU 会执行程序中的每一条指令&#xff0c;…

ubuntu 使用 CMake 构建 Qt5 项目

Qt 概述 概念 Qt 是一个跨平台的 C 图形用户界面应用程序框架 常见的 C GUI: Qt 和 MFC 跨平台 Windows Linux MacOS 嵌入式平台 版本 包括商业版和开源免费版 案例 Linux 桌面环境 KDE WPS Office Qt 安装 下载地址: https://download.qt.io/archive/qt/ http…

37.Java进阶之实现动态编译

文章目录1. 作为程序员的最高追求2.如何实现动态编译2.1 生成源码2.2 调用编译器API对Test源码文件进行编译生成字节码2.3 调用类加载器对字节码进行加载得到Class对象2.4 使用Class对象创建对象进行使用3. Java编译API学习4. 类加载机制4.1 类加载过程4.2 类加载器的层次结构4…

【数据结构】研究链表带环问题

&#x1f4af;&#x1f4af;&#x1f4af;&#x1f4af; 本篇主要研究的是链表带环问题&#xff0c;快慢指针的应用&#xff0c;分析不同解法对带环链表的处理&#xff0c;梳理完本篇你将对链表的理解更加透彻Ⅰ.研究链表带环问题Ⅱ.扩展带环问题1.为什么慢指针和快指针一定会相…

求职季必看系列:Java如何高效面试?

先看看这些java高频的面试重点吧 ​ 以下是初级程序员面试经常问到的问题&#xff1a; ■ Spring的三大特性是什么&#xff1f; ■ Spring IOC和AOP 你是如何理解并且使用的&#xff1f; ■ 说一下ElasticSearch为什么查询的快&#xff1f;是如何存储的&#xff1f;在项目中…

JUC并发编程设计模式

一、保护性暂停 1.1 定义 即Guarded Suspension,用在一个线程等待另一 个线程的执行结果 要点 ● 有一个结果需要从一个线程传递到另一 个线程&#xff0c;让他们关联同一一个GuardedObject ● 如果有结果不断从一个线程到另一个线程那么可以使用消息队列&#xff08;生产者…

SpringBoot 集成 elasticsearch 7.x和对应版本不一致异常信息处理

开源框架springboot框架中集成es。使用org.springframework.data.elasticsearch下的依赖,实现对elasticsearch的CURD,非常方便&#xff0c;但是springboot和elasticsearch版本对应很严格&#xff0c;对应版本不统一启动会报错。 文章目录开源框架Elasticsearch 7.x安装Elastics…