一、数据类型和运算符:Java是一种强类型语言,这意味着必须为每一个变量声明一种类型。

1.注释可以提高程序的可读性。可划分为

  • 单行注释 //
  • 多行注释 /.../
  • 文档注释 /**...*/

2.标识符的命名规则:

  • 标识符必须以字母、下划线_、美元符号$开头。
  • 标识符其它部分可以是字母、下划线“_”、美元符“$”和数字的任意组合。
  • Java 标识符大小写敏感,且长度无限制。
  • 标识符不可以是Java的关键字。

3.标识符的命名规范:

  • 表示类名的标识符:每个单词的首字母大写,如Man, GoodMan
  • 表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写,我们称之为“驼峰原则”,如eat(), eatFood()
  • 常量:所有字母都大写,两个单词间使用下划线连接。

4.变量的声明格式:

type varName [=value] [,varName[=value]...];

5.变量的分类:局部变量、实例变量、静态变量

6.常量的声明格式:常量一般使用全大写

final type varName = value ;

7.Java的数据类型可分为基本数据类型和引用数据类,基本数据类型的分类如下:

  • 整型变量:byte、short、int、long
  • 浮点型:float、double
  • 字符型:char
  • 布尔型:boolean,值为true或者false

  float类型的数值有一个f或F后缀(如:3.14F),没有F后缀的默认为double类型。long类型的数值需要有一个L后缀。

8.Java语言支持的运算符可分为:整数除0会报异常,而浮点数除0会得到无穷大或NaN。

  • 算术运算符: +,-,*,/,%,++,--
  • 赋值运算符 =
  • 扩展赋值运算符:+=,-=,*=,/=
  • 关系运算符: >,<,>=,<=,==,!= ,instanceof
  • 逻辑运算符: &&,||,!  (&&和||是按照“短路”方式的,即如果第一个表达式已经能够确定表达式的值,就不需要计算第二个表达式),^(异或,当且仅当两个操作数具有不同的布尔值时,结果才为true)
  • 位运算符: &,|,^,~ , >>,<<,>>>
  • 字符串连接符:+
  • 条件运算符 (三目运算符)?:

9.基本数据类型的类型转换可分为:

  • 自动类型转换:容量小的数据类型可以自动转换为容量大的数据类型

(待修改.. P55)

  • 强制类型转换:用于显式的转换一个数值的类型,语法格式:

    数字类型用 (type)var

    数字转String类型用 String.valueOf( value )

    String类型转数字用parse函数,例如 Integer.parseInt

  • 只有极少数情况需要将布尔类型的数据转换为数值类型,这时可以使用条件表达式 b?1:0。

10.键盘的输入:Scanner类的使用

import  java.util.Scanner;
Scanner scanner = new Scanner(System.in);
String s1 = scanner.nextLine();
//或者直接调用
String s2 = new Scanner(System.in).nextLine();

11. 数学函数:在源文件的顶部加上 import static java.lang.Math.*; 就不必添加前缀“Math”。

 【补充 直接量】

  默认情况下,整型直接量是一个十进制数。使用以下来表示其他进制的整型直接量。

  • 0B:二进制
  • 0:八进制
  • 0X:十六进制

【补充 科学计数法】

  • 1.23*10^2:      1.23E2
  • 1.23*10^(-2):   1.23E-2

二、控制结构

1.从结构化程序设计角度出发,程序有三种结构:

  顺序结构、选择结构和循环结构

2.选择结构

  (1)if单选择结构 if-else双选择结构 if-else if-else多选择结构

  (2)switch-case多选择结构

3.多选择结构与switch的关系:当布尔表达式是等值判断的情况,可使用多重选择结构或switch结构,如果布尔表达式区间判断的情况,则只能使用多重选择结构

   (1) 循环结构

   (2)当型:while与for

   (3)直到型:do-while

4.while与do-while的区别,在布尔表达式的值为false时while的循环体一次也不执行,而do-while至少执行一次

5.break可以在switch与循环结构中使用,而continue只能在循环结构中使用

6.方法(Method)就是一段用来完成特定功能的代码片段,类似于其它语言的函数

7.方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。 调用时,会根据不同的参数自动匹配对应的方法

8.任何能用递归解决的问题也能使用迭代解决。在要求高性能的情况下尽量避免使用递归,递归调用既花时间又耗内存。

参考:https://www.cnblogs.com/xjtu-lyh/p/12257523.html

