知识点

数组:

  1. 一维数组   声明: 类型[] 数组名;([] 在前后没有影响,一般写在名称前。)
  2. 创建数组  数组名 =  new 类型[数组长度]。
  3. 数组索引从0开始。获取数组长度:数组名.length.
  4. 初始化方式:(1)int[] arr01={};    (2)int[]  arr02 = new int[]{1,2,3,4};
  5. 二维数组  int[][]  arr ={{1,2},{3,4}};
  6. 数组遍历
  • 普通for循环遍历(虽然有的麻烦,但是可以对数组进行修改。)
  • 增强for each 遍历(获取数组内容比较方便,但是不能对数组内容进行修改)
  • (注意数组越界异常  ArrayIndexOutOfBoundsExceptio  原因:访问不存在索引 )
  • (空指针异常 NullPointerException  原因:数组已经不在堆内存了,还用数组去访问元素)
  1. JVM 的内存划分

程序计数器

本地方法栈

方法栈:执行方法,保存局部变量

方法区:存储类的信息,静态变量,常量,编译后的代码

堆:存储对象本身,以及数组。

  1. 数组排序   冒泡排序
public  void  work02(int n){
int[] arr = new int[n];
int temp=0;
Scanner sc = new Scanner(System.in);
for (int i = 0; i < n; i++) {
System.out.println("请输入:" + n + "个数字:");
int num = sc.nextInt();
arr[i] = num;
}
for (int i = 0;i<arr.length-1;i++){
for (int j = 0;j<arr.length-1-i;j++){
if (arr[j] > arr[j+1]) {
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.println(Arrays.toString(arr));
}

选择排序

public  void  work03(int n){
int[] arr = new int[n];
int temp=0;
Scanner sc = new Scanner(System.in);
for (int i = 0; i < n; i++) {
System.out.println("请输入:" + (n -i)+ "个数字:");
int num = sc.nextInt();
arr[i] = num;
}
for (int i = 0 ;i<arr.length;i++){
for (int j=i+1;j<arr.length;j++){
if (arr[i]>arr[j]){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
} System.out.println(Arrays.toString(arr));
}

  

  1. 冒泡排序和选择排序的排序的原理

    选择排序

  • 每次从数组里面取出两个的元素作比较从下标为0的地方开始

  • 每次拿需要排序的第个元素和后面的元素依次作比较,找到最小值
  • 把小值放到第一个元素
  • 第二轮拿第二个元素和后面的元素依次作比较。直到找到最小值
  • 把小值放到第” 个元素的位置上
  1. 面向对象OOP特点:继承,封装,多态。
  2. 封装:提高代码安全性 ;把属性私有化,提供公共方法访问私有对象。
  3. 构造函数实现了对象初始化流程的封装。方法封装了操作对象的流程。封装主要是为了隐藏对象的细节,在ava中常用private封装对象数据成员,比如典型的单例模式,使用private修饰构造函数,使得在其他类无法通过new来获取类的对象,只能通过其内部共有的方法来获取类的实例对象。在static区块或方法中不能出现this关键字。static方法中不能使用非static的数据或方法成员。

学习Java的Day02的更多相关文章

  1. 零基础如何学习java更有效呢?

    零基础学java,不知道该如何入手?也不知道学习的方向,很多人会问零基础怎么样学习,有没有什么入门的书籍推荐:只要方法正确,零基础学好java也是有机会的哦. 一.理解Java思想 Java是一门面向 ...

  2. 积极主动敲代码,使用Junit学习Java程序设计

    积极主动敲代码,使用JUnit学习Java 早起看到周筠老师在知乎的回答软件专业成绩很好但是实际能力很差怎么办?,很有感触. 从读大学算起,我敲过不下100本程序设计图书的代码,我的学习经验带来我的程 ...

  3. 如何接触学习java

    信息科技必将是未来的潮流,Java语言必将在时代的进步中发挥不可估量的作用,未来,掌握好一门实用而且有良好应用前景的技术是你们的首要任务. 零基础怎么学Java 多年Java教育培训经验事实表明,零基 ...

  4. 零基础如何系统学习Java Web

    零基础如何系统学习Java Web?   我来给你说一说 你要下决心,我要转行做开发,这样你才能学成. 你要会打字,我公司原来有一个程序员,打字都是两个手一指禅,身为程序员你一指禅怎么写出的代码,半个 ...

  5. (转)如何学习Java技术?谈Java学习之路

    51CTO编者注:这篇文章已经是有数年“网龄”的老文,不过在今天看来仍然经典.如何学习Java?本篇文章可以说也是面对编程初学者的一篇指导文章,其中对于如何学习Java的步骤的介绍,很多也适用于开发领 ...

  6. 《疯狂Java讲义》(一) ---- 关于学习Java的反思

    "听到Spring很火,就立马买来一本Spring的书来读,最后结果往往是失败,因为这种学习没有积累,没有根基,学习过程中困难重重,每天都被一些相同.类似的问题所困扰,起初热情十足,经常上论 ...

  7. 十天来学习java的心得体会

    有关学习java是几天来的心得体会: 十天学习java遇到很多问题,每个问题都是经过反复的看书本以及上网查找资料来解决的,发现这一点真的需要自己来而不是去遇到什么问题就去依靠他人(师兄.同学).在其中 ...

  8. 【转】学习JAVA的步骤

      好东西大家分享: JAVA学习的一些重点 . Java语言基础 谈到Java语言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的 ...

  9. 应用JConsole学习Java GC

    应用JConsole学习Java GC 关于Java GC的知识,好多地方都讲了很多,今天我用JConsole来学习一下Java GC的原理. GC原理 在我的上一篇中介绍了Java运行时数据区,在了 ...

随机推荐

  1. 判断IP地址的合法性

    每台计算机都有独一无二的编号,称为ip地址,每个合法的ip地址由‘.’分隔开的4个数字组成,每个数字的取值范围为0--255 输入一个字符串,判断其是否为合法的IP地址,若是输出‘YES’,否则输出‘ ...

  2. Linux 文件系统常用命令

    文件系统查看命令df df:查看分区,单位默认是KB df -h 统计目录或文件大小du du /etc/:会列出/etc/目录下的所有子目录所占的空间,最后给出/etc/目录的大小,属于高负载命令, ...

  3. 关于linux免密登录及ssh客户端的使用

    操作系统环境: CentOS Linux release 7.7.1908 (Core) 1.首先在linux服务器上,使用ssh-keygen命令生成密钥对文件(一直回车即可,默认使用rsa算法), ...

  4. (十一)DVWA全等级SQL Injection(Blind)盲注--手工测试过程解析

    一.DVWA-SQL Injection(Blind)测试分析 SQL盲注 VS 普通SQL注入: 普通SQL注入 SQL盲注 1.执行SQL注入攻击时,服务器会响应来自数据库服务器的错误信息,信息提 ...

  5. 【图机器学习】cs224w Lecture 16 - 图神经网络的局限性

    目录 Capturing Graph Structure Graph Isomorphism Network Vulnerability to Noise 转自本人:https://blog.csdn ...

  6. ODEINT 求解常微分方程(4)

    import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt # function tha ...

  7. Python使用wxpy模块实现微信两两群组消息同步

    python使用wxpy模块提供的微信API接口实现两两群组的消息同步 安装模块: pip install wxpy 注意:需要同步的微信群需要保存到通讯录中 以下是自己闲来无事写的代码,暂时还存在以 ...

  8. Android使用OkHttp实现登录注册功能

    客户端 在客户端,这里将登录和注册放在了同一个界面,在账号和密码两个EditText中输入内容后,按下LOGIN按钮,进行登录:按下REGISTER按钮,进行注册. 在写代码之前,先添加OkHttp的 ...

  9. 恕我直言你可能真的不会java第1篇:lambda表达式会用了么?

    本文配套教学视频:B站观看地址 在本号之前写过的一些文章中,笔者使用了lambda表达式语法,一些读者反映说代码看不懂.本以为java 13都已经出了,java 8中最重要特性lambda表达式大家应 ...

  10. mysql忘记root密码后,重新设置、修改root密码

    大致步骤如下(这个步骤针对5.7版本,8.0之后版本修改方式有所改变,版本为8.0之后的可自行搜索相关修改方法) 1. 关闭正在运行的mysql服务,确保mysql服务要先关闭2. 打开dos窗口,转 ...