java基础-给个一键三联呗^_^哈哈

文章目录

    • 1.注释
        • 修改注释字体
        • 三种注释方式
    • 2.标识符和关键字
    • 3.数据类型
    • 4.类型转换
    • 5. 变量、常量、作用域
    • 6.基本运算符
    • 7.自增自减运算符、初识Math类
    • 8.逻辑运算符、位运算符
    • 9.三元运算符及小结
    • 10.包机制
    • 11.JavaDoc生成文档

1.注释

修改注释字体

打开设置Settings
在这里插入图片描述
在这里插入图片描述

三种注释方式

在这里插入图片描述
有趣的代码注释

2.标识符和关键字

1)48个关键字:abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。
2)2个保留字(现在没用以后可能用到作为关键字):goto、const。
3)3个特殊直接量:true、false、null。
Java中的关键字有哪些?「Java中53个关键字的意义及使用方法」

标识符注意点
只能由字母(大小写,26个英文字母)、数字(0~9)、下划线“_”和“$”符组成。
数字不可以开头。
不可以使用关键字和保留字,但是可以包含关键字和保留字。
Java中严格区分字母大小写
对长度无要求。
标识符内不能含有空格。

3.数据类型

强类型语言:必须定义变量
Java 的两大数据类型:

  • 内置数据类型
  • 引用数据类型
    数据类型