Java入门笔记 01-Java基础语法的更多相关文章

  1. [Java入门笔记] 面向对象编程基础(二):方法详解

    什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...

  2. [Java入门笔记] 面向对象编程基础(一):类和对象

    什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...

  3. [Java入门笔记] 面向对象编程基础(三):成员变量和局部变量

    在类中,变量根据定义的位置不同,可以分为成员变量和局部变量.

  4. 【python3两小时快速入门】入门笔记01:基础

    又要我搞爬虫了,这次的源网站使用的ajax加载数据,我用java爬下来的页面内容部分全都是空,虽然java也有插件,但是使用起来感觉很麻烦,所以,python!老子来了.    1. 版本:pytho ...

  5. Java学习笔记:语言基础

    Java学习笔记:语言基础 2014-1-31   最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...

  6. 【转载】Java系列笔记(1) - Java 类加载与初始化

    Java系列笔记(1) - Java 类加载与初始化 原文地址:http://www.cnblogs.com/zhguang/p/3154584.html 目录 类加载器 动态加载 链接 初始化 示例 ...

  7. Go 语言入门(一)基础语法

    写在前面 在学习 Go 语言之前,我自己是有一定的 Java 和 C++ 基础的,这篇文章主要是基于A tour of Go编写的,主要是希望记录一下自己的学习历程,加深自己的理解 Go 语言入门(一 ...

  8. Java系列笔记(2) - Java RTTI和反射机制

    目录 前言 传统的RTTI 反射 反射的实现方式 反射的性能 反射与设计模式 前言 并不是所有的Class都能在编译时明确,因此在某些情况下需要在运行时再发现和确定类型信息(比如:基于构建编程,),这 ...

  9. 【转载】Java系列笔记(3) - Java 内存区域和GC机制

    Java系列笔记(3) - Java 内存区域和GC机制 转载:原文地址http://www.cnblogs.com/zhguang/p/3257367.html 目录 Java垃圾回收概况 Java ...

  10. 黑马程序员_java基础笔记(01)...java的环境搭建

    —————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流!——————————  JavaSE(Java Standard Edtion java标准版)技术概况 ...

随机推荐

  1. 安装mongo以及相关扩展

    背景:看到了一个nodejs的对mongo操作的课程,于是想学一下. * 1.于是打算先在自己的vps上安装一个mongodb:[ https://docs.mongodb.org/manual/tu ...

  2. nfs 动态文件挂载读写权限设置

    nfs 动态文件挂载读写权限设置 待办 ll 命令查看文件夹权限 参考设置共享文件夹https://www.linuxidc.com/Linux/2018-11/155331.htm

  3. 什么情况下用vue.use方法

    链接:https://blog.csdn.net/lxiang222/article/details/103376150 简而言之

  4. 手把手教你做一个python+matplotlib的炫酷的数据可视化动图

    1.效果图 2.注意: 上述资料是虚拟的,为了学习制作动图,构建的. 仅供学习, 不是真实数据,请别误传. 当自己需要对真实数据进行可视化时,可进行适当修改. 3.代码: #第1步:导出模块,固定 i ...

  5. Codeforces Round #618 (Div. 1)C(贪心)

    把所有数看作N块,后面的块比前面的块小的话就合并,这个过程可能会有很多次,因为后面合并后会把前面的块均摊地更小,可能会影响更前面地块,像是多米诺骨牌效应,从后向前推 #define HAVE_STRU ...

  6. java双亲委派模型

    Java类加载器(ClassLoader) 双亲委派模式要求除了顶层的启动类加载器外,其余的类加载器都应当有自己的父类加载器,请注意双亲委派模式中的父子关系并非通常所说的类继承关系,而是采用组合关系来 ...

  7. SOCV / POCV 模型 (3)

    STA无疑是数字集成电路设计实现方法学中最『漂亮』的模型之一,但是随意着工艺进步,local varition 的随机性及重要性增加,传统STA 的局限性日渐突出.大概在十五年前,SSTA成了一个研究 ...

  8. Solr 8.2.0最新RCE漏洞复现

    漏洞描述 国外安全研究员s00py公开了一个Apache Solr的Velocity模板注入漏洞.该漏洞可以攻击最新版本的Solr. 漏洞编号 无 影响范围 包括但不限于8.2.0(20191031最 ...

  9. The Preliminary Contest for ICPC Asia Xuzhou 2019 B. so easy (unordered_map+并查集)

    这题单用map过不了,太慢了,所以改用unordered_map,对于前面删除的点,把它的父亲改成,后面一位数的父亲,初始化的时候,map里是零,说明它的父亲就是它本身,最后输出答案的时候,输出每一位 ...

  10. vscode解决java无法输入(scanner)问题

    vscode解决java无法输入问题 需要先安装java环境,->windows安装java 新建Test.java 输入代码 import java.util.Scanner; public ...