1.1 基础编程模型

基础编程模型

基础编程模型:描述算法和实现算法所用到的语言特性、软件库和操作系统特性总称为基础编程模型。

1.1.1 Java程序的基本结构

一段Java程序(类)或是一个静态方法库,或者定义了一个数据类型

Java语言的基础 包含
原始数据类型 整数、浮点数和布尔值
语句 声明、赋值、条件、循环、调用、返回
数组 多个数据类型的值的集合
静态方法 封装并重用代码
字符串 字符集合
标准输入输出
数据抽象 可以定义非原始数据类型

1.1.2 原始数据类型与表达方式

java内置数据类型 英文 表示含义
整型 int 整数
双精度实数类型 double 小数
布尔值 boolean {true,false}
字符型 char 英文字母、数字字符和符号

还包括了:long、short、char、byte、float。

标识符:由字母、数字、下划线和$组成的字符串(首字母不能是数字)。
变量:[任意标识符]。
运算符:表示某种数据类型的运算。
字面量:值在源码中的表示。
表达式:字面量、变量或是能够计算出结果的一串字面量,变量和运算符的组合。

1.1.3 语句

1.1.3.1 声明语句

将一个变量与一个类型在编译时关联起来。

1.1.3.2 赋值语句

将(由一个表达式定义的)某个数据类型的值和一个变量关联。

1.1.3.3 条件语句

if(<boolean expression>) {
    
    <block statements>}
if(<boolean expression>) {
    
    <block statements>}
else                     {
    
    <block statements>}

1.1.3.4 循环语句

<initialize>
while(<boolean expression>) 
{
    
    
	<block statements>
	<increment>
}
 for(<initialize>;<boolean expression>;<increment>)
 {
    
    
     <block statements>
 }

1.1.3.5 调用和返回语句

breakcontinue

1.1.4 简便记法

1.1.4.1 声明并初始化

1.1.4.2 隐式赋值

  1. 递增/递减运算符
  2. 其他复合运算符

1.1.4.3 单语句代码段

条件语句或循环语句的代码段只有一条语句,代码段的花括号可以省略。

1.1.5 数组

1.1.5.1 创建并初始化

	double[] a;             //声明数组
	a=new double[N];        //创建数组
	for(int i=0;i<N;i++)    //初始化数组
	    a[i]=0.0;

1.1.5.2 其他创建和初始化方法

    double[] a=new double[N]; //直接申明-创建数组
    int[] a={
    
    1,1,2,3,5,8};    //直接申明-初始化数组

1.1.5.3 使用数组

经典数组处理代码

        /**
         * 找出数组中最大的元素
         */
        double max = a[0];
        for (int i = 1; i < a.length; i++)
            if (a[i] > max) max = a[i];
        /**
         * 计算数组元素的平均值
         */
        int N = a.length;
        double sum = 0.0;
        for (int i = 0; i < N; i++)
            sum += a[i];
        double average = sum / N;
        /**
         * 复制数组
         */
        int N = a.length;
        double[] b = new double[N];
        for (int i = 0; i < N; i++) {
    
    
            b[i] = a[i];
        }
        /**
         * 颠倒数组元素顺序
         */
        int N = a.length;                 //N=7
        for (int i = 0; i < N / 2; i++) {
    
     //i=0,1,2,3,(4,5,6)
            double temp = a[i];
            a[i] = a[N - 1 - i];
            a[N - 1 - i] = a[i];
        }
        /**
         * 矩阵乘法
         */
        int N = a.length;
        double[][] c = new double[N][N];
        for (int i = 0; i < N; i++)
            for (int j = 0; j < N; j++)
                for (int k = 0; k < N; k++)
                    c[i][j] += a[i][k] * b[k][j];

静态方法

API

字符串

输入输出

二分查找

展望

猜你喜欢

转载自blog.csdn.net/weixin_45966880/article/details/115230725
1.1