ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java基础

2022-07-29 22:36:58  阅读:181  来源: 互联网

标签:Java int 数据类型 基础 ++ 转义 运算符 --


Java基础

编译和运行

在java文件路径下打开cmd

javac命令将java文件编译成class文件

javac 文件名.java

java命令运行程序

java 文件名

注意的点

​ 类名和Java文件名要保持一致

语法

注释

注释并不会被执行,是给我们写代码的人看的

注释分三种

单行注释

//注释内容

多行注释

/*
注释内容
*/

JavaDoc注释

/**
@Description 这个注解表示描述内容
@Author 这个注解表示作者
@Version 版本号
@Since 指明需要最早使用的JDK版本
@Parm 参数名
@Return 返回值情况
@Throws 异常抛出情况
*/

javadoc

用来生成自己的API文档

DOS窗口生成

javadoc -encoding UTF-8 -charset UTF-8 类名
//-encoding 设置编码,一般用UTF-8(中文不会乱码)
//-charset 设置字符集编码

idea生成

  1. 菜单Tools-Generate JavaDoc
  2. 选择Whole project
  3. Output directory选择文档生成的目录
  4. Other command line arguments输入-encoding utf-8 -charset utf-8
  5. 点击OK即可生成。

Generate JavaDoc界面选择:
1.Whole project:整个项目都生成文档
2.Custom scope 自定义范围。如下:
(1)project files 项目文件,
(2)project production files 项目产品文件,
(3)project test files 项目的测试文件,
(4)Scratches and Console 临时文件和控制台
(5)Open files打开的文件
(6)Moudule '' 单个模块
(7)Current file当前文件
3.include test source 包含测试目录
4.include JDK and … 包含jdk和其他的第三方jar
5.link to JDK documentation…链接到JDK api
6.output directy 生成的文档存放的位置
(1)private、package、protected、public 生成文档的级别(类和方法)
(2)右边的Generate…是选择生成的文档包含的内容,层级树、导航、索引..
(3)再右边是生成的文档包含的内容信息,作者版本等信息
7.Locale 语言类型,zh-CN
8.Other command line arguments 其他参数
9.Maximum heep… 最大堆栈
原文链接:https://blog.csdn.net/haoranhaoshi/article/details/102801751

关键字

标识符

标识符的命名不可以直接使用关键字

标识符的命名规则

  • 所有的标识符都应该以字母(A-Z 或者a-z) ,美元符($)、或者下划线( _)开始
  • 首字符之后可以是字母(A-Z 或者a-z) ,美元符($) 、下划线( )或数字的任何字符组合
  • 不能使用关键字作为变量名或方法名。
  • 标识符是大小写敏感的
    1. 合法标识符举例: age、 $salary、_ value、__ 1_ value
    2. 非法标识符举例: 123abc、-salary、 #abc

数据类型

强类型语言

要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

  • 优点:安全性高
  • 缺点:速度慢

弱类型语言

Java数据类型

基本数据类型

八大基本数据类型

整数类型

  1. int num1 = 10;    //常用
    
  2. byte num2 = 20;
    
  3. short num3 = 30;
    
  4. long num4 = 40L
    
  5. float num5 = 3.1F
    
  6. double num6 = 3.1415926
    
  7. char num7 = 'a'
    

    类型

  8. Boolean num8 = ture
    

引用类型

除基本数据类型外都是引用类型
类,接口,数组

类型转换

由于Java是强类型语言,所以要进行有些运算时,需要用到类型转换

低------------------------------------->高

byte,short,char-->int-->long-->float-->double

运算中不同类型先转化为同一类型,然后计算

强制类型转换 (类型)变量名 高-->低

自动转换 低-->高

注意:

  1. 布尔类型不能进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 转换的时候可能会存在内存溢出或者精度问题

知识点:数字之间可用下划线分割

int number = 10_0000_0000

不同进制的表示方法

//二进制 0b开头
int a = 0b10  //输出为十进制为2

//八进制 0开头
int b = 010   //输出为十进制为8

//十六进制 0x开头
int c = 0x10  //输出为十进制为16

转义字符

  1. 进制转义序列:\ + 1到3位5数字;范围'\000'~'\377'
    \0:空字符
  2. Unicode转义字符:\u + 四个十六进制数字;0~65535
    \u0000:空字符
  3. 特殊字符:就3个
    \":双引号
    \':单引号
    \\:反斜线
  4. 控制字符:5个
    \' 单引号字符
    \\ 反斜杠字符
    \r 回车
    \n 换行
    \f 走纸换页
    \t 横向跳格
    \b 退格
  5. 点的转义:
    . ==> u002E
    美元符号的转义:$ ==> u0024
    乘方符号的转义:^ ==> u005E
    左大括号的转义:{ ==> u007B
    左方括号的转义:[ ==> u005B
    左圆括号的转义:( ==> u0028
    竖线的转义:| ==> u007C
    右圆括号的转义:) ==> u0029
    星号的转义:* ==> u002A
    加号的转义:+ ==> u002B
    问号的转义:? ==> u003F
    反斜杠的转义: ==> u005C

变量与常量

变量的定义:可以变化的量

type name  [=value][{,varname=[=value]}]
//数据类型 变量名 (可以先只声明)((也可直接声明时赋值)=值);可以用逗号隔开声明多个同类型变量(不建议使用)

注:除了基本类型变量,布尔值默认为false,其余变量默认值为null

常量(Constant):初始化后不可以再改变其值!值不会发生改变
命名:一般使用全大写字符,多个单词用下划线隔开

// final 常量名 = 值
final double PI = 3.14

变量的命名规范

所有的变量、方法、类名:见名知意

类成员变量、局部变量、方法名:首字母小写和驼峰法

类名--->首字母大写+驼峰法

常量--->大写字母+下划线分割

运算符

算术运算符:+、-、*、/、%,++,--

赋值运算符:=

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

逻辑运算符:&&、||、!

位运算符:&、|、^、~、>>、<<、>>>

条件运算符:?:(三目运算)

赋值扩展:+=、-=、*=、/=

部分详解:

% 模运算 求余数的运算符

int a = 7 % 3;
//上述例子,结果为1,7除以3的余数

++ 、-- 自增一运算

//初始换i变量值为0
int i = 0;
int p = ++i;
int q = i++;
/*
++i和i++的区别在于,自增一运算的优先级,++i是先进行自增一,再进行其他运算,i++是先参与其他运算,然后再进行其他运算,因此p的值为1,q的值也为1,但i的值最后已为2
*/

instanceof:java中的二元运算符,左边是对象,右边是类;当对象是右边类或子类所创建对象时,返回true;否则,返回false。

对象 instanceof 类
//左边不可为基础数据类型

位运算

/*
A = 0011 1100
B = 0000 1101

A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001  (异或)
~B = 1111 0010

<< *2  左移
>> /2  右移

2<<3 = 16
2:0000 0010
16:0001 0000
*/

标签:Java,int,数据类型,基础,++,转义,运算符,--
来源: https://www.cnblogs.com/chenJJ-J/p/16533738.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有