JAVA零基础学习1(CMD、JDK、环境变量、变量和键盘键入、IDEA)

JAVA零基础学习1(CMD、JDK、环境变量、变量和键盘键入、IDEA)

  • CMD常见命令
  • 配置环境变量
  • JDK的下载和安装
  • 变量
      • 变量的声明和初始化
        • 声明变量
        • 初始化变量
      • 变量的类型
      • 变量的作用域
      • 变量命名规则
      • 示例代码
  • 键盘键入
      • 使用 `Scanner` 类读取输入
        • 步骤
        • 示例代码
      • 常用方法
      • 处理输入异常
        • 示例代码
      • 使用 `BufferedReader` 读取输入
        • 示例代码
      • 选择合适的输入方法
  • IDEA项目结构介绍

CMD常见命令

在这里插入图片描述

配置环境变量

为什么要配置环境变量?
我们想要在任意的目录下都可以打开指定的软件。就可以把软件的路径配置到环境变量中。

JDK的下载和安装

Java JDK下载安装及环境配置超详细图文教程
下载完成后打开环境所在文件夹,可以看到一下新生成的各种文件,下图是他们对应的内容和功能。
在这里插入图片描述

在这里插入图片描述

变量

在Java编程中,变量是用于存储数据的容器。每个变量都有一个特定的数据类型和一个名称。以下是关于Java变量的详细介绍:

变量的声明和初始化

声明变量

在Java中,声明一个变量需要指定变量的数据类型和名称。例如:

int age;
double salary;
String name;
初始化变量

声明变量后,你可以为其赋值。你也可以在声明的同时进行初始化:

int age = 25;
double salary = 50000.0;
String name = "John Doe";

变量的类型

Java中的变量可以是以下几种类型:

  1. 基本数据类型(Primitive Types)
    • byte:8位整数,范围:-128到127。
    • short:16位整数,范围:-32,768到32,767。
    • int:32位整数,范围:-231到231-1。
    • long:64位整数,范围:-263到263-1。
    • float:32位单精度浮点数。
    • double:64位双精度浮点数。
    • char:16位字符,表示单个Unicode字符。
    • boolean:布尔值,只有两个取值:truefalse

整数和小数取值范围大小关系:
double > float > long > int > short > byte

byte a = 100;
short b = 10000;
int c = 100000;
long d = 100000L;
float e = 10.5f;
double f = 20.5;
char g = 'A';
boolean h = true;

如果要定义long类型的变量
在数据值的后面需要加一个L作为后缀
L可以是大写的,也可以是小写的。
建议:使用大写。

注意点:定义float类型变量的时候
数据值也需要加一个F作为后缀

  1. 引用数据类型(Reference Types)
    • 类(Class)
    • 接口(Interface)
    • 数组(Array)
String str = "Hello, World!";
int[] numbers = {1, 2, 3, 4, 5};

变量的作用域

变量的作用域决定了变量在哪些部分的代码中是可见的和可访问的。主要有以下几种作用域:

  1. 局部变量(Local Variables)
    局部变量是在方法、构造函数或代码块中声明的变量。它们只能在声明它们的块中访问。

    public void myMethod() {
        int x = 10; // 局部变量
        System.out.println(x);
    }
    
  2. 成员变量(Instance Variables)
    成员变量是在类中声明的变量,但在方法、构造函数或代码块之外。它们在类的每个实例中都有一个副本。

    public class MyClass {
        int x = 5; // 成员变量
    
        public void display() {
            System.out.println(x);
        }
    }
    
  3. 类变量(Class Variables)
    类变量使用static关键字声明,它们在类的所有实例中共享一个副本。

    public class MyClass {
        static int y = 10; // 类变量
    
        public void display() {
            System.out.println(y);
        }
    }
    

变量命名规则

  1. 变量名必须以字母(a-z或A-Z)、美元符号($)或下划线(_)开头。
  2. 变量名可以包含字母、数字、美元符号和下划线,但不能包含空格。
  3. 变量名区分大小写(ageAge是不同的变量)。
  4. 避免使用Java关键字作为变量名。
    小驼峰命名法:方法、变量
    规范1:标识符是-一个单词的时候,全部小写
    范例1: name
    规范2:标识符由多个单词组成的时候,第一个单
    词首字母小写,其他单词首字母大写.
    范例2: firstName

