首页 > 编程语言 >java基础语法

java基础语法

时间:2023-05-11 15:56:03浏览次数:47  
标签:运算符 java int float 基础 System 语法 println out

JAVA基础语法

注释

单行注释:

//        System.out.println("Hello world");

多行注释:

/*  
    System.out.println("Hello world");
    System.out.println("Hello world");
    System.out.println("Hello world");
*/

文档注释:

/**
 * @Description 我是注释
 * @Author 我是作者
 */

文档注释一般和JavaDoc一起使用

标识符

java关键词

关键词讲解:(118条消息) Java中的关键字有哪些?「Java中53个关键字的意义及使用方法」_jsva有哪些关键字分别代表什么意思_明金同学的博客-CSDN博客

标识符注意点

所有标识符都应该以字母或者$或者_下划线开始

首字母之后可以是上面三类和数字的任意字符组合

不能使用java关键词

分大小写

可以使用中文但是不推荐

数据类型

java是强类型语言

基本类型

整数类型:long(8),int(4),byte(1),short(2)

浮点类型:float(4),double(8)

布尔类型:boolean (占1位)

字符类型:char(2)

注意:括号内代表占字节数

​ float和long需要特殊标识:

float a = 1.01F;
long b = 10002L;
//long 不加L依旧成功

引用类型

类,接口,数组,字符串等

什么是字节

1位(bit):最小单位,11001100就是八位,可以用b表示

字节(byte):处理数据的基本单位,用

B表示

1B = 8bit

1024B = 1KB

32位和64位的区别:

32位处理器一次只能处理32位,也就是4个字节的数据;而64位处理器一次就能处理64位,即8个字节的数据。 其他诸如内存等方面区别不再赘言。

数据类型拓展

进制拓展

不同进制的开头方式

二进制0b

十进制

八进制0

十六进制0x

int i = 10; //十进制
int i2 = 010; //八进制
int i3 = 0x10; //十六进制
int i4 = 0b10; //二进制
/* 
10
8
16
2
*/

浮点数拓展

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
float d1 = 2312151556454545f;
float d2 = d1+1;
System.out.println(d1==d2);
// false
// true

因为一些原因浮点数比较存在一定问题

最好完全避免使用浮点数进行比较

一般使用BigDecimal 数学工具类进行比较

字符拓展

所有字符可以强制转换为数字

字符本质上是数字

unicode 编码 2字节 '\u'

char d = '\u0061';
System.out.println(d);
//a

转义字符

\t 水平制表符

\n 换行

类型转换

强制类型转换(高到低)

(类型)变量名

int a = 1;
byte b = (byte)a;
System.out.println(b);
//1 
//但是要注意不同类型的取值范围

自动类型转换(低到高)

int a = 1;
double b = a;
System.out.println(b);
//1.0

低到高自动转换

注意点

不能转换布尔值,注意不同类型的取值范围,强制类型转换会出现一定的精度问题。

System.out.println((int)23.9);
//23

另外jdk7新增,大数字可以用下划线分割:

int a = 1_0000_0000;
System.out.println(a);
//100000000

变量

​ 是程序中最基本的存储单位,包括变量名,变量类型和作用域

### 类变量

属于类,类里面可用

static  double a=55;

实例变量

实例化后可用(属性)

不一定需要初始化,默认值0,null

局部变量

必须声明和初始化值

只在声明的方法函数内可以使用

常量

相对于变量,值被设定后,不允许改变

final 常量名 = 值

常量名一般大写

变量命名规则

类名:首字母大写+驼峰:GoodMan

方法,属性,变量:首字母小写+驼峰:lastName

常量:大写+下划线:MAX_VALUE

运算符

基础运算符

算数运算符,赋值运算符,逻辑运算符等

++:自增

--:自减

int a = 5;
int b = a++;
int c = ++a;
int d = a--;
int e = --a;
/*
5
7
7
5
*/

幂运算:

System.out.println(Math.pow(3,2));
//9.0

短路运算:

if(a>4 && a++>4){
}
    System.out.println(a);
//4

​ 判断前者为错后,直接跳过了后一个判断

位运算符

    int a = 0b0110;
    int b = 0b0010;
    System.out.println(a&b);//与
    System.out.println(a|b);//或
    System.out.println(a^b);//异或
    System.out.println(~a);//非
	System.out.println(2<<3);//左移
    System.out.println(16>>3);//右移
