2.1、注释


  • 注释用于说明某段代码的作用,某个类的用途,某个方法的功能,参数和返回值数据类型的意义等等;

  • 注释非常非常非常重要,回顾代码时通过注释找回思路;团队沟通需要,让别人读懂你的代码,增加效率;

  • 可读性第一,效率第二!

注释类型:

  • 单行注释://
  • 多行注释:/* */

举例:

2.2、数据类型


2.2.1、分类:

基本类型:boolean类型 + 数值类型

  • boolean类型:boolean
  • 数值类型:整型( byte、short、int、long、char )、浮点型( float、double )(取值范围递增)

引用类型:类、接口、数组、null类型

2.2.2、数据类型转换

Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换。

自动转换:将 取值 范围小 的类型 自动提升为 取值 范围大 的类型。

  • 当一个 int 类型变量和一个 double 变量运算时, int 类型将会自动提升为 double 类型进行运算。
  • 一个 int 类型变量和一个 byte 类型变量进行加法运算, 结果会是int类型
  • 范围小的类型向范围大的类型提升, byte、short、char 运算时直接提升为 int 。

强制转换:将 取值范围大的类型 强制转换成 取值范围小的类型 。

将 数值2.9 赋值到 int 类型变量会发生什么?产生编译失败,无法赋值。

double 类型内存8个字节, int 类型内存4个字节。 2.9 是 double 类型,取值范围大于 int 。 想要赋值成功,只有通过强制类型转换,将 double 类型强制转换成 int 类型才能赋值。

  • 转换格式: 数据类型 变量名 = (数据类型)被转数据值;
int number = (int) 2.9;
/*
number就变成了2(取整数位数字),double类型被转换为int类型,
但是注意到范围有所减小,造成精度损失
*/
  • 注意:浮点转成整数,直接取消小数点,可能造成数据损失精度。 int 强制转成 short 砍掉2个字节,可能造成数据丢失。

2.3、运算符


算术运算符

符号 含义
+ 加法运算
- 减法运算
* 乘法运算
/ 除法运算
% 取模运算,两个数字相除取余数
++、- - 自增自减运算

赋值运算符

运算符 含义
= 等于
+= 加等于,左边等于左边加右边
- = 减等于,左边等于左边减右边
*= 乘等于,左边等于左边乘右边
/= 除等于,左边等于左边除以右边

| %= | 取模等于,左边等于左边除以右边取余数

比较运算符

运算符 含义
== 两边相等返回true
< 左边小于右边返回true
> 左边大于右边返回true
<= 左边小于或者等于右边返回true
>= 左边大于或者等于右边返回true
!= 两边不等返回true

逻辑运算符

运算符 含义
&&
||

三目运算符

  • 格式:
  • 数据类型 变量名 = 布尔类型表达式?结果1:结果2
  • 三目运算符计算方式: 布尔类型表达式结果是true,三目运算符整体结果为结果1,赋值给变量。布尔类型表达式结果是false,三目运算符整体结果为结果2,赋值给变量。

2.4、方法

2.4.1、方法的定义


定义格式:

修饰符 返回值类型 方法名 (参数列表)
public static void main(String[] args)
  • static表示这是一个静态方法

2.4.2、方法的调用


在 主方法中,直接写要调用的方法名字就可以调用了。

public static void main(String[] args) {
//调用定义的方法method
method();
}
//定义方法,被main方法调用
public static void method() {
System.out.println("自己定义的方法");
}