大驼峰命名法:类名
规范1:标识符是一一个单词的时候,首字母大写
范例1: Student
规范2:标识符由多个单词组成的时候,每个单词
的首字母大写
范例2: GoodStudent

示例代码

public class VariableExample {
    // 成员变量
    int instanceVar = 50;

    // 类变量
    static int staticVar = 100;

    public void display() {
        // 局部变量
        int localVar = 25;
        System.out.println("局部变量: " + localVar);
        System.out.println("成员变量: " + instanceVar);
        System.out.println("类变量: " + staticVar);
    }

    public static void main(String[] args) {
        VariableExample example = new VariableExample();
        example.display();
    }
}

键盘键入

在Java中,可以通过多种方式从键盘读取用户输入。最常用的方式是使用 Scanner 类。以下是详细的步骤和示例代码:

使用 Scanner 类读取输入

步骤
  1. 导入 Scanner

    • 在程序的开始部分导入 java.util.Scanner 包。
  2. 创建 Scanner 对象

    • 使用 System.in 作为参数创建 Scanner 对象。
//1.导包,找到Scanner这个类在哪
//书写要注意:要写在类定义的上面
import java.util.Scanner;

public class HelloWorld
{
	//主入口
public static void main (String[] agrs) 
{	//2、创建对象,表示我现在准备要用Scanner这个类
	Scanner sc=new Scanner(System.in);
	//3、接收数据并赋值给i;
	int i=sc.nextInt();
	System. out . println(i);
}
}
  1. 读取输入
    • 使用 Scanner 类的各种方法读取不同类型的输入,例如 nextLine() 读取字符串,nextInt() 读取整数,nextDouble() 读取浮点数等。
示例代码
import java.util.Scanner;

public class UserInputExample {
    public static void main(String[] args) {
        // 创建 Scanner 对象
        Scanner scanner = new Scanner(System.in);

        // 读取字符串输入
        System.out.print("请输入您的名字: ");
        String name = scanner.nextLine();
        System.out.println("您的名字是: " + name);

        // 读取整数输入
        System.out.print("请输入您的年龄: ");
        int age = scanner.nextInt();
        System.out.println("您的年龄是: " + age);

        // 读取浮点数输入
        System.out.print("请输入您的体重: ");
        double weight = scanner.nextDouble();
        System.out.println("您的体重是: " + weight);

        // 关闭 Scanner 对象
        scanner.close();
    }
}

常用方法

  • nextLine(): 读取整行输入(包括空格)。
  • next(): 读取下一个单词(以空格、换行或制表符为分隔)。
  • nextInt(): 读取整数。
  • nextDouble(): 读取双精度浮点数。
  • nextBoolean(): 读取布尔值(truefalse)。
  • nextFloat(): 读取单精度浮点数。
  • nextLong(): 读取长整数。

处理输入异常

在读取输入时,可能会遇到输入不匹配的异常(例如用户输入非整数时调用 nextInt())。可以使用异常处理来捕获和处理这些情况。

示例代码
import java.util.Scanner;
import java.util.InputMismatchException;

public class UserInputExampleWithExceptionHandling {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        try {
            System.out.print("请输入您的年龄: ");
            int age = scanner.nextInt();
            System.out.println("您的年龄是: " + age);
        } catch (InputMismatchException e) {
            System.out.println("输入的不是一个有效的整数!");
        }

        scanner.close();
    }
}

使用 BufferedReader 读取输入

除了 Scanner 类,还可以使用 BufferedReaderInputStreamReader 组合来读取输入。

示例代码
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class BufferedReaderExample {
    public static void main(String[] args) {
        // 创建 BufferedReader 对象
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        try {
            // 读取字符串输入
            System.out.print("请输入您的名字: ");
            String name = reader.readLine();
            System.out.println("您的名字是: " + name);

            // 读取整数输入
            System.out.print("请输入您的年龄: ");
            int age = Integer.parseInt(reader.readLine());
            System.out.println("您的年龄是: " + age);
        } catch (IOException e) {
            System.out.println("读取输入时发生错误!");
        } catch (NumberFormatException e) {
            System.out.println("输入的不是一个有效的整数!");
        }
    }
}

选择合适的输入方法

  • Scanner: 更加直观和简单,适合大多数情况下的输入读取。
  • BufferedReader: 更加高效,适合读取大量数据或对性能要求较高的场合。

通过这些方法,你可以在Java程序中轻松实现从键盘读取用户输入的功能。

IDEA项目结构介绍

【附安装包】IDEA下载、安装、配置与使用(保姆级教程)

四层结构
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/801286.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【服务器】端口映射

文章目录 1.端口映射的概念1.1 端口映射的类型1.2 端口映射的应用场景1.3 示例 2.为什么要进行端口映射呢?3.原理3.1【大白话】原理解释3.2 原理图 4.代码 1.端口映射的概念 端口映射(Port Mapping),也称为端口转发(P…

第二届大数据、计算智能与应用国际会议(BDCIA2024)

会议日期:2024年11月15-17日 会议地点:中国-湖北省-黄冈市 主办单位:黄冈师范学院 【大会主席】 【主讲嘉宾】 大会邀请到来自美国、英国、加拿大、新加坡、意大利、越南等10余位领域内学术大咖作主题报告,并与参会人员互动交…

【操作系统】文件管理——文件的物理结构(个人笔记)

学习日期:2024.7.15 内容摘要:文件的物理结构,逻辑结构与物理结构 目录 引言 文件分配方式 连续分配 链接分配 隐式链接 显式链接 索引分配 索引块大小不够装入整个索引表怎么办? ①链接方案 ②多层索引 ③混合索引 …

国产精品ORM框架-SqlSugar详解 进阶功能 集成整合 脚手架应用 专题二

国产精品ORM框架-SqlSugar详解 SqlSugar初识 专题一-CSDN博客 sqlsugar 官网-CSDN博客 4、进阶功能 5、集成整合 6、脚手架应用 4、进阶功能 4.1、生命周期 Queryable 什么时候操作库 Queryable是一个引用类型 Queryable拷贝机制 {ISugarQueryable<Student> quer…

切换网页visibilitychange,的升级版实现

目录 1 需求场景 2 用到的技术 3 日常检测方法 4 一个有意思的场景 5 升级版实现一 5.1 新建 /utils/browser.js 5.2 项目业务组件中使用 6 升级版实现二 6.1 安装js-tool-big-box工具库 6.2 引入 browserBox 对象 6.3 以控制累加定时器为例 6.4 查看定时器效果 1…

go 切片进行链式操作并支持泛型

背景&#xff1a; 由于团队不是专业级别的go开发人员&#xff0c;主开发还是java&#xff0c;用惯了java的lambda表达式特别是流式操作&#xff0c; 所以在用go语言时&#xff0c;发现切片处理起来比较麻烦&#xff0c;看看能不能支持类似流式操作&#xff0c;我这边就研究了下…

什么是STM32?嵌入式和STM32简单介绍

1、嵌入式和STM32 1.1.什么是嵌入式 除了桌面PC之外&#xff0c;所有的控制类设备都是嵌入式 嵌入式系统的定义&#xff1a;“用于控制、监视或者辅助操作机器和设备的装置”。 嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板&#xff0c;是一种专用的计算机系统。…

启动react 18.2.x项目报node错误

1、项目启动报错&#xff0c;node版本问题 可以考虑把node版本降低一点&#xff0c;我当时node版本是20.xx 后面我把本本降到16.13.1 2、tsconfig.json的飘红问题 这里提示的是这个字段已经不用了&#xff0c;建议删除该字段&#xff0c;所以删除该字段就好&#xff0c;其实…

[经典]Axrue部件库:Android系统部件

部件库预览链接&#xff1a;&#xff08;请与班主任联系获取文档&#xff09; 支持版本: Axrure RP 8 文件大小: 1200KB 模板目录 黑、白两种UI风格 每天 文档内容介绍 免费领取资料 “210630” 领取

JavaScript object 数据更新方法

https://andi.cn/page/621560.html

JS-11G1端子排静态时间继电器 约瑟JOSEF

JS-11G端子排静态时间继电器 系列型号&#xff1a; JS-11G1端子排静态时间继电器&#xff1b;JS-11G2端子排静态时间继电器; JS-11G3端子排静态时间继电器; JS-11G4端子排静态时间继电器; JS-11G5端子排静态时间继电器;JS-11G7端子排静态时间继电器; JS-11G9端子排静态时间…

沙袋装袋机的原理和特点_鼎跃安全

在现代工业和建筑领域&#xff0c;沙子等散状物料的包装是一个必不可少的环节。传统的手工包装方式效率低下且劳动强度大&#xff0c;而沙袋装袋机的出现则极大地提高了包装效率和质量。 一、沙袋装袋机的工作原理 沙子通过输送系统从储料仓输送到装袋机的料斗中。输送系统设计…

SpringBoot中动态注册Bean的方式

测试环境&#xff0c;本文源码 Java&#xff1a;8SpringBoot&#xff1a;2.5.14示例场景&#xff1a;动态注册ProxyServlet&#xff0c;间接实现类似于Nginx的反向代理功能 先理解如何实现动态注册 Bean 。 由于在 SpringBoot 中&#xff0c;先进行 Bean 的定义&#xff0c;…

道路巡检准确率优于90%,千寻驰观是怎么做到的?

在7月初落下帷幕的2024世界人工智能大会上&#xff0c;人形机器人十八罗汉齐聚现场&#xff0c;“百模大战”精彩开演&#xff0c;还有多种大模型在产业端应用和落地&#xff0c;AI浪潮席卷而来。千寻位置携北斗时空智能AI应用千寻驰观产品亮相大会&#xff0c;备受瞩目。 2024…

释放DOE的能量,快速确定最佳工艺设置,节省时间、成本和资源

您是否希望降低成本、提高生产效率&#xff0c;并最大限度地减少行业对环境的影响&#xff1f; 所有行业&#xff0c;尤其是钢铁、铝、水泥和石化等能源密集型行业&#xff0c;都面临着应对这些挑战的持续压力。供应链压力、可持续发展、严格的监管环境、日益增长的消费者预期…

在前端vue3 开发媒体查询代码 实现 响应式布局(js 和css 方式)

在上一篇文章中 我介绍了一下 媒体查询的知识以及概念 我只介绍了在html css3 中的使用方式以及书写 下面我来简单来演示一下 在vue3 中怎么使用这个 其实都一样的 只是.vue 的文件 我用的是ant-design-vue3 的前端web端框架 用这个来演示 一. css样式媒体查询 目前的框架 是…

mysql中的存储过程

存储过程的作用:有助于提高应用程序的性能。存储过程可以不必发送多个冗长的SQL语句 废话不说多&#xff0c;直接实操 ##实现num的相加 delimiter $$ CREATE PROCEDURE test1 () begindeclare num int default 0; -- 声明变量,赋默认值为0select num20;end $$ delimiter ; …

誉天教育与武汉晴川学院携手开展鸿蒙实训营,共筑鸿蒙生态新篇章!

在数字经济蓬勃发展的今天&#xff0c;鸿蒙系统作为华为自主研发的操作系统&#xff0c;正逐步构建起一个开放、协同、共赢的生态体系。为了进一步推动鸿蒙生态的繁荣发展&#xff0c;培养更多具备鸿蒙原生应用开发能力的专业人才&#xff0c;誉天教育与武汉晴川学院强强联合&a…

聚类分析方法(三)

目录 五、聚类的质量评价&#xff08;一&#xff09;簇的数目估计&#xff08;二&#xff09;外部质量评价&#xff08;三&#xff09;内部质量评价 六、离群点挖掘&#xff08;一&#xff09;相关问题概述&#xff08;二&#xff09;基于距离的方法&#xff08;三&#xff09;…

内网服务器通过squid代理访问外网

一、背景 现在要对172.16.58.158服务器进行openssh升级操作,我用之前写好的升级脚本执行后,发现没有备份旧的ssh程序文件,然后还卸载了oenssl-devel,然后我发现其他服务器ssh该服务器失败。同时脚本执行时报错“ configure: error: *** zlib.h missing - please install first …