/*
2
6
4
-7
16
2

扩展运算符

a+=b //a=a+b;

a-=b //a=a-b

字符串连接符

+:只要+两头出现String,数字转string进行连接

System.out.println(""+a+b);
System.out.println(a+b+"");
/*
12
3

三元运算符

int a = 1;
String b = a<2 ? "小于2" : "大于2";
System.out.println(b);
/*
小于2

运算符优先级

package com.xxx;
import  com.xxx.aa;
import  com.xxx.*;//导入包下所有

一般利用公司域名倒置作为包名

JavaDoc

用来生成自己的API文档

参数信息

javaAPI文档(JDK11):Overview (Java SE 11 & JDK 11 ) (runoob.com)

/**
 * 
 * @param name
 * @return
 * @throws Exception
 */
public String test(String name) throws Exception{
    return name;
}

idea生成javadoc:
(118条消息) IDEA生成JavaDoc文档_idea 生成 文档_热心市民小刘0505的博客-CSDN博客

运行过程中报错javadoc: 错误 - 无法读取Input length = 1

发现是路径有中文导致

标签:运算符,java,int,float,基础,System,语法,println,out
From: https://www.cnblogs.com/rainaftersummert/p/17391243.html

相关文章

  • 数据库基础(上)
    1.基础篇1.1MySQL概述1.1.1数据库相关概念主流的关系型数据库管理系统1.1.2MySQL数据库   要想在任意目录下执行MySQL指令,需要配置PATH环境变量  1.2SQL1.2.1SQL通用语法1.2.2SQL分类1.2.3DDL使用double要指定两个参数,一个参数是double的整......
  • java 启动参数设置
    nohupjava-Xms512m-Xmx1024m-XX:PermSize=64m-XX:MaxPermSize=512m-jarxxx.jar>>xxx.out2>&1&java虚拟机对外提供的可配置堆区的参数1、-Xms:表示java虚拟机堆区内存初始内存分配的大小,通常为操作系统可用内存的1/64大小即可,但仍需按照实际情况进行分配。有可能真的按......
  • 1、基础语法
    1、代码是如何被执行的1.1、解释型、编译型、混合型语言(1)编译型语言对于类似C++这样的编译型语言,代码会事先被编译成机器指令(可执行文件),然后再一股脑儿交给CPU来执行在执行时,CPU面对是已经编译好的机器指令,直接逐条执行即可,执行效率比较高但因为每种类型的CPU(比如Inte......
  • Java生成微信小程序码
    官网文档地址:获取小程序码packagetest;importcom.alibaba.fastjson.JSONObject;importcom.fasterxml.jackson.core.JsonProcessingException;importcom.fasterxml.jackson.databind.ObjectMapper;importorg.apache.http.HttpEntity;importorg.apache.http.client.met......
  • java代码中fastjson生成字符串和解析字符串的方法和javascript文件中字符串和json数组
    1.java代码中fastjson生成字符串和解析字符串的方法List<TemplateFull>templateFulls=newArrayList<TemplateFull>();JSONArrayjsonArr=newJSONArray();jsonArr.addAll(templateFulls);StringjsonStr=jsonArr.toJSONString();System.out.pr......
  • 论文解读|MetaAI图像分割基础模型SAM——解锁数字大脑“视觉区”
    原创|文BFT机器人内容提要事件背景: 2023年4月5日,MetaAI研究团队发布论文“分割一切”一《SegmentAnything》并在官网发布了图像分割基础模型一SegmentAnythingModel(SAM)以及图像注释数据集Segment-Anything1-Billion(SA-1B)。论文核心观点:目标: MetaAI的目标是通过引入......
  • java代理模式及动态代理类
    1.     代理模式代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式一般涉及到的角色有:抽象角色:声明真实对象和代理对象的共同接口;代理角色:......
  • python基础语法
    python基础语法python数据类型初探数据类型初探int类型:整数float类型:浮点数str类型:字符串,以成对单引号或双引号包裹bool:True或False注意:我们可以通过type()函数输出数据类型python标识符标识符介绍所谓的标识符就是对变量、常量、函数、类等对象起的名字标识符命......
  • JavaWeb之Servlet本质
    Servlet:服务器和Wepapp开发者之间的协议,sun公司已经规范了Servlet协议,Wepapp开发者只需要去实现规范接口类和对应的配置文件即可,Servlet底层是面向接口编程,用反射机制实例化一个类后再向下转型成Servlet类(因为Wepapp开发者实现规范好,只需到对应的文件中调用各个方法)菜鸟教程的解......
  • Java 9模块化关键字及应用场景
    一、背景SpringBoot3.0最低要求jdk17,为跟上节奏储备知识。二、简介关键字描述应用场景module定义一个模块代码隔离,依赖控制,代码可重用性openmodule定义一个像java9之前的开放模块像Java的旧版本那样允许完全反射exports...to指定模块的一部分对外提供......