Java自学第2期——注释、数据类型、运算符、方法的更多相关文章

  1. 003 python 注释/数据类型/运算符/输入输出/格式化输出

    集成开发环境 pycharm 工欲善其事,必先利其器 pycharm是具备一般的python ide的功能,同时呢支持调试,语法高亮,代码管理,智能提示 加快快发的速度,提高开发效率 注释 what ...

  2. Java自学第6期——Collection、Map、迭代器、泛型、可变参数、集合工具类、集合数据结构、Debug

    集合:集合是java中提供的一种容器,可以用来存储多个数据. 集合和数组既然都是容器,它们有啥区别呢? 数组的长度是固定的.集合的长度是可变的. 数组中存储的是同一类型的元素,可以存储基本数据类型值. ...

  3. Java自学第10期——File类与IO流(输入输出流、处理流、转换流、缓冲流、Properties集合、打印流)

    1.IO简介 IO(输入输出)通过java.io包下的类和接口来支持,包下包括输入.输出两种IO流,每种输入输出流又可分为字符流和字节流两大类. 2.File类 File类是io包下与平台无关的文件和 ...

  4. Java自学第7期——异常(Exception)

    1.概念: 异常 :指的是程序在执行过程中,出现的非正常的情况,终会导致JVM的非正常停止. 在Java等面向对象的编程语言中,异常本身是一个类, 产生异常就是创建异常对象并抛出了一个异常对象. Ja ...

  5. java自学第5期——Object、Date、Calender、System、StringBuilder、基本类型包装类

    一.Object类 作用:对象操作 位置:java.lang.Object 方法: public String toString() :返回对象的字符串表示形式. public boolean equ ...

  6. java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)

    一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...

  7. java自学第3期——继承、多态、接口、抽象类、final关键字、权限修饰符、内部类

    一.继承: 关键字extends /* 定义一个父类:人类 定义父类格式:public class 父类名称{ } 定义子类格式:public class 子类名称 extends 父类名称{ } * ...

  8. Java自学第8期——多线程

    1.多线程: 操作系统支持同时运行多个任务,一个任务通常是一个程序,所有运行中的程序就是一个进程().程序内部包含多个顺序执行流,每个顺序执行流就是一个线程. 并发:两个或者多个事件在同一个时间段内交 ...

  9. Java自学第9期——Lambda表达式

    1.入门 使用场景:如果创建函数式接口(该接口的抽象方法只能有一个)的实例时,使用Lambda表达式更加简洁方便. 2.格式: (形参列表) -> { 代码块 } 3.简化 只有一个参数时,可以 ...

随机推荐

  1. 9. Linux用户身份和能力

    root 拥有最高的系统所有权,能够管理系统的各项功能,如添加/删除用户.启动/关闭服务进程.开启/禁用硬件设备等.以root 管理员的身份工作时不会受到系统的限制 在Linux 系统中,UID 有唯 ...

  2. Dubbo官网实战使用技巧

    原文链接:Dubbo官网实战使用技巧 1.启动时检查: 我们检查依赖的服务是否启动,可利用下面三个属性,优先级从左到右逐渐降低. 如果服务不是强依赖,或者说服务之间可能存在死循环依赖,我们应该将 ch ...

  3. 痞子衡嵌入式:恩智浦MCUX SDK在GitHub上线了

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是恩智浦MCUX SDK 在GitHub上线一事. 其实在差不多一个月前(2021年1月6日),恩智浦MCUX SDK就在GitHub悄悄上 ...

  4. 微信支付V3 SDK Payment Spring Boot 1.0.6 发布,实现留守红包,助力抗疫

    春节将至,为防控疫情,多地政府提倡员工.外来务工者留守本地过年,并鼓励企业向员工发放"留守红包".为此,微信支付推出"春节留守红包"能力,希望可以协助有发放需求 ...

  5. 纯js添加类

    1.el.setAttribute('class','abc'); <!DOCTYPE HTML><HTML><HEAD><meta charset=&quo ...

  6. conda 命令笔记

    1.虚拟环境 conda -V # 查看当前conda 版本 conda update conda # 更新conda conda env list 查看当前已有的虚拟环境 conda create ...

  7. [Golang]-1 Slice与数组的区别

    目录 数组 1.创建数组: 2.数组是值拷贝传递: 切片(slice) 1.首先看看slice的源码结构: 2.slice的创建: 3.slice使用make创建 4.切片作为参数传递 5.Golan ...

  8. leetcode_二叉树篇_python

    主要是深度遍历和层序遍历的递归和迭代写法. 另外注意:因为求深度可以从上到下去查 所以需要前序遍历(中左右),而高度只能从下到上去查,所以只能后序遍历(左右中). 所有题目首先考虑root否是空.有的 ...

  9. hdu 4465 Candy (非原创)

    LazyChild is a lazy child who likes candy very much. Despite being very young, he has two large cand ...

  10. 5分钟学Go 基础01:初识 Go 的第一印象是薪水可观

    本文首发于公众号「5分钟学Go」,一个让你每次花 5 分钟就能掌握一个技能点的公众号.目前在博主连更 5 分钟学Go系列,大家可以关注下,第一时间掌握Go技能.如果想要加群交流,可以在公众号后台回复「 ...