1、Java基础

Java的三种技术架构:

1、J2EE:开发企业环境下的应用程序,主要针对web程序开发。

2、J2SE:桌面应用程序的开发,是其它两者的基础。

3、J2ME:开发电子消费产品和嵌入式设备。

JDK:Java开发工具包,安装时路径不要有中文和空格。

JRE:Java的运行环境。

配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行。

新建JAVA_HOME=%安装路径%\Java\jdk

再在path中添加%JAVA_HOME%\bin,注意前面要有;号

javac:编译,当执行javac时会启动java的编译器程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节码文件,也就是class文件(java的运行程序)。

java:运行,启动jvm.加载运行时所需的类库,并对class文件进行执行。

标识符:数字、字母、下划线、$,不能以数字开始。

常量:运行过程中不会改变的量。

变量:内存中的存储空间,用于存储常量。

数据类型:

基本数据类型:byte short int long float double char boolean

引用数据类型:数组、类、接口

%:取模(取余),任何数%2不是0就是1,可用于开关运算。

i++:先使用后加减。

>>>:无符号右移。

^:异或,两边不同是真。

>>:右移,除以2

(条件表达式)?表达式1:表达式2;

1 switch(表达式) {
2     case 取值1:
3     执行语句;
4     break;
5     default:
6     执行语句;
7     break;
8 }

选择的类型四种:byte,short,int ,char。后面增加了枚举。

while和for:可以互换,要是定义变量控制循环次数用for,无限循环用while(true)。

break:结束循环,用于for switch

continue:结束本次循环,进入下一循环。

重载:同一类中,函数名相同,参数类型或者参数列表不一样,与返回值无关。

数组:从0开始,对元素进行编号

int[] arr = new int[4];

int[] arr = new int[]{1,2,3,4};

异常:数组越界、空指针异常。

直接排序:

 public static void selectSort(int[] arr) {
    for (int x = 0; x < arr.length - 1; x++) {
        // 为什么y的初始化值是 x+1?因为每一次比较,都用x角标上一个元素和下一个元素进行比较。
        for (int y = x + 1; y < arr.length; y++) {
            if (arr[x] > arr[y]) {
                int temp = arr[x];
                arr[x] = arr[y];
                arr[y] = temp;
            }
        }
    }
}

冒泡排序:

 1 public static void bubbleSort(int[] arr) {
 2
 3     for (int x = 0; x < arr.length - 1; x++) {
 4         // -x:让每次参与比较的元减,-1:避免角标越界。
 5         for (int y = 0; y < arr.length - x - 1; y++) {
 6             if (arr[y] > arr[y + 1]) {
 7                 int temp = arr[y];
 8                 arr[y] = arr[y + 1];
 9                 arr[y + 1] = temp;
10             }
11         }
12     }
13 }

二分法(折半查找)

 1  public static int halfSeach(int[] arr, int key) {
 2
 3     int min, mid, max;
 4     min = 0;
 5     max = arr.length - 1;
 6     mid = (max + min) / 2;
 7
 8     while (arr[mid] != key) {
 9         if (key > arr[mid])
10             min = mid + 1;
11         else if (key < arr[mid])
12             max = mid - 1;
13
14         if (min > max)
15             return -1;
16
17         mid = (max + min) / 2;
18     }
19     return mid;
20 }
数组翻转
1 public static void reverseArray(int[] arr) {
2     for (int start = 0, end = arr.length - 1; start < end; start++, end--) {
3         int temp = arr[start];
4         arr[start] = arr[end];
5         arr[end] = temp;
6
7     }
8 }

寄存器、本地方法区、方法区、堆、栈

堆:局部变量(函数中的的变量、函数上的参数、语句中的变量)

栈:数组和对象

时间: 2024-10-10 10:43:30

1、Java基础的相关文章

-Java基础-Java介绍

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. java的介绍 1.1java简介 Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言. 它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机.电话.闹钟.烤面包机等家用电器的控制和通讯问题.由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划.就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机

第3篇-JAVA基础

第3篇-JAVA基础 每篇一句 :目标是给梦想一个期限,行动与坚持就是实现梦想的过程 初学心得: 遇到困难或问题,它不是休止符,而是引向你如何解决问题的标识 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-03-26| JAVA基础 Ⅱ] 上篇回顾 上篇文章中我们学习了JAVA底层的运行机制与深入剖析以及解释其中JAVA基础代码的含义 本篇文章将JAVA基础Ⅱ全面剖析解释,因为JAVA基础非常重要,务必要牢记知识点!!! 1.JAVA基础语法格式 JAVA采用unicode编码 1

