zoukankan      html  css  js  c++  java
  • JAVA基础汇总及例题详解

      java语言的一个核心:
        jdk, java development kits---面向开发人员
        jre, java Runtime Environment---服务器上

        java虚拟机---(以字节码为指令的CPU)---*.class
        java编译器-->字节码-->类加载器进行验证-->虚拟机运行

      垃圾回收机制
        public class ...{
        int a = 1;
        }
        c/c++垃圾回收由程序员去运行

      java编程语言(一门纯面向对象)的特点:
        1, 面向对象
           封装
           继承
           多态
        2, 安全性
        3, 跨平台

      配置环境变量:
        java_home
        classpath
        path

      public class 类名 {
        public static void main(String[] args) {
        System.out.println(111);
        }
      }
      需要注意的地方:
          类名要与文件名保持一致(完全一样)

      标识符:
        凡是需要你自己命名的地方, 都叫标识符
        java编程严格区分大小写
        标识符的命名不能与关键字重复
        保留字:goto const

      规则:
        标识符由字母(大小写), _, $, 并且不能以数字开头
        代码规范: 驼峰命名法
        String empName
        getElementById

      java基础数据类型:不能=null;
        四类八种:
          整数型
            byte 2的8次方
            short 2的16次方
            int 2的32次方
            long 2的64次方
          浮点型
            float
            double
          布尔型
            boolean(只有两个值, true, false)
          字符型
            char
          字符串
            String
      java引用类型(对象):--可以=null
        所有的类
        所有的接口
        所有的数组

      变量的赋值
        char c = 'a';
        char c = '字';
        char c = 98;
        char c = ' ';
        char c = 'u0061';----unicode编码
      定义一个整型变量默认为int
        long l = 123456;
        long l = 88888888888l;

      定义一个浮点型变量默认为double
        float f = 12.345;
      类型转换:
        double float long int char short byte
        char short byte进行运算的时候, 取值默认为int
        隐式转换(低->高), 显式转换(高->低)

      运算符:
        算术运算符:+ - * / % ++ --
        关系运算符:> < >= <= == !=
        逻辑运算符:! & && | || ^
        位运算符:>> << >>>(无符号右移)
        赋值运算符:= += -= *= /= %=
        字符串连接运算符:+
      需要注意的地方: 在输出的时候, 只要有一个参数是字符串, 整个输出结果都是字符串
      三元运算符(表达式)(三目运算符):布尔值?值1:值2

      分支循环:
        if...
        if...else...
        if...else if...
        if...else if...else...
        switch...case...default(可以省略)...
        (既然有了if, 为什么还要有switch)
        switch是对值的比较(数字, 字符串)

      for循环

        for(int i=0;i<5;i++)

        foreach String[] str = ...
        for(String s : str)
        break;
          终止循环
        continue;
          退出本次循环, 继续下次循环
      String处理:
        String str = "..............";
        str.indexOf(字符串);//取这个字符串第一次出现的索引位置
        str.lastIndexOf(字符串);//取这个字符串最后一次出现的索引位置
        str.substring(整数型参数1);//取索引值为这个整数参数后面的字符串
        str.substring(整数型参数1, 整数型参数2);//取参数1和参数2之间的字符串(不包括参数2)


      例题:1在控制台上输出一个空心正方形

         int x = 4;
            for(int i=1;i<=x;i++){
                if(i==1||i==x){
                    for(int j=1;j<=x;j++){
                    System.out.print("*");
                    }
                }else{
                    for(int j=1;j<=x;j++){
                        if(j==1||j==x){
                        System.out.print("*");
                        }else{
                            System.out.print(" ");
                        }
                    }
                }
                System.out.println();
            }

      2.在控制台上输出一个空心菱形 

         int n = 7;
            for(int i=1;i<=n;i++){
                for(int j=1;j<=n-i;j++){
                    System.out.print(" ");
                }
                for(int k=1;k<=2*i-1;k++){
                    if(k==1||(k==2*i-1)){
                    System.out.print("*");
                    }else{
                        System.out.print(" ");
                    }
                }
                System.out.println();
            }
            for(int l=1;l<=n-1;l++){
                for(int o=1;o<=l;o++){
                    System.out.print(" ");
                }
                for(int p=1;p<=2*n-2*l-1;p++){
                    if(p==1||p==2*n-2*l-1){
                    System.out.print("*");
                    }else{
                        System.out.print(" ");
                    }
                }
                System.out.println();
            }
  • 相关阅读:
    CF-819B. Mister B and PR Shifts(模拟,找规律)
    CF-1198E. Rectangle Painting 2(最小点覆盖)
    CF-1214D. Treasure Island(dfs,最小割)
    CF-546E. Soldier and Traveling(网络最大流)
    洛谷 P1351 [NOIP2014 提高组] 联合权值(dp)
    CF-286C. Main Sequence(贪心,模拟)
    java基本框架
    人脸识别算法(—)
    将“引用”作为函数参数有哪些特点
    什么是“引用”?申明和使用“引用”要注意哪些问题?
  • 原文地址:https://www.cnblogs.com/bekeyuan123/p/6847393.html
Copyright © 2011-2022 走看看