java第三周学习
这一周学习的是java数组面向对象
数组中存放的数据的类型:既可以是基本数据类型也可以是引用数据类型。
数组的定义方式:
1 数据类型[] 数组名;
2 数据类型 数组名[];
数组的初始化:
1.静态初始化:
结构:
数据类型[] 数组名 = {元素1,元素2,元素3,......};
数据类型 数组名[] = {元素1,元素2,元素3,......};
2.动态初始化
数据类型[] 数组名 = new 数据类型[指定数组的元素个数];
取值:数据类型 变量名 = 数组名[元素下标]
赋值(修改): 数组名[元素下标] = 值
使用注意点:
如果是静态初始化数组,需要将f定义和初始化一起完成。
数组的遍历:
1.lenght 获取的数组的长度(元素的个数)
2.通过循环遍历数组中的元素。
示例:
For (int a =0;a<arr.lenght;a++)
{
System.out.println(arr[a])
}
For (int a : arr)
{
System.out.println(a);
}
数组的排序操作
选择排序有又可以成为直接排序: 将数组中的每一个元素依次和数组中其他的元素做比较,将符合条件的进行交换。
示例: 定义一个int数组,想将数组中的最大值移动到首位
for(int j = 0 ;j<arr.length-1;j++){
for(int i = j+1;i<=arr.length-1;i++){
if(arr[i] > arr[j]){
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
for(int a : arr){}System.out.println(a);}
冒泡排序
冒泡排序:将数组中相邻的两个数依次做比较,将大的数放在最后面
示例: 通过冒泡排序操作, 找出最大的值放在最后面
public static void main(String[] args)
{
int[] arr = {2,10,13,9,4,8,3,11};
for(int j = arr.length-1;j>0;j--){ //0-5
for(int i = 0;i<j;i++){
if(arr[i] > arr[i+1]){
int temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
for(int i = 0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
Array类
常用的方法:
- Sort(int[]a) 升序排列
- toString(int[]a) 将数组以一个字符串打印出来
- binarySearch(int[]a.int key) 用二分法查找数据
Sort(int[]a)方法示例;
Int []arr={1.3.4.56.5}
Arrays.sort.(arr);
遍历数组:fo(int i :arr){System.out.println(i);}
toString(int[]a) 方法示例;
Int []arr={1.3.4.56.5}
遍历数组:System.out.println(Arrays.toString(arr));
binarySearch(int[]a.int key)方法示例;
Int []arr={1.3.4.56.5}
Arrays.sort.()arr;
Int a=Arrys.binarySearch(arr,3) 3 是需要查找的数字
a = 返回的是找到的数字的下标
如果没有找到返回的将是一个负数
Java 多维数组
一维数组: int a []={1,2,3,4}
二维数组:int a [][]={{1,2,3,4}{1,2,3,4}}
三维数组:int a [][][]={{1,2,3,4}{1,2,3,4}{1,2,3,4}}
多维数组:int a [][][]…….= {{1,2,3,4}{1,2,3,4}{1,2,3,4},………..}
多维数组就是数组中的数组
比如:二维数组中的元素是一维数组
定义方式:
Int[一维数组][二维数组]……..数组名
初始化方式
静态:int a [][]={{},{},{}}
动态:int a [][]=new int[3][4]
多维数组的取值和赋值
分为静态初始化数组取值赋值和动态初始化取值
Java 面向对象
概念
面向对象:是以事物为中心的编程过程.
对象的组成:属性和方法
类: 通过对象的共有特点和行为所抽象出来的模子。类是没有具体的行为和属性。
对象: 就是类的一个具体实例。通过属性和方法来描述的。
1.Java 中定义类
通过关键字 class , java编程是以类为基本单元。
定以类的格式:
class 类名 {
属性(对象的特征),成员变量
行为(方法)
方法的定义格式:
返回值类型: 指的就是数据类型。 void ---> 空类型
参数列表 : 可有可无。
返回值类型 方法名 (参数列表){
}
}
2.创建对象:
Java 中创建对象都是通过new对象来完成
结构 :
new 类的名字();
需要定义一个该类型的变量来接收
类的类型 对象名 = new 类的名字();
赋值属性:
对象名.属性名字 = 值;
取值:
数据类型 变量名 = 对象名.属性名
方法的调用:
对象名.方法名();
3.类中方法的定义和使用
一.java 中通过参数分类
1.有参定义法: 小括号中的参数可以有一个或者多个,多个参数之间用”,隔开
2.无参定义法: 小括号中不要任何东西。
二.java中通过返回值类型分类
1.有返回值型: 方法体后面加return
2.无返回值型: void 空类型
今天就写到这里吧,一周学习的东西挺多的,好多东西的具体应用还没有完全理解透,以后慢慢的再练习!
java第三周学习的更多相关文章
- 20165210 Java第三周学习总结
20165210 Java第三周学习总结 教材学习内容总结 - 第四章学习总结 编程语言的几个发展阶段: 面向机器语言 面向过程语言 面向对象语言 类: 类声明: class People { ... ...
- 20145304 Java第三周学习报告
20145304 <Java程序设计>第三周学习总结 教材学习内容总结 1.定义类: 类定义时使用class关键词,建立实例要使用new关键词. 代码如下: /*定义类 书上例子 衣服的型 ...
- JAVA第三周学习总结
20175303 2018-2019-2 <Java程序设计>第三周学习总结 教材学习内容总结 •编程语言的发展分为三个阶段,分别是:面向机器,面向过程,面向对象的语言.Java属于面向对 ...
- JAVA 第三周学习总结
20175308 2018-2019-2 <Java程序设计>第三周学习总结 教材学习内容总结 本周的学习内容为整个第四章的内容,学习中感觉知识点既多又杂,故在总结时尽量选用重要的或高度概 ...
- 20165221 JAVA第三周学习心得
知识点回顾 类与对象学习总结 类:java作为面向对象型语言具有三个特性:①封装性.②继承性.③多态性.java中类是基本要素,类声明的变量叫对象.在类中定义体的函数题叫方法. 类与程序的基本结构: ...
- Java第三周学习日记
Day01 1.线程 进程:进程就是正在运行的应用程序.进程负责了内存空间的划分. 线程:一个进程中的代码是由线程去执行的,线程也就是其中一个执行路径. 多线程:一个进程中有多个线程可以同时执行任务. ...
- 201521123093 java 第三周学习总结
1.本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识组织起来.请使用纸笔或者下面的工具画出本周学习到的知识点.截图或者拍照上传. 本周学习总结: ...
- 20165220 Java第三周学习总结
1.教材学习内容总结 类与对象 类与对象的关系:要产生对象必须先定义类,类是对象的设计图,对象是类的实例 为个别对象的数据成员指定值的方式是:对象.对象成员 注意“一类一文件” 类在定义时要使用关键词 ...
- 20165326 java第三周学习笔记
纸质学习笔记 代码托管
随机推荐
- CSS3写折纸
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- Dynamics CRM 之ADFS 使用 WID 和代理的联合服务器场
为此部署拓扑 Active Directory 联合身份验证服务 (AD FS) 等同于联合服务器场与 Windows 内部数据库 (WID) 拓扑中,但它将代理服务器计算机添加到外围网络,以支持外部 ...
- [转]ASP.NET应用程序生命周期趣谈(二)
在上回书开始的时候我们提到博客园的IIS看了一眼我的请求后就直接交给ASP.NET去处理了,并且要求ASP.NET处理完之后返回HTML以供展示. 那么我们不仅要问: 1, IIS肯定是没有眼睛 ...
- Android View的绘制流程
写得太好了,本来还想自己写的,奈何肚里墨水有限,直接转吧.正所谓前人种树,后人乘凉.. View的绘制和事件处理是两个重要的主题,上一篇<图解 Android事件分发机制>已经把事件的分发 ...
- 关于用sql语句实现一串数字位数不足在左侧补0的技巧
在日常使用sql做查询插入操作时,我们通常会用到用sql查询一串编号,这串编号由数字组成.为了统一美观,我们记录编号时,统一指定位数,不足的位数我们在其左侧补0.如编号66,我们指定位数为5,则保存数 ...
- 如何做好一个Sprint Demo
我列出了一些关于如何做好一个Demo(演示)的建议.我想通过以下四个步骤可以做出一个较好的Demo. 第一步:准备Demo故事 以真实用户使用软件的方式进行Demo.关键点不在于演示软件如何工作,而是 ...
- [AlwaysOn Availability Groups]监控AG性能
监控AG性能 AG的性能的性能方面,在关键任务数据库上进行语句级维护性能是很重要的.理解AG如何传输日志到secondary副本对评估RTO和RPO,表明AG是否性能不好. 1. 数据同步步骤 为了评 ...
- Python中对时间日期的处理方法简单汇总
这篇文章主要介绍了Python实用日期时间处理方法汇总,本文讲解了获取当前datetime.获取当天date.获取明天/前N天.获取当天开始和结束时间(00:00:00 23:59:59).获取两个d ...
- java中 String StringBuffer StringBuilder的区别
* String类是不可变类,只要对String进行修改,都会导致新的对象生成. * StringBuffer和StringBuilder都是可变类,任何对字符串的改变都不会产生新的对象. 在实际使用 ...
- sys.dm_os_waiting_tasks 引发的疑问(上)
很多人在查看SQL语句等待的时候都是通过sys.dm_exec_requests查看,等待类型也是通过wait_type得出,sys.dm_os_waiting_tasks也可以看到session的等 ...