第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应用基础微专业-入门篇的更多相关文章

  1. Java应用基础微专业-工程篇

    第1章-命令行 1.1 命令行基础 ls -a: list all files (including hidden files) .DS_Store: files detailed informati ...

  2. Java应用基础微专业-设计篇

    第1章--抽象与接口 1.1 抽象 An abstract class can be created without abstract methods, the purpose of doing th ...

  3. Java应用基础微专业-进阶篇

    第1章--使用对象 1.1 字符类型 char c = 65; // char --> int char c = '\u0041'; // \u: unicode + (Hex 41--> ...

  4. 总结删除文件或文件夹的7种方法-JAVA IO基础总结第4篇

    本文是Java IO总结系列篇的第4篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...

  5. 总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇

    本文是Java IO总结系列篇的第5篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...

  6. Java中的IO流 - 入门篇

    前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的IO流-入门篇>,希望对大家有帮助,谢谢 由于Java的IO类有很多,这就导致我刚开始学的时候,感觉很乱,每次用到都是上网搜,结果 ...

  7. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  8. Java中的集合List - 入门篇

    前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的集合List - 入门篇>,希望对大家有帮助,谢谢 简介 说实话,Java中的集合有很多种,但是这里作为入门级别,先简单介绍第一种 ...

  9. Java中的映射Map - 入门篇

    前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的映射Map - 入门篇>,希望对大家有帮助,谢谢 简介 前面介绍了集合List,这里开始简单介绍下映射Map,相关类如下图所示 正 ...

随机推荐

  1. 新建oracle实例

    1.安装好ORACLE服务端.2.在开始菜单中,点击ORAHOME目录下的"Configuration and Migration Tools"下的"Database C ...

  2. 【洛谷P1373】小a和uim之大逃离

    小a和uim之大逃离 题目链接 因为每次只能向下或向右走,我们可以递推 dp[i][j][d][0/1]表示走到(i,j),mod k 意义下差值为d,轮到小a/小uim操作时的方案数 dp[i][j ...

  3. CSS3-阴影参数基础

    box-shadow 语法:text-shadow: x-shadow y-shadow distance color; 值  描述  x-shadow  必需.水平阴影的位置.允许负值. y-sha ...

  4. javaSpring知识点总结

    1 js 概述 js是一门基于对象和事件驱动的脚本语言,主要应用在客户端 js特点: 交互性(信息的动态交互) 安全性(不允许直接访问本地硬盘) 跨平台(只要是可以解释js的浏览器都可以执行,和平台无 ...

  5. Knowledge Point 20180305 详解精度问题

    1.1 精度与基本数据类型运算的深度解析 我们在探讨Java基本数据类型时多次提到过精度的问题,那么计算机中的精度究竟是什么样的,为什么我们有时候的计算和我们预期的不同呢?下面我们通过精度来了解: 1 ...

  6. 获取DOM

    <template> <div> <header-vue :msg="msg" ref="header">heheh< ...

  7. restframework中的那些参数你知道吗?

    序列化是很重要的过程, 在构建数据结构的时候, 往往会出现很多意想不到的问题, 有一些参数你要用, 但是没有办法穿过来, 怎么办> 今天这篇博客就是写我之前的一个小项目中用restframewo ...

  8. TypeScript 运算符

    应用场景(待完善) 位运算符 运算符 描述 例子 类似于 结果 十进制 & AND,按位与处理两个长度相同的二进制数,两个相应的二进位都为 1,该位的结果值才为 1,否则为 0. x = 5 ...

  9. mongodb rebo 3T 执行出错 failed to execute script 但是执行成功 171条

    我现在也不清楚到底是什么原因 解决方法: 把你要执行的脚本保存到文件 在最上面添加下面两行代码:根据你的数据库 信息填写 conn = new Mongo('host:port'); db = con ...

  10. Hive的安装与部署(MySQL作为元数据库)

    Hive的安装与部署(MySQL作为元数据) (开始之前确保Hadoop环境已经启动,确保Linux下的MySQL已经安装好) 1.     安装Hive (1)下载安装包 可从apache上下载hi ...