Java语言基础(六)
来源:互联网 发布:windows 7 原版下载 编辑:程序博客网 时间:2024/06/05 20:32
Java语言基础六
A.二维数组
由二维数组实现螺旋矩阵
import java.util.Scanner;
public class Matrix{
public static void main(String[] args){
//定义矩阵输入的初值
int cnt=1;
int i=0;
int j=0;
//输入矩阵的列和行
Scanner scan=new Scanner(System.in);
//定义存储单元接收输入的值
System.out.println("请输入矩阵的行列");
int a=scan.nextInt();
//定义一个二维数组
int[][] arr=new int[a][a];
int c=a-1;
int loop=a/2;
int p=0;
//建立一个while循环实现数组的存储
while(loop>0){
for(;j<c-p;j++)
arr[i][j]=cnt++;
for(;i<c-p;i++)
arr[i][j]=cnt++;
for(;j>p ;j--)
arr[i][j]=cnt++;
for(;i>p;i--)
arr[i][j]=cnt++;
i++;
j++;
p++;
loop--;
}
//判断矩阵是否为奇矩阵是则给矩阵中心点赋值
if(a%2==1){
arr[a/2][a/2]=a*a;
}
//输出矩阵
for(i=0;i<a;i++){
for(j=0;j<a;j++){
System.out.print(arr[i][j]+"\t");
}
System.out.println();
}
}
}
输出结果:当矩阵为偶矩阵时;
*******************************************************
请输入矩阵的行列6
1 2 3 4 5 6
20 21 22 23 24 7
19 32 33 34 25 8
18 31 36 35 26 9
17 30 29 28 27 10
16 15 14 13 12 11
********************************************************
当矩阵为奇矩阵时:
请输入矩阵的行列7
1 2 3 4 5 6 7
24 25 26 27 28 29 8
23 40 41 42 43 30 9
22 39 48 49 44 31 10
21 38 47 46 45 32 11
20 37 36 35 34 33 12
19 18 17 16 15 14 13
************************************************************
java的面向对象
A.面向对象是基于面向过程的编程思想
B.面向对象思想特点
是一种更符合我们思想习惯的思想
可以将复杂的事情简单化
将我们从执行者变成了指挥者
角色发生了转换
C.面向对象的开发:就是不断地创建对象,使用对象指挥对象做事;
举例:面向对象和面向过程;
比如洗衣服
面向过程:将脏衣服放进盆里->倒洗衣粉->放水->揉搓->漂洗->晾衣服->过程完毕
面向对象:将脏衣服给老婆->完毕
D.面向对象的特征:
封装
继承
多态
E.java语言最基本的单位:类
类:一组相关属性和行为的集合
对象:该类的具体实现
举例:
类:学生
对象:班长
类:老师
对象:班主任
类:人
对象:高圆圆
类:java中用class描述类;
成员变量:就是事物的属性;
成员方法:就是事物的行为;
F.如何创建对象:
类名 对象名=new 类名();
类的成员变量和成员方法的调用:
对象名.成员变量;
对象名.成员方法;
G.成员变量和局部变量的区别:
1)位置不同:
成员变量:在类中方法外
局部变量:在方法中
2)在内存中位置不同
成员变量:堆内存中;
局部变量:堆内存中;
3)生命周期不同:
成员变量:随着对象的存在而存在,随着对象的消失而消失;
局部变量:随着方法的调用而存在,随着方法的消失而消失;
4)初始化值不同:
成员变量:有系统默认的初始化值;
局部变量:没有默认的初始化值必须先定义,赋值然后再使用;
- Java语言基础(六)
- Java语言基础(六)-数组
- Java语言基础学习笔记(六)
- Java语言基础简介(六)
- Java语言基础(六)之 —— 顺序结构
- Java语言基础(六)之 —— 循环嵌套
- Java语言基础(六)之 —— 跳转语句
- c语言基础(六)
- Java基础 笔记(六)
- java基础(六),异常
- Java基础(六) 集合
- java基础(六)------接口
- Java基础学习(六)
- Java基础(六)异常
- java基础(六):数组
- c语言基础(六)之类型
- C语言基础(六)数组
- C语言基础(六)
- 如何使用git 生成patch
- ubuntu16.04搭建VPN服务器
- 在O(1)时间删除链表结点
- javascript的dom操作—增删改查
- POJ 2253 Frogger (求每条路径中最大值的最小值,Dijkstra变形)
- Java语言基础(六)
- ajax——登录系统 用户名是否存在校验
- tensorflow自定义op:work_shard
- Unity自定义UI组件(九) 颜色拾取器(下)
- css边距属性
- jzoj. 1301. treecut
- NumPy使用
- WEB标准要求
- 十四、数据机构---堆排序