package com.wind;public class Demo01 {public static void main(String[] args){int num1=10;byte num2=20;short num3=30;long num4=40;//浮点数float num5=50.1F;double num6=3.123023849348324;//字符char name='国';//字符串String 不是关键字 是类String namea="逸尘";//布尔值:boolean flag=true;System.out.println(num1);System.out.println(num2);System.out.println(num3);System.out.println(num4);System.out.println(num5);System.out.println(num6);System.out.println(name);System.out.println(namea);}
}

位(bit):内部数据存储的最小单位
字节(byte):数据处理的基本单位 B
字符:计算机中使用的字母,数字,符号

1Byte=8bit
1024B=1KB
1024KB=1MB
1024MB=1GB

二进制 0b
十进制
八进制 0
十六进制 0x

package com.wind;
import java.net.SocketOption;
public class Demo02 {public static void main(String[] args){int i=10;int i2=010;int i3=0x10;System.out.println(i);System.out.println(i2);System.out.println(i3);System.out.println("================================");/*浮点数扩展:银行业务如何表示?float? double?*/float f=0.1f;double d=0.1;System.out.println(f==d);System.out.println(f);System.out.println(d);float d1=2328342384323f;float d2=d1+1;System.out.println(d1==d2);}
}
运行结果:
10
8
16
================================
false
0.1
0.1
true

double类型的0.1和float类型的0.1不相等?
因为在 Java 中,float 和 double 类型都采用二进制浮点数表示法来存储实数,而这种表示法有时会导致精度损失。
具体来说,由于浮点数使用二进制进行存储,而十进制小数 0.1 在二进制中是一个无限循环小数,因此在将其转换为浮点数时,会近似为最接近的二进制浮点数。这个过程可能会导致精度损失。在 Java 中,float 类型使用 32 位二进制浮点数表示,而 double 类型使用 64 位二进制浮点数表示,因此 float 类型的精度比 double 类型低。

 //字符扩展System.out.println("================================");char c1='a';char c2='中';System.out.println(c1);System.out.println((int)c1);System.out.println(c2);System.out.println((int)c2);
输出:
================================
a
9720013

字符本质上是数字,ASCII码,Unide码等等
转义字符
在这里插入图片描述

4.类型转换

自动类型转换:
在这里插入图片描述
强制类型转换

package com.wind;
public class Demo03 {public static void main(String[] args){int i=128;byte b=(byte)i; //出现数据逸出System.out.println(i);System.out.println(b);}
}

byte:表示的范围为:占一个字节=8bit ,2的8次方=256,256/2=128,有正负包含0,可知范围:
-128到127

byte 数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是 -128(-2^7);
最大值是 127(2^7-1);
默认值是 0;
byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;
例子:byte a = 100,byte b = -50。

注意点:

  1. 不能对布尔值进行转换
  2. 不能把对象类型转为不相干的类型
  3. 在把高转低容量时,强制转换
  4. 转换的时候可能存在内存溢出,或精度问题
long a=100_100_00;
System.out.println(a);

数字间可用下划线分割!

5. 变量、常量、作用域

public class Demo04 {//类变量 staticstatic double salary=2500;//实例变量:从属于对象,如果不自行初始化,默认值0,0。0//布尔值默认false//除了基本类型其他都是nullString name;int age;public static void main(String[] args){int i=10; //局部变量System.out.println(i);//变量类型 变量名字 =new Demo04();Demo04 demo04= new Demo04();System.out.println("========================>");System.out.println(demo04.age);System.out.println(demo04.name);System.out.println("实习:"+salary);}
}

常量:初始化后不能改变的值,不会变动的值,使用final定义,可以写在static的前后均可。
所谓常量可以理解为一种特殊的变量,他的值被设定后,在程序运行期不能被改变。
常量名一般使用大写字母。

public class Demo05 {//final 不分先后final static double PI=3.14;public static void main(String[] args){System.out.println(PI);}
}

所有变量、方法、类名:见名知意
类成员变量:首字母小写和驼峰原则: monthSalary除了第一个单词以外,后面的单词首字母大写lastname lastName
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则: Man,GoodMan方法名:首字母小写和驼峰原则: run(), runRun()

6.基本运算符

在这里插入图片描述

public class Demo06 {public static void main(String[] args){long a=123434243235L;int b=123;short c=10;byte d=1;System.out.println(a+b+c+d); //Long 自动类型转换,从小转大容量的System.out.println(b+c+d);  //intSystem.out.println(c+d);   //int}
}

7.自增自减运算符、初识Math类

自增自减要看在前面还是在后面,在前面先自增/减运算再赋值,在后面先赋值后自增/减

int a=4;
int b=4;
int c,d;
c=++a; //等价于a+=1;c=a;
d=b++; //等价于d=c;c+=1;
System.out.println(c); //5
System.out.println(d); //4

8.逻辑运算符、位运算符

在这里插入图片描述

短路运算
&&运算:表达式1&&表达式2,当表达式1为假时,后面的表达式2不再执行,进而短路。整个表达式返回假false;
||运算:表达式1||表达式2,当表达式1为真时,后面表达式2不再执行。

int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d); //false
System.out.println(c); //5

在这里插入图片描述
实例:
在这里插入图片描述

9.三元运算符及小结

result=表达式?true:false;
如果表达式为真,返回true给result,否则返回false给result;

public class Demo07
{public static void main(String[] args){int score=60;String type;type=score>=60?"及格":"不及格";System.out.println(type);}
}

10.包机制

在 Java 中,包(Package)是用来组织类和接口的一种机制。它可以将相关的类和接口放在一个命名空间下,以避免命名冲突,并提高代码的可读性和可维护性。

一个包可以包含多个类或接口,也可以嵌套其他包。包的命名采用倒置的域名格式,例如 com.example.mypackage。这种命名方式可以确保不同开发者的包名不会冲突,同时也方便了代码组织和管理。

Java 中的包使用 package 关键字进行声明,通常位于源文件的第一行。例如:

package com.example.mypackage;public class MyClass {// 类的定义
}

在上面的代码中,我们声明了一个名为 com.example.mypackage 的包,并在其中定义了一个类 MyClass。其他源文件可以通过 import 语句引入该包中的类,例如:

import com.example.mypackage.MyClass;public class Main {public static void main(String[] args) {MyClass myObj = new MyClass();// 使用 MyClass 类}
}

在上面的代码中,我们通过 import 语句引入了 com.example.mypackage 包中的 MyClass 类,并在 main 方法中创建了一个 MyClass 类的对象。
导入一个包中所有的类可以使用*号

import com.example.mypackage.*;

11.JavaDoc生成文档

在这里插入图片描述

package com.wind;/*** @author wind* @version 1.0* @since 1.8*/
public class Doc {String name;/*** @author wind* @param name* @return* @throws Exception*/public static void main(String[] args) throws Exception{return name;}
}

在这里插入图片描述
执行如下命令行:
在这里插入图片描述
文件目录多出了这些文件:
在这里插入图片描述
打开index.html得到下面的页面:
在这里插入图片描述
思考:如何使用IDEA生产javaDoc文档?

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

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

相关文章

[Vulnhub靶机] DriftingBlues: 4

[Vulnhub靶机] DriftingBlues: 4靶机渗透思路及方法&#xff08;个人分享&#xff09; 靶机下载地址&#xff1a; https://download.vulnhub.com/driftingblues/driftingblues4_vh.ova 靶机地址&#xff1a;192.168.67.23 攻击机地址&#xff1a;192.168.67.3 一、信息收集 …

【教学类-45-01】X-Y之间的三连加题(a+b+c=)

作品展示&#xff1a; 背景需求&#xff1a; 我常去的大4班孩子们基本都适应了0-5之间的加法题&#xff0c;做题速度极快。 为了增加“花样”&#xff0c;吸引幼儿参与&#xff0c;修改参数&#xff0c;从二连加12变为三连加111。 素材准备: 代码重点 代码展示 X-Y 之间的3…

增长中台建设与第三方平台调研

增长中台建设与第三方平台调研 前言一、增长策略 1.1 增长算法1.2 增长算法主要内容汇总1.3 增长策略参考材料二、增长中台建设 2.1 增长中台2.2 建设参考材料三、第三方增长中台 3.1 创量3.2 引力引擎3.3 增长参谋 adSpark3.4 买量小飞机&#xff08;舜飞科技&#xff09;3.5 …

Android studio ViewPager2 底部圆点指示器应用设计

一、activity_main.xml布局文件: <androidx.viewpager2.widget.ViewPager2android:id="@+id/viewpager2"android:layout_width="403dp"android:layout_height="442dp"app:layout_constraintEnd_toEndOf="parent"app:layout_const…

python编程从入门到实践(2)操作列表

3.4 列表-list-切片操作 numlist[1,2,3,4,5,6,7,8,9] numlist[::-1] #######运行结果######[9, 8, 7, 6, 5, 4, 3, 2, 1]numlist[1,2,3,4,5,6,7,8,9] numlist[::2]#######运行结果######[1, 3, 5, 7, 9]7.列表–list-常用操作符 list1[123,456] list2[456,789] list1>list2…

如何使用 CMakeLists.txt 在 CMake 项目中生成一个可执行程序

文章目录 main.cppCMakeLists.txt创建一个构建目录运行 CMake编译项目总结 main.cpp #include <iostream> /*** 代码作者&#xff1a;小秋SLAM入门实战* 开发环境&#xff1a;Ubuntu 16.04* 运行依赖&#xff1a;C 11*/ int main(int argc, char** argv){std::cout<&…

MySQL视图索引执行计划相关十五道面试题分享

目录 一. 视图 1.1 含义 1.2 操作 创建视图 修改视图 删除视图 查看视图 二. 索引 2.1 什么是索引 2.2 为什么要使用索引 2.3 优点 2.4 缺点 2.5 何时不适用索引 2.6 索引何时失效 三. 执行计划 3.1 什么是执行计划 3.2 执行计划的作用 四. 面试题 表结构 …

HTML5+CSS3小实例:人物介绍卡片2.0

实例:人物介绍卡片2.0 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><…

【计算机网络】网络基础--协议/网络协议/网络传输流程/地址管理

文章目录 一、计算机网络背景二、协议1.协议是什么2.为什么要有协议 三、网络协议1.为什么要进行协议分层2.OSI七层模型3.TCP/IP五层(或四层)模型 四、网络传输基本流程1.协议报头2.局域网3.数据包封装和分用4.网络传输流程图 五、网络中的地址管理1.认识IP地址2.认识MAC地址3.…

AI爆文变现:怼量也有技巧!如何提升你的创作收益

做AI爆文项目&#xff0c;赚小钱是没有问题的。 想要赚大钱&#xff0c;就是要做矩阵&#xff0c;怼量。 之前参加训练营的时候&#xff0c;也是要求怼量。 怼量&#xff0c;加高质量文章&#xff0c;让你的收益更高。 如何提升文章质量&#xff0c;减少AI味&#xff0c;AI…

提升技术,必看的8个开源库,都很通俗易懂

提升技术&#xff0c;必看的8个开源库&#xff0c;都很通俗易懂 随着工作年限越来越高&#xff0c;越来越觉得闭门造车是一种非常不好的习惯&#xff0c;还是得多看看别人是怎么写代码的&#xff0c;毕竟人外有人嘛&#xff0c;所以我觉得多看看开源库的源码&#xff0c;是一种…

线性规划基本原理与案例分析

线性规划(Linear Programming 简记LP)则是数学规划的一个重要分支。 什么叫做线性规划&#xff1f;一般来讲&#xff0c;目标函数和约束函数均是线性的叫做线性规划问题。线性规划必须满足以下三种基本性质 例1.1 某机床厂生产甲、乙两种机床&#xff0c;每台销售后的利润分别…

【RocketMQ每日一问】RocketMQ如何保证消息不丢失?

1.生产端 不要使用oneway方式发送&#xff0c;因为这种方式不会有返回结果设置重试次数发送失败添加回调对消息进行处理 2.broker端 开启同步刷盘flushDiskType SYNC_FLUSH &#xff0c;这样在刷盘失败的时候会返回SendStatus.FLUSH_DISK_TIMEOUT开启主从同步复制&#xff…

多线程基础知识点

1. 进程 一个正在执行中的程序就是一个进程&#xff0c;系统会为这个进程发配独立的【内存资源】。进程是程序的一次执行过程&#xff0c;它有自己独立的生命周期&#xff0c;它会在启动程序时产生&#xff0c;运行程序时存在&#xff0c;关闭程序时消亡。 例如&#xff1a;正…

胡圆圆的暑期实习经验分享

背景 实验室一般是在研究生二年级的时候会放实习&#xff0c;在以后的日子就是自己完成毕业工作要求&#xff0c;基本上不再涉及实验室的活了&#xff0c;目前是一月份也是开始准备暑期实习的好时间。实验室每年这个时候都会有学长学姐组织暑期实习经验分享&#xff0c;本着不…

uView IndexList 索引列表

通过折叠面板收纳内容区域 #平台差异说明 App&#xff08;vue&#xff09;App&#xff08;nvue&#xff09;H5小程序√√√√ #基本使用 外层包裹一个index-list组件&#xff0c;锚点通过index-anchor组件传入&#xff0c;自定义列表内容通过index-item嵌套使用 nvue需要将…

【Redis】非关系型数据库之Redis的增删改查

目录 一、Redis的数据类型分类 二、Redis的字符串类型string 三、Redis的列表list 四、Redis的哈希hash 五、Redis的无序集合set 六、Redis的有序集合zset 七、Redis的通用命令 一、Redis的数据类型分类 通常Redis的数据类型有五大基础类型 String&#xff08;字符串&am…

Beauty algorithm(二)唇妆

实现唇妆过程中首先确定唇部位置,其次对该区域进行渲染。 一、skills 前瞻 1、cv::convexHull 在点集中寻找凸包点 void convexHull( InputArray points, OutputArray hull, bool clockwise = false, bool returnPoints = true ); 参数poi…

安全加固之weblogic屏蔽T3协议

一、前言 开放weblogic控制台的7001端口&#xff0c;默认会开启T3协议服务&#xff0c;T3协议则会触发的Weblogic Server WLS Core Components中存在反序列化漏洞&#xff0c;攻击者可以发送构造的恶意T3协议数据&#xff0c;获取目标服务器权限。 本文介绍通过控制T3协议的访问…

[JavaWeb玩耍日记] 数据库

mysql版本&#xff1a;5.7.24 使用Navicat for MySQL辅助学习(2015年版)&#xff0c;这个在粘贴本博客的块引用内容时会有额外的不可见内容导致sql运行出问题&#xff0c;不过有影响的地方笔者已排除 目录 一.数据库创建 二.使用数据库与创建表 三.表内列的数据类型 四.修…