• [Acwing-SpringBoot] Java语法基础入门


    前言

    声明 : 该篇博客大多内容来自 y总的 讲义

    写这篇博客为了更好的从 C + + C++ C++转向为 J a v a Java Java

    首先对于刚从 C + + C++ C++转到 J a v a Java Java的选手

    我们需要知道的是需要提交的代码格式一般有两类

    1. C++
      import java.util.* //这里相当于头文件
      
      public class Main {//这里是是大的总体类
          public static void main(String[] args) {//这里是主方法
      	}
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    2. Leetcode类型
      class Solution {
          public void deleteNode(ListNode node) {//这种类型一般是编写特定的函数,不处理输入输出
      
          }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5

    1.变量、运算符、输入与输出

    1.1变量

    .变量的类型

    类型字节距离
    byte1123
    short212345
    int4123456789
    long81234567891011L(定义+L)
    float41.2F(定义+F)
    double81.2
    boolean1true,false
    char2‘A’

    这里的为什么没有提及String,因为在Java中,String被封装成了一个类

    除了定义的时候,需要注意Long/float之外其他与C++无异

    1.2 运算符

    运算符这里基本都和C++吻合

    只是C++可以省略的地方,Java一般不能省略,还有就是1不能代替为true

    下面是几个错误示范 :

    	if(n&1)//×
    	if((n&1) !=0) //√
        if(n%2)//×
        while(1)//× 
        ....
    
    • 1
    • 2
    • 3
    • 4
    • 5

    当然这种错误IDEA都会有亲切的提示

    1.3 输入输出

    .普通的输入输出
    即使用Scanner

    //输入
    Scanner sc = new Scanner(System.in);
    String str = sc.next();  // 读入下一个字符串
    int x = sc.nextInt();  // 读入下一个整数
    float y = sc.nextFloat();  // 读入下一个单精度浮点数
    double z = sc.nextDouble();  // 读入下一个双精度浮点数
    String line = sc.nextLine();  // 读入下一行
    
    //输出
    System.out.println(123);  // 输出整数 + 换行
    System.out.println("Hello World");  // 输出字符串 + 换行
    System.out.print(123);  // 输出整数
    System.out.print("yxc\n");  // 输出字符串
    System.out.printf("%04d %.2f\n", 4, 123.456D);  // 格式化输出,float与double都用%f输出
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    .优化的输入输出

    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    
    public class Main {
        public static void main(String[] args) throws Exception {
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            String str = br.readLine();
            System.out.println(str);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    import java.io.BufferedWriter;
    import java.io.OutputStreamWriter;
    
    public class Main {
        public static void main(String[] args) throws Exception {
            BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
            bw.write("Hello World\n");
            bw.flush();  // 需要手动刷新缓冲区
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    1 0 7 10^7 107的输入输出范围的时候, S c a n n e r Scanner Scanner的效率会比优化后的低个 10 ∣ 20 10|20 1020

    [关于 使用BufferReader 的细节]
    [Java在OJ运行超时的问题]

  • 相关阅读:
    MyCat (一) Mycat的安装
    Open Interpreter:OpenAI Code Interpreter的开源实现|本地化|可联网
    JAVA设计模式3:抽象工厂模式,这是一种创建型设计模式
    微信“刷掌支付”上线,扫手就可以付款!你知道怎么开通了吗?
    中国贵金属白银技巧:与做人
    OD1 敏捷背后的思路
    高等数学(第七版)同济大学 习题1-10 个人解答
    Lombok的常用注解
    【调参】如何为神经网络选择最合适的学习率lr-LRFinder-for-Keras
    使用SpringBoot+Dubbo搭建微服务笔记
  • 原文地址:https://blog.csdn.net/GzmObject/article/details/125531930