Java基础学习第五天——方法与数组

文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 2016.02.24 lutianfei none 第三章Java基础语法 方法 方法就是完成特定功能的代码块,即函数. 格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2-) { 函数体; return 返回值; } 详细解释: 修饰符,目前就用public static,后详解. 返回值类型:就是功能结果的数据类型. 方法名:符合命名规则即可,方便我们的调用. 参数: 实际参数:就是实际参与运算的.

2.35 Java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别

java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别 一.抽象 abstract作用:不能产生对象,充当父类,强制子类正确实现重写方法和类相比仅有的改变是不能产生对象,其他的都有,包括构造.属性等等任何一个类只要有一个抽象的方法就成了抽象类 抽象方法 public abstract A();①方法是抽象的,这个类也是抽象的:②子类必须重写抽象方法,除非子类也是抽象类 抽象类可以没有抽象方法,但一般不这么设计 二.接口 interface 接口也是Java的一种引用数据类型(J

java基础 计算今天距本月最后一天还剩多少天

Calendar  c = new GregorianCalendar();   //GregorianCalendar 是Calendar的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统. GredorianCalendar 是一种混合日历,可由调用者通过调用setGregorianChange()来更改起始日期. Calendar c = new  Calendar.getInstance(TimeZone.getTimeZone("GMT+08:OO"));  //

Java基础语法

Java的基础语法中包含字符集.标识符和关键字.变量和常量.语句.注释.运算符和表达式这些基本要素. 一.关键字 编程语言都有一些保留的单词,用于定义该语言,这些单词对于编译器有特殊含义,不能作为标识符使用: Java中的true.false.null这三个保留字,不能作为标识符使用,对于编译器有特殊含义: main是一个用于描述Java程序开始方法的特殊名称,它不是一个关键字: abstract 抽象 boolean 逻辑运算: 布尔 break 打破: 断开 byte 字节: case 例,

JAVA基础——重新认识String字符串

深入剖析Java之String字符串 在程序开发中字符串无处不在,如用户登陆时输入的用户名.密码等使用的就是字符串. 在 Java 中,字符串被作为 String 类型的对象处理. String 类位于 java.lang 包中.默认情况下,该包被自动导入所有的程序. 创建 String 对象有三种方法 String s1="我是字符串1"; String s2=new String();//创建一个空的字符串对象 String s3=new String("我是字符串2&q

第2篇-JAVA基础

第2篇-JAVA基础 每篇一句 :无论处在任何领域中,即使是在小的事情,都要让每一天有所价值 初学心得: 在学习的过程中,错误是很宝贵的,它一笔"财富",更是一种"价值" (笔者:JEEP/711)[JAVA笔记 | 时间:2017-03-24 | JAVA基础] JAVA基础 回顾 在上一篇文章中,最后提到两个问题, 相信读者们已经提前超额完成了"任务" 下面跟着笔者的思路,深入掌握JAVA底层的运行机制 JAVA运行机制 (重中之重) JAV

第4篇-JAVA基础

第4篇-JAVA基础 每篇一句 :世界上本没有完美,但是我们从未放弃追求完美 初学心得: 乐于挥霍的时间,都不能算作浪费 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-01| JAVA基础 Ⅳ] 程序运行流程 (1) 顺序结构 (2) 分支结构 (3) 循环结构 (4) break 与 continue关键字 (5) 数组 (6) 方法 1.顺序结构 如果代码里没有流程控制,程序是至上而下一行一行执行的 一条语句执行完之后继续执行下一条语句,直到程序的最后 2.分支结构 顺

JAVA基础汇总及例题详解

java语言的一个核心: jdk, java development kits---面向开发人员 jre, java Runtime Environment---服务器上 java虚拟机---(以字节码为指令的CPU)---*.class java编译器-->字节码-->类加载器进行验证-->虚拟机运行 垃圾回收机制 public class ...{ int a = 1; } c/c++垃圾回收由程序员去运行 java编程语言(一门纯面向对象)的特点: 1, 面向对象  封装  继承