Java应用基础微专业-入门篇
第1章--用程序来做计算
1.1 第一个Java程序
Mac version: Preference -> General -> Keys -> Search "Content Assist" for binding to the short-key you want.
1.2 用变量做计算
1.3 表达式(浮点数,优先级和类型转换)
rounding happens to floating number: (e.g. shown below)
System.out.println(1.2-1.1);
output: 0.09999999999999987
第2章--判断
2.1 作比较
comparison between int and double:
int a = 5;
double b = 5.0;
System.out.println(a==b);
output: true
comparison between double and double:
int a = 5;
double b = 5.0;
System.out.println(a==b);
output: true int a = 1.0;
double b = 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1;
System.out.println(b == c);
System.out.println(b+"; "+c);
output: false
output: 1.0; 0.9999999999999999
solution: Math.abs(a-b) < 1e-6;
2.2 判断语句
2.3 多路分支
第3章--循环
3.1 循环(while和do-while循环)
do-while syntax: (cannot image that I even do not remember this)
do {
// body
} while (condition);
3.2 for循环
3.3 循环控制(含复合赋值、逻辑类型)
using break with a label:similar to "goto" in c language
blahblahblah;
LABEL:
for(int i = 0; i < 10; i++) {
blahblahblah
if (...) {
break LABEL; // break the loop labelled "LABEL"
}
}
3.4 循环应用
tricks for integer processing:
得到个位数:%10
去掉最低位:/10
Formatted Print:
System.out.printf("%.2f", x);
第4章--数组
4.1 数组的创建和使用
syntax of defining and creating an array: // fine, haven't write Java for rly a long time
type[] name = new type[size]; // size could be a variable, but it must be provided
e.g: int[] i = new int[array_size];
with initialisation:
type[] name = new type[size];
e.g: int[] i = {1,2,3};
4.2 数组变量和运算
int[] a = new int[size];
initialise array a
int[] b = a; // b just points to the block data which a points to (same block of data)
a == b ? true
but what if a and b points to different blocks of memory?
int[] a = {1,2};
int[] b = {1,2};
a == b ? false
if we wanna compare the content of two arrays: solution--traversing and comparing each pair of element
if we wanna copy an array: solution--traversing and copying each element one by one
syntax for "for-each" loop to traverse an array:
for (type element: array) {}
4.3 二维数组
syntax for creating, initialising, and modifying a two-dimensional array:
int[][] a = new int[size][size];
int[][] a = { {1,2,3,4}, {1,2} };
a[1][2] = 5;
第5章--函数
5.1 函数的定义和调用
函数有多个出口(多个return statements)--> bad design
5.2 函数的参数与本地变量
Java在调用函数时,永远只能传值给函数(?)
life-cycle of a local variable: inside the block
e.g.
{
int i;
}
i = 0; // ERROR
(END)
Java应用基础微专业-入门篇的更多相关文章
- Java应用基础微专业-工程篇
第1章-命令行 1.1 命令行基础 ls -a: list all files (including hidden files) .DS_Store: files detailed informati ...
- Java应用基础微专业-设计篇
第1章--抽象与接口 1.1 抽象 An abstract class can be created without abstract methods, the purpose of doing th ...
- Java应用基础微专业-进阶篇
第1章--使用对象 1.1 字符类型 char c = 65; // char --> int char c = '\u0041'; // \u: unicode + (Hex 41--> ...
- 总结删除文件或文件夹的7种方法-JAVA IO基础总结第4篇
本文是Java IO总结系列篇的第4篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...
- 总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇
本文是Java IO总结系列篇的第5篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...
- Java中的IO流 - 入门篇
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的IO流-入门篇>,希望对大家有帮助,谢谢 由于Java的IO类有很多,这就导致我刚开始学的时候,感觉很乱,每次用到都是上网搜,结果 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- Java中的集合List - 入门篇
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的集合List - 入门篇>,希望对大家有帮助,谢谢 简介 说实话,Java中的集合有很多种,但是这里作为入门级别,先简单介绍第一种 ...
- Java中的映射Map - 入门篇
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的映射Map - 入门篇>,希望对大家有帮助,谢谢 简介 前面介绍了集合List,这里开始简单介绍下映射Map,相关类如下图所示 正 ...
随机推荐
- mac无法使用80端口问题
前言:在mac os中,非root用户是无法使用小于1024的常用端口的.如果开发中需要用到80端口, 就要设置端口转发. hosts文件介绍(1)hosts文件是将域名和IP地址建立映射关系的系统文 ...
- POJ 1651 Multiplication Puzzle(类似矩阵连乘 区间dp)
传送门:http://poj.org/problem?id=1651 Multiplication Puzzle Time Limit: 1000MS Memory Limit: 65536K T ...
- POJ 1328 Radar Installation(很新颖的贪心,区间贪心)
Radar Installation Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 106491 Accepted: 2 ...
- flume data to hdfs
flume 开发梳理 flume 数据到hadoop conf/hdfsAgent.conf #配置sources.channels.sinks a1.sources=r1 a1.channels=c ...
- Gradle Goodness: Working with Live Task Collection
Gradle support the definition of so called live collections. These collections are mostly created ba ...
- Reading Notes : 180214 计算机的总线结构
读书<计算机组成原理>,百度百科 基本上接触过计算机的人,都多少知道计算机的具体构成,但是真正能讲明白的却说了很多,本节将讲解一下计算机的基本硬件构成和一些基本信息,简单认识,以后再深入了 ...
- iOS之estimatedHeightForRowAtIndexPath避免程序EXC_BAD_ACCESS
在你的项目中把estimatedHeightForRowAtIndexPath方法写实现以下,返回一个估计高度(随便估,笔者建议还是按照正常思路来写,大概高度是多少就返回多少),这样就不会报EXC_B ...
- LeetCode 中级 - 重新排序得到的幂(105)
从正整数 N 开始,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零. 如果我们可以通过上述方式得到 2 的幂,返回 true:否则,返回 false. 示例 1: 输入:1 输出 ...
- java servlet数据库查询并将数据显示到jsp页面
需要的jar包:mysql-connector-java.jar build path只是个jar包的引用,部署的时候想不丢包最好还是手动拷贝到对应项目的lib文件下. 在try{}中定义的变量为局部 ...
- 竞赛题解 - [CF 1080D]Olya and magical square
Olya and magical square - 竞赛题解 借鉴了一下神犇tly的博客QwQ(还是打一下广告) 终于弄懂了 Codeforces 传送门 『题目』(直接上翻译了) 给一个边长为 \( ...