Java入门笔记 01-Java基础语法
一、数据类型和运算符: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基础语法的更多相关文章
- [Java入门笔记] 面向对象编程基础(二):方法详解
什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...
- [Java入门笔记] 面向对象编程基础(一):类和对象
什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...
- [Java入门笔记] 面向对象编程基础(三):成员变量和局部变量
在类中,变量根据定义的位置不同,可以分为成员变量和局部变量.
- 【python3两小时快速入门】入门笔记01:基础
又要我搞爬虫了,这次的源网站使用的ajax加载数据,我用java爬下来的页面内容部分全都是空,虽然java也有插件,但是使用起来感觉很麻烦,所以,python!老子来了. 1. 版本:pytho ...
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- 【转载】Java系列笔记(1) - Java 类加载与初始化
Java系列笔记(1) - Java 类加载与初始化 原文地址:http://www.cnblogs.com/zhguang/p/3154584.html 目录 类加载器 动态加载 链接 初始化 示例 ...
- Go 语言入门(一)基础语法
写在前面 在学习 Go 语言之前,我自己是有一定的 Java 和 C++ 基础的,这篇文章主要是基于A tour of Go编写的,主要是希望记录一下自己的学习历程,加深自己的理解 Go 语言入门(一 ...
- Java系列笔记(2) - Java RTTI和反射机制
目录 前言 传统的RTTI 反射 反射的实现方式 反射的性能 反射与设计模式 前言 并不是所有的Class都能在编译时明确,因此在某些情况下需要在运行时再发现和确定类型信息(比如:基于构建编程,),这 ...
- 【转载】Java系列笔记(3) - Java 内存区域和GC机制
Java系列笔记(3) - Java 内存区域和GC机制 转载:原文地址http://www.cnblogs.com/zhguang/p/3257367.html 目录 Java垃圾回收概况 Java ...
- 黑马程序员_java基础笔记(01)...java的环境搭建
—————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流!—————————— JavaSE(Java Standard Edtion java标准版)技术概况 ...
随机推荐
- 安装VMware Tools和设置屏幕
在虚拟机窗口的虚拟机-安装VMware Tools,点击安装,直到安装完成,出现以下界面 在主文件夹中新建VM文件夹,将VMware Tools中的VMwareTools-10.0.10-430167 ...
- AcWing 868. 筛质数 线性筛法
#include <iostream> #include <algorithm> using namespace std; ; int primes[N], cnt; bool ...
- AcWing 841. 字符串哈希
//快速判断两次字符串是不是相等 #include<bits/stdc++.h> using namespace std ; typedef unsigned long long ULL; ...
- MyBatis-Spring整合之方式2
提前叨叨:此方法优化了上一个方式的事务支持,同时简化了一个bean的配置 1.在方式1的基础上修改UserDaoImp文件,改用使用继承SqlSessionDaoSupport的方式.代码如下: pu ...
- js中的日期控件My97 DatePicker
使用WdatePicker插件来渲染日期类型的页面. 以下代码用到的属性有: isShowClear是否显示清空按钮 skin皮肤的样式 readOnly是否只读 maxDate:最大的选择时间 &l ...
- acm数论之旅--欧拉函数的证明
随笔 - 20 文章 - 0 评论 - 73 ACM数论之旅7---欧拉函数的证明及代码实现(我会证明都是骗人的╮( ̄▽ ̄)╭) https://blog.csdn.net/chen_ze_hua ...
- PAT 1010 Radix (二分)
Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The an ...
- Codeforces Round #618 E
题意: 给你一个n的数组,你可以进行无数次,选择区间使得区间内的值相加,然后区间的所有的值变成平均值. 使得最后数组的字典序最小 思路: 最后的数组一定是单调递增的,只要它比之前的平均值数大,就不会操 ...
- Jquery span标签的取值赋值
//赋值 $("#spanid").html(value) //取值 $("#spanid").text()
- 【MySQL】表的操作
" 目录 #. 表操作 1. 创建数据库 2. 进入指定库 3. 创建表 4. 添加记录 5. 查询表的数据和结构 /. 查指定表中的存储数据 /. 查指定表的结构 6. 复制表 /. 即复 ...