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标准版)技术概况 ...
随机推荐
- hz和s和脉冲
先弄清楚定义,HZ是频率的单位,而s是周期的单位:而f=1/T. 故1hz=1s:5hz=1/5=0.02s; 占空比 占空比(Duty Ratio)在电信领域中有如下含义: 在一串理想的 ...
- python中的循环结构等相关知识
==分支结构== 1.单分支:一般用于只会发生一种情况的场景,if #90以上优秀 score=95 if score>90: print("优秀") 2.双分支:一般用于会 ...
- 寒假安卓app开发学习记录(2)
今天属实是头疼的一天.开始的时候是简单了解了一下安卓的系统架构,了解到大概分为四个部分. 然后看了两节创建安卓项目的课程,准备去实践一下的时候突然发现我的eclipse里竟然没有Android选项.查 ...
- 502,csssprite是什么,有什么优缺点
(百科:csssprite是一种网页图片应用处理方式,国内常叫css精灵.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢 ...
- Springboot的多环境配置
通常应用都会被安装到几个不同的环境(比如开发.测试.生产等),每个环境都会有一些参数是不一样的. Spring Boot对此也提供了支持,配置文件的名称只要满足application-{profile ...
- PHP array_chunk() 妙用
定义和用法 array_chunk()函数把一个数组分割为新的数组块. array_chunk(array,size,preserve_keys); 参数 描述 array 必需.规定要使用的数组. ...
- 公告 & 留言板 & 随想录
欢迎dalao在评论区留言 \(Q \omega Q\) 公告部分: 博客文章的更新一般被放在周末 当然还是可能会咕 自从改了博客的主题之后,文章中的引用好像都会显示出一堆乱码. 由于之前写过的博文不 ...
- python 中对list去重
本文去重的前提是要保证顺序不变,本文给出了多种实现方法,需要的朋友可以参考下 1.直观方法 最简单的思路就是: ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] ...
- 五分钟学Java:打印Java数组最优雅的方式是什么?
在逛 Stack Overflow 的时候,发现了一些访问量像安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...
- 循环select和取赋值
bootstrap: <!--列表容器--> <div class="panel-body" style="position:relative;&quo ...