笔记相关信息
/**
* @subject 《学习与创业》作业1
* @author 信管1142班 201411671210 赖俊杰
* @className 《JAVA入门第一季》
W* @website http://www.imooc.com/view/85
*/
第0章:个人收获与体会
经验总结:
- 多练
- 多问
- 自己动手调试错误
- 复习和总结(笔记和犯过的错误)
- 学虽容易,学好不易,且学且珍惜
学习这门课程后:
- 对于有了C++基础的人来说,学习这门课程绝对会有很好的感受。
- 此门课程不是单纯的播放视屏,而是主要以文档的形式传授知识,让我体会了一次以文档形式去学习一门语言。这有利于帮助我养成看文档去学习一门语言的语法的习惯。
- 学习了JAVA中基本语法的使用。
第一章
package time;
import java.util.Scanner;
/**
* @author laijunjie
*/
public class Time {
/**
* @param args
* 将华氏温度转换成摄氏温度
*/
public static void main(String[] args) {
Scanner cin_fahrenheit = new Scanner(System.in);
int fahrenheit = cin_fahrenheit.nextInt();
int celsius = (int) ((fahrenheit-32)/(9/5.0));
System.out.println(celsius);
}
}
第二章。变量常量
Java 关键字是区分大小写。
优秀攻城狮的习惯:
- 名由多单词组成时,第一个单词的首字母小写,其后单词的首字母大写,俗称骆驼式命名法(也称驼峰命名法),如 myAge
- 变量命名时,尽量简短且能清楚的表达变量的作用,做到见名知意。如:定义变量名 stuName 保存“学生姓名”信息
Java 中有两类数据类型:
在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。说白了,基本数据类型变量里存储的是直接放在抽屉里的东西,而引用数据类型变量里存储的是这个抽屉的钥匙,钥匙和抽屉一一对应。
Java 中 float 与 double 的区别:
- float是单精度浮点数,内存分配4个字节,占32位,有效小数位6-7位
- double是双精度浮点数,内存分配8个字节,占64位,有效小数位15位
- java中默认声明的小数是double类型的,如double d=4.0 ,如果声明: float x = 4.0则会报错,需,需要如下写法:float x = 4.0f或者float x = (float)4.0。其中4.0f后面的f只是为了区别double,并不代表任何数字上的意义 。
- 对编程人员来而,double 和 float的区别是double精度高,但double消耗内存是float的两倍,且double的运算速度较float稍慢。
Java 中 char 和 String 的区别
1.char表示字符,定义时用单引号,只能存储一个字符,如char c=’x’;
而String表示字符串,定义时用双引号,可以存储一个或多个字符,如String name=”tom”;
2.char是基本数据类型,而String 是一个类,具有面向对象的特征,可以调用方法,如name.length()获取字符串的长度。
第三章。运算符
Java 语言中常用的运算符可分为如下几种:
Ø 算术运算符
Ø 赋值运算符
Ø 比较运算符
Ø 逻辑运算符
Ø 条件运算符
比较运算符
注意哦:
- > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型
- == 、 != 两边的操作数既可以是数值类型,也可以是引用类型
- ==是比较是否是同一个值,equal()是比较是否是同一个内容。
第四章。流程控制
小技巧:
/**
*
*/
package time;
import java.util.Scanner;
/**
* @author 赖俊杰
*/
public class Time {
/**
* @param args
* 说明equal()用于判断字符串内容是否相同。
*/
public static void main(String[] args) {
System.out.println("please input your name :");
Scanner cin_name = new Scanner(System.in);
String name = cin_name.next();
System.out.println((name.equals("laijunjie"))?
("You is a good man^_^"):("You is a bad man.*_*||"));
}
}
switch语句
/**
*
*/
package time;
import java.util.Scanner;
/**
* @author 赖俊杰
*/
public class Time {
/**
* @param args
* 初学容易忽略的一种switch的使用方法。
*/
public static void main(String[] args) {
char today='日';
switch(today){
case '日':
System.out.println("不想老丁的课");
break;
case '一':
case '三':
case '五':
System.out.println("不用上老丁的课");
break;
default:
System.out.println("睡觉多好");
}
}
}
第六章.数组
数组:
数组名.length 用于获取数组的长度
Arrays类
Arrays 类是 Java API 中提供的类,在 java.util 包中, Arrays类中提供的方法可直接实现数组的排序、搜索等。常用方法如下:
1、toString
转换数组:将指定数组内容转换为字符串形式
2、fill
给数组赋值:通过fill方法。
3、sort
对数组排序:通过sort方法,默认按升序。
4、equals
比较数组:通过equals方法比较数组中元素值是否相等。
5、binarySearch
二分查找:使用二分搜索法来搜索指定数组的范围
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
int[] array = new int[5];
// 填充数组
/* Arrays.fill( a1, value );
作用:填充 a1 数组中的每个元素都是value
*/
Arrays.fill(array, 5);
System.out.println("填充数组:Arrays.fill(array, 5):");
System.out.println(Arrays.toString(array));
// 将数组的第3和第4个元素赋值为8
/* Arrays.fill( a1, fromIndex, toIndex,value);
作用:填充 a1 数组中的从索引为 fromIndex 开始到索引为 toIndex-1 为止每个元素都是 value
*/
Arrays.fill(array, 2, 4, 8);
System.out.println("将数组的第2和第3个元素赋值为8:Arrays.fill(array, 2, 4, 8):");
System.out.println(Arrays.toString(array));
int[] array1 = { 7, 8, 3, 2, 12, 6, 3, 5, 4 };
// 对数组的第3个到第7个进行排序
/* Arrays.sort( a1, fromIndex, toIndex);
作用:对 a1 数组中的从索引为 fromIndex 开始到索引为 toIndex-1 为止每个元素排序
*/
Arrays.sort(array1, 2, 7);
System.out.println("对数组的第2个到第6个元素进行排序:Arrays.sort(array,2,7):");
System.out.println(Arrays.toString(array1));
// 对整个数组进行排序
Arrays.sort(array1);
System.out.println("对整个数组进行排序:Arrays.sort(array1):");
System.out.println(Arrays.toString(array1));
// 比较数组元素是否相等
System.out.println("比较数组元素是否相等:Arrays.equals(array, array1):" + "\n"
+ Arrays.equals(array, array1));
int[] array2 = array1.clone();
System.out.println("克隆后数组元素是否相等:Arrays.equals(array1, array2):" + "\n"
+ Arrays.equals(array1, array2));
// 使用二分搜索算法查找指定元素所在的下标(必须是排序好的,否则结果不正确)
Arrays.sort(array1);
System.out.println("元素3在array1中的位置:Arrays.binarySearch(array1, 3):"
+ "\n" + Arrays.binarySearch(array1, 3));
// 如果不存在就返回负数
System.out.println("元素9在array1中的位置:Arrays.binarySearch(array1, 9):"
+ "\n" + Arrays.binarySearch(array1, 9));
}
}
for each操作
/**
*
*/
package time;
import java.util.Arrays;
/**
* @author 赖俊杰
*/
public class Time {
/**
* @param args
* 与C++类似的for each()
*/
public static void main(String[] args) {
// 定义一个整型数组,保存成绩信息
char[] word = { 'l', 'o', 'v', 'e', 'U' };
// 对Arrays类对数组进行排序
Arrays.sort(word);
// 使用foreach遍历输出数组中的元素
for ( char score:word ) {
System.out.print(score);
}
}
}
二维数组:
Tip:
JAVA的数组和C++的数组有个很大的不同:java中表述数组大小的可以是变量。
int number;
Scanner in = new Scanner(System.in);
int num = in.nextInt();
int array[num];
第七章.方法
方法的定义:
Tip:
- 方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式。
- 当需要调用方法执行某个操作时,可以先创建类的对象,然后通过 对象名.方法名(); 来实现
一个JAVA文件的结构层次
学习过C++,所以学JAVA的时候感觉JAVA的层次很乱,分不清关系,所以做了如下笔记。
//此JAVA文件所在包名
package time;
//导入所需要的类,导入java包中的until包中的Arrays文件。
import java.util.Arrays;
/**
* @author 赖俊杰
*/
//这里开始是定义的类
public class Time {
/**
* @param args
*/
//这个函数在类中,相当于C++中的主函数
public static void main(String[] args) {
;;;;;;;
}
//另一个函数
publice void idea(){
;;;;;
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
JAVA入门第一季(mooc-笔记)的更多相关文章
-
Java入门第一季——从此投身Java??
找工作告一段落. 最后的工作呢,和java紧密相关,也是阴差阳错,不过都是软件开发,都好了,不过以后侧重点肯定是在java这边,php有机会还是一直学下去的,那么美的说~ Java开发第一季 一.简 ...
-
Java入门第一季
慕课网:http://www.imooc.com/learn/85 Java入门知识第一季 1.Java开发环境和IDE的使用: 2.变量和常量 3.常用的运算符 4.流程控制语句 5.数组:使用Ar ...
-
《java入门第一季》之Arrays类前传(排序案例以二分查找注意的问题)
根据排序算法,可以解决一些小案例.举例如下: /* * 把字符串中的字符进行排序. * 举例:"dacgebf" * 结果:"abcdefg" * * 分析: ...
-
《java入门第一季》之面向对象(谈谈接口)
软件中有接口,这里的接口与硬件中的接口还是有很大区别的. 这里介绍接口不考虑JDK8的新特性(JDK8开始接口里面可以有非抽象方法了,介绍JDK8新特性可能要到整个第一季写完吧!) 还是直接进入接口的 ...
-
慕课笔记-Java入门第一季
[初步复习Java编程基础,记录知识盲点和遗漏点] 1.switch语法 switch(表达式){ case 值1: 执行代码块1; break; case 值2: 执行代码块12; break; c ...
-
Java入门第一季学习总结
一.课程总概 这门课程的学习难度属于入门级别,又由于有c++的基础,所以学习这门课程也是比较轻松的.可以简单地把这门课的学习分为四部分:第一部分,java的介绍(第一章):第二部分,java的数据类型 ...
-
Java入门 第一季第二章 变量和常量
这是我学习慕课网Java课程的笔记.原视频链接为:http://www.imooc.com/learn/85 2-1 Java中的keyword PS:Javakeyword区分大写和小写 2-2 认 ...
-
慕课网-Java入门第一季-7-4 编程练习
来源:http://www.imooc.com/code/1634 小伙伴们,请根据所学知识,参考注释,在代码编辑器中将代码补充完整.编写一个 Java 程序,实现输出学生年龄的最大值 要求: 1. ...
-
java入门 第一季4
1.数组 1).声明数组 数据类型[]数组名; 数据类型 数组名[]; 2).分配空间 数组名=new 数据类型[数组长度]: 3).赋值 score[0]=98: 直接创建一个长度为4的数组 int ...
随机推荐
-
Cobbler自动化批量安装linux服务器的操作记录
Cobbler为何物?Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命 ...
-
ACM1877_又一版A+B
.这道题与2031极为相似. #include<iostream> using namespace std; void fun(int n,int r) { ]="0123456 ...
-
Ocelot中文文档-Configuration
配置 一个关于Ocelot配置例子在这里.配置有两个部分.一个数组类型的ReRoutes和一个全局配置.ReRoutes是个对象,告诉Ocelot怎么去处理一个上游请求.全局配置有点繁琐(is a h ...
-
jqgrid 配置分页大小及下拉项
如何配置分页大小的下拉项?显示效果如下: 通过 rowNum 来设置默认分页大小 通过 rowList 来设置分页下拉. rowList 的值为一个数组,比如:[10,20,30] $(" ...
-
2018.07.17 洛谷P1368 工艺(最小表示法)
传送门 好的一道最小表示法的裸板,感觉跑起来贼快(写博客时评测速度洛谷第二),这里简单讲讲最小表示法的实现. 首先我们将数组复制一遍接到原数组队尾,然后维护左右指针分别表示两个即将进行比较的字符串的头 ...
-
Netty源码分析第5章(ByteBuf)---->;第4节: PooledByteBufAllocator简述
Netty源码分析第五章: ByteBuf 第四节: PooledByteBufAllocator简述 上一小节简单介绍了ByteBufAllocator以及其子类UnPooledByteBufAll ...
-
CVE-2017-7494:Linux Samba named pipe漏洞
描述: 漏洞是由于代码中一个管道申请命令的判断导致的,可以通过构造特定请求执行上传的so文件. 漏洞影响了Samba 3.5.0 之后到4.6.4/4.5.10/4.4.14中间的所有版本. 测试: ...
-
第145天:jQuery.touchSlider触屏满屏左右滚动幻灯片
1.HTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...
-
MAC搭建 PHP 环境
安装homebrew homebrew是mac下非常好用的包管理器,会自动安装相关的依赖包,将你从繁琐的软件依赖安装中解放出来. 安装homebrew也非常简单,只要在终端中输入11: 1 ruby ...
-
纯CSS实现的风车转动效果特效演